版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
讓資金管理得更好!Java語言特性與設(shè)計模式
內(nèi)部培訓(xùn)深圳市拜特科技股份技術(shù)開展部-桂艷軍整理課件目錄讓資金管理得更好!第一局部 程序設(shè)計語言及其依賴的環(huán)境
第二局部 程序設(shè)計語言的開展簡史
第三局部 Java語言和Java平臺
第四局部如何理解設(shè)計模式
第五局部開始邁進JavaEE整理課件第一局部程序設(shè)計語言及其依賴的環(huán)境讓資金管理得更好!1.馮?諾依曼計算機及其體系結(jié)構(gòu)馮諾依曼首先提出了“存儲程序〞的思想,大大提高了計算機的速度。后人按照這種思想和結(jié)構(gòu)設(shè)計的計算機稱為馮諾依曼計算機。“存儲程序〞思想可以簡化概括為3點:〔1〕計算機應(yīng)用包括運算器、控制器、存儲器、輸入/輸出設(shè)備?!?〕計算機內(nèi)部應(yīng)采用二進制來表示指令和數(shù)據(jù)?!?〕將編制好的程序和數(shù)據(jù)送會內(nèi)存儲器,然后計算機自動地逐條取出指令和數(shù)據(jù)進行分析、處理和執(zhí)行。整理課件第一局部程序設(shè)計語言及其依賴的環(huán)境讓資金管理得更好!2.程序設(shè)計語言的理論根底馮諾依曼理論的要點是:數(shù)字計算機的數(shù)制采用二進制;計算機應(yīng)該按照程序順序執(zhí)行。
整理課件第二局部程序設(shè)計語言的開展簡史讓資金管理得更好!1.程序設(shè)計語言的開展回憶一切可計算的問題都能計算,這樣的虛擬機或者編程語言就叫圖靈完備的。一個能計算出每個圖靈可計算函數(shù)〔Turing-computablefunction〕的計算系統(tǒng)被稱為圖靈完備的。一個語言是圖靈完備的,意味著該語言的計算能力與一個通用圖靈機〔UniversalTuringMachine〕相當(dāng),這也是現(xiàn)代計算機語言所能擁有的最高能力。圖靈完備是什么意思呢?在可計算理論中,當(dāng)一組數(shù)據(jù)操作的規(guī)那么〔一組指令集,編程語言〕滿足任意數(shù)據(jù)按照一定的順序可以計算出結(jié)果,被稱為圖靈完備〔turingcomplete〕。一個有圖靈完備指令集的設(shè)備被定義為通用計算機。如果是圖靈完備的,它〔計算機設(shè)備〕有能力執(zhí)行條件跳轉(zhuǎn)〔“if〞和“goto〞語句〕以及改變內(nèi)存數(shù)據(jù)。如果某個東西展現(xiàn)出了圖靈完備,它就有能力表現(xiàn)出可以模擬原始計算機,而即使最簡單的計算機也能模擬出最復(fù)雜的計算機。所有的通用編程語言和現(xiàn)代計算機的指令集都是圖靈完備的〔C++template就是圖靈完備的〕,都能解決內(nèi)存有限的問題。圖靈完備的機器都被定義有無限內(nèi)存,但是機器指令集卻通常定義為只工作在特定的,有限數(shù)量的RAM上。整理課件第二局部程序設(shè)計語言的開展簡史讓資金管理得更好!程序設(shè)計語言的4大成分:數(shù)據(jù):傳輸:計算:控制:(1).機器語言機器語言是直接用二進制代碼指令表達的計算機語言,指令是用0和1組成的一串代碼,它們有一定的位數(shù),并分成假設(shè)干段,各段的編碼表示不同的含義,例如某臺計算機字長為16位,即有16個二進制數(shù)組成一條指令或其它信息。16個0和1可組成各種排列組合,通過線路變成電信號,讓計算機執(zhí)行各種不同的操作。整理課件第二局部程序設(shè)計語言的開展簡史讓資金管理得更好!(2).匯編語言匯編語言(AssemblyLanguage)是面向機器的程序設(shè)計語言。在匯編語合中,用助記符(Memoni)代替操作碼,用地址符號(Symbol)或標(biāo)號(Label)代替地址碼。這樣用符號代替機器語言的二進制碼,就把機器語言變成了匯編語言。于是匯編語言亦稱為符號語言。使用匯編語言編寫的程序,機器不能直接識別,要由一種程序?qū)R編語言翻譯成機器語言,這種起翻譯作用的程序叫匯編程序,匯編程序是系統(tǒng)軟件中語言處理系統(tǒng)軟件。匯編程序把匯編語言翻譯成機器語言的過程稱為匯編匯編指令的特點:OP(R,X)匯編語言的要點:存儲單元的命名;存儲單元的賦值;根本動作的重復(fù);整理課件第二局部程序設(shè)計語言的開展簡史讓資金管理得更好!(3).C語言理論根底:程序=數(shù)據(jù)結(jié)構(gòu)+算法支持結(jié)構(gòu)化程序設(shè)計:防止goto,程序由3種根本結(jié)構(gòu)組成:順序:分支:循環(huán):整理課件第二局部程序設(shè)計語言的開展簡史讓資金管理得更好!(4).Java語言理論根底:程序=對象+關(guān)系支持面向?qū)ο蟪绦蛟O(shè)計:對象間的5種關(guān)系:繼承、組合、聚合、關(guān)聯(lián)、依賴面向?qū)ο蟪绦蚣軜?gòu)的特點:程序由對象構(gòu)成;對象與對象彼此間可能有5種關(guān)系;對象與所在環(huán)境的關(guān)系(容器和組件);采用設(shè)計模式可以適應(yīng)對象將來的演變;整理課件第二局部程序設(shè)計語言的開展簡史讓資金管理得更好!2.語言對程序開發(fā)的影響力在應(yīng)用程序開發(fā)過程中,對生產(chǎn)力影響的關(guān)鍵因素:(1)語言語言的抽象層次決定了生產(chǎn)力的根本;(2)框架框架封裝了共性問題的解決方案,防止了重復(fù)勞動;(3)工具自動化工具的使用可以大幅度提高效率;整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第三局部Java語言和Java平臺1.Java語言Java是一種簡單的,跨平臺的,面向?qū)ο蟮?,分布式的,解釋的,健壯?平安的,結(jié)構(gòu)中立的,可移植的,性能優(yōu)異的,多線程的,動態(tài)的語言。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第三局部Java語言和Java平臺2.Java平臺Java平臺由Java虛擬機和Java核心類所構(gòu)成。它為純Java程序提供了統(tǒng)一的編程接口,而不管下層操作系統(tǒng)是什么。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第三局部Java語言和Java平臺JavaME平臺:J2ME是一種高度優(yōu)化的Java運行環(huán)境,主要針對消費類電子設(shè)備的,例如蜂窩和可視、數(shù)字機頂盒、汽車導(dǎo)航系統(tǒng)等等。JavaSE平臺:J2SE定位在客戶端,主要用于桌面應(yīng)用軟件的編程,包含那些構(gòu)成Java語言核心的類。JavaEE平臺:J2EE是一套全然不同于傳統(tǒng)應(yīng)用開發(fā)的技術(shù)架構(gòu),包含許多組件,主要可簡化且標(biāo)準(zhǔn)應(yīng)用系統(tǒng)的開發(fā)與部署,進而提高可移植性、平安與再用價值。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式許多剛?cè)腴T的Java開發(fā)人員能夠很好地理解Java編程語言的概念,但是他們往往需要經(jīng)歷一段痛苦的時期才能成為專業(yè)的Java開發(fā)人員。這是因為大多數(shù)Java書籍只關(guān)注如何教會讀者使用Java語言、Java工具〔如Ant或者TestUnit〕或者一種與語言無關(guān)的軟件開發(fā)方法。這些書籍讓讀者自行向其他軟件開發(fā)人員學(xué)習(xí)技能和實踐經(jīng)驗。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式1.什么是設(shè)計模式設(shè)計模式〔Designpattern〕是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計經(jīng)驗的總結(jié)。使用設(shè)計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。毫無疑問,設(shè)計模式于己于他人于系統(tǒng)都是多贏的,設(shè)計模式使代碼編制真正工程化,設(shè)計模式是軟件工程的基石,如同大廈的一塊塊磚石一樣。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式2.經(jīng)典的設(shè)計模式模式對于理解JavaAPI及與他人交流非常重要,因為大局部API是基于設(shè)計模式錘煉出來的。(1).面向?qū)ο笤O(shè)計的根本原那么從本質(zhì)上講,設(shè)計就是做決定,知道哪些決定會提高軟件的質(zhì)量,哪些決定會給以后的維護帶來問題,是任何一個設(shè)計人員在構(gòu)思解決方案時都必須考慮的。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式設(shè)計的核心在于清楚的識別軟件系統(tǒng)中的各個組成局部,明確的知道它們將如何在一起協(xié)同工作來到達預(yù)期的需求目標(biāo)。也就是說要認識到軟件系統(tǒng)的組成成分;理清這些成分彼此間的關(guān)系;明確它們和所在地根底環(huán)境的關(guān)系;把握它們將來有可能出現(xiàn)的演變趨勢。抽象、封裝、繼承、多態(tài)是面向?qū)ο笤O(shè)計中的4個根本概念。抽象來自于現(xiàn)實,是對現(xiàn)實世界(問題域)中的概念進行的建模過程。封裝在于強調(diào)概念與概念之間的邊界劃分。繼承創(chuàng)立了一個類系家族,強調(diào)了專門化和一般化這種關(guān)系。多態(tài)那么是在一個類系家族中允許類型替換,更確切的說可以理解為:但凡子類出現(xiàn)的地方,都可以用父類替代。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式深刻理解了這4個根本概念之后,構(gòu)建高質(zhì)量的解決方案也需要知曉一些設(shè)計原那么:A.受保護的變化:可以理解為隔離應(yīng)用程序中的波動性。如果意識到某個成分可能會發(fā)生變化,那么就應(yīng)該使用接口來將該成分隔離。因為接口允許改變實現(xiàn)類,但不會影響到現(xiàn)有的依賴性。其實,任何設(shè)計模式都遵守了這個原那么:將變化的和不變的別離開來。在理解任何一個模式的時候,就可以從兩個方面入手,變化的局部在哪里?固化的局部在哪里?往往固化的東西才是更具價值的。B.低耦合:這個原那么是為了保證對一段代碼的修改不會影響到另一段不相關(guān)的代碼。例如:一個UI界面的變化需要修改數(shù)據(jù)庫嗎?如果需要的話,那么該應(yīng)用程序就很脆弱,其中任何一點小波動都會擴散到整個軟件系統(tǒng)。C.高內(nèi)聚:將有關(guān)聯(lián)的東西緊緊地捆綁在一起,特別是那些全有全無,不可分解的局部。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式這些問題看起來都是些常識——因為它們本來就是!但是真理往往就蘊含于常識之中,不要假設(shè)所有人都懂得這些道理。此外,還有一句名言“切勿違背原那么,切勿迷戀技術(shù)〞。在軟件開發(fā)過程、產(chǎn)品和技術(shù)的迷宮中,這將成為幫助你走出困境的金玉良言。上述內(nèi)容是軟件開發(fā)的核心原那么,而如何到達這些目標(biāo)的手段那么是技術(shù),不要混淆這兩個概念。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式(2).模式也是基于設(shè)計原那么的每一個模式都是一個或多個原那么的具體運用,只要理解了抽象、封裝、繼承、多態(tài)和一些根本原那么,就能很容易地理解模式為什么能降低軟件設(shè)計的復(fù)雜性。軟件設(shè)計的目標(biāo)很重要,但是理想的目標(biāo)和實際情況之間往往存在巨大的差距。模式消除了這種差距并實現(xiàn)了這些目標(biāo)。所以掌握了模式,就能大大降低軟件設(shè)計的復(fù)雜度和難度。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式從簡單到復(fù)雜,逐步理解模式的運用和模式背后的動機。A.設(shè)計單個類單個類不構(gòu)成一個設(shè)計模式,但它確實是一個設(shè)計。因為其設(shè)計簡單,所以不會出錯。設(shè)計過程的一分部是給一個對象分配職責(zé)。例子(略)新手經(jīng)常會犯的錯誤:類常常會因為帶有幾個與該類表示的抽象無關(guān)的方法而變得過于龐大,隨著方法的增多,膨脹的更厲害,蛻化成面向過程的函數(shù)集合。這里違反的是高內(nèi)聚原那么,會引起依賴性問題。解決的方法是將那些不屬于該類的方法“外包〞給其他類,但是這里的“不屬于〞是設(shè)計者的主觀判斷,這種主觀判斷的能力依托于對面向?qū)ο笤敲吹睦斫???梢哉f,設(shè)計者作出的任何決定都有可能是錯誤的。但是只要能根據(jù)有效地OO原那么加以調(diào)整,就不必擔(dān)憂——以后對問題理解更清晰后便可以進行重構(gòu)。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式B.在類之間創(chuàng)立關(guān)聯(lián)在設(shè)計單個類的時候,我們將一些方法外包給了另一個類。那么這兩個類之間就有關(guān)系了。為了讓A類能調(diào)用B類的方法,可能會出現(xiàn)3中情況:1.B類的對象作為一個參數(shù)傳遞給A類對象:A.setB(B);2.A類負責(zé)在其內(nèi)部構(gòu)造B類對象并保存引用,new一個B類對象作為成員變量;3.B類對象從一個方法調(diào)用中傳回這3中方法決定了在關(guān)鍵關(guān)聯(lián)時一個對象與另一個對象共享的可見性。設(shè)計可能已經(jīng)完成了,但是還有解決另一個設(shè)計原那么:低耦合。我們在指定關(guān)聯(lián)時,A和B之間已經(jīng)建立起緊密的依賴關(guān)系。這種關(guān)系被限制為A類和B類。這樣很好,但是今后一旦某一方發(fā)生變化時,勢必涉及另一方。如何放開這種限制并解決這種變化問題呢?答案就是增加一個接口。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式C.創(chuàng)立接口接口就是類之間的契約和協(xié)定。在一個類系家族中,接口總是位于頂層,所以只依賴于接口,就可以操縱整個類系家族中的每一個類(PS:羊群和領(lǐng)頭羊)警告:添加到設(shè)計中的每一個部件都是需要管理的,為了在組件之間依賴性并隔離變化,接口可以很好的發(fā)揮作用,但是并不哪里都需要接口。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式D.創(chuàng)立繼承循環(huán)通過關(guān)聯(lián)和繼承將兩個類關(guān)聯(lián),就可以創(chuàng)立樹和圖形結(jié)構(gòu),以充分擴展類系家族的層次結(jié)構(gòu)。繼承關(guān)系可以使對象結(jié)構(gòu)中的節(jié)點變成多態(tài)的。這好比文件系統(tǒng)中的文件和文件夾都具有相似的行為。設(shè)計模式中的組合模式,正是使用了繼承循環(huán),以到達類型無關(guān)但功能相識。在UI體系中的容器和組件的概念就是這種設(shè)計模式的經(jīng)典案例。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第四局部如何理解設(shè)計模式(3).一些重要的Java模式Gof模式分類:1.創(chuàng)立型:工廠:單例:2.結(jié)構(gòu)型:適配器:復(fù)用實現(xiàn)裝飾器:復(fù)用接口組合模式:類系擴展(從樹到圖)3.行為型:責(zé)任鏈:過濾器鏈命令模式:請求命令封裝觀察者:事件監(jiān)聽器整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第五局部開始邁進JavaEE1.什么是企業(yè)級應(yīng)用程序一個企業(yè)系統(tǒng)是具備以下性質(zhì)的系統(tǒng):(1)共享某些或全部在應(yīng)用中被使用的資源:這里普遍存在的例子就是所有的應(yīng)用數(shù)據(jù)駐留的關(guān)系型數(shù)據(jù)庫。共享這些資源會增加額外的隱含復(fù)雜性:數(shù)據(jù)被共享是因為它需要同時對多個用戶可用。因此,系統(tǒng)必須支持平安地且快捷地并發(fā)用戶訪問。(2)規(guī)劃成為內(nèi)部使用:這里的“內(nèi)部〞指的是“大量生產(chǎn)的賣給最終用戶的軟件的對立物〞。當(dāng)系統(tǒng)確實可以在公司與商業(yè)伙伴之間共享時,它可以用公司的特有知識、商業(yè)慣例和特殊需求來編寫。(3)必須在現(xiàn)有的架構(gòu)內(nèi)運行:在極特殊的情況下,公司才有可能已經(jīng)擁有了一套適當(dāng)?shù)?、系統(tǒng)必須能夠與之進行互操作的硬件和軟件。特別地,這意味著應(yīng)用必須適應(yīng)現(xiàn)有的數(shù)據(jù)庫模式〔而不是其它的方式〕。一個企業(yè)系統(tǒng)必須能夠適應(yīng)它所存活的異構(gòu)系統(tǒng)。整理課件第二局部研發(fā)工程管理流程〔規(guī)劃〕讓資金管理得更好!第五局部開始邁進JavaEE(4)將由內(nèi)部IT員工部署并提供支持:對大多數(shù)公司來說,實際的“產(chǎn)品〞生產(chǎn)都超出了開發(fā)者的職責(zé)范圍。這是一件好事情——大多數(shù)開發(fā)者都會對因為他們開發(fā)的應(yīng)用的故障,在凌晨時分被喚醒而感到不痛快。但是這同時也意味著系統(tǒng)的部署將要由他們之外的人手去完成,并且這還意味著負責(zé)數(shù)據(jù)中心的員工必須有某種途徑在未經(jīng)歷編寫代碼環(huán)節(jié)的情況下,去監(jiān)視、診斷和訂正問題。(5)需要
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 成人本科要弄課程設(shè)計
- 慈善公益方面的研究報告
- 感動背景音樂課程設(shè)計
- 恒溫?zé)崴畨卣n程設(shè)計
- 怎么講市場營銷課程設(shè)計
- 小學(xué)四年級下冊外研版英語:Module 10 模塊測試
- 木蠟石膏或塑料制盾形紀念牌項目可行性實施報告
- 德州投資策略研究報告
- 德國生物案例研究報告
- SB/T 10795-2012強制通風(fēng)與自然對流空氣冷卻器的試驗方法
- 勞動教育2022 2023 學(xué)年度第一學(xué)期結(jié)課考試附答案
- GB/T 16476-1996金屬鈧
- GB/T 12-2013圓頭方頸螺栓
- GB/T 11181-2016子午線輪胎用鋼簾線
- 足球比賽運動活動邀請函Word模板
- 小學(xué)道德與法治教學(xué)實踐中存在的問題及策略
- 醫(yī)院重大經(jīng)濟業(yè)務(wù)事項決策和責(zé)任追究制度(醫(yī)院財務(wù)管理制度)
- 文萊介紹課件
- Pearson相關(guān)系數(shù)簡介分析課件
- 對外漢語-漢語拼音-(課堂)課件
評論
0/150
提交評論