国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

淺談面向?qū)ο笤O(shè)計方法發(fā)展史及現(xiàn)狀

2015-05-30 19:09周瑤
儷人·教師版 2015年11期
關(guān)鍵詞:發(fā)展史面向?qū)ο?/a>程序設(shè)計

周瑤

【摘要】面向?qū)ο蠓椒ㄒ焉钊氲接嬎銠C軟件領(lǐng)域的幾乎所有分支。它不僅是一些具體的軟件開發(fā)技術(shù)與策略,而且是一整套關(guān)于如何看待軟件系統(tǒng)與現(xiàn)實世界的關(guān)系,用什么觀點來研究問題并進行問題求解,以及如何進行軟件系統(tǒng)構(gòu)造的軟件方法學。本文就面向?qū)ο蠓椒óa(chǎn)生的背景以及發(fā)展現(xiàn)狀進行了簡要敘述。

【關(guān)鍵詞】面向?qū)ο?程序設(shè)計 發(fā)展史 UML

1 面向?qū)ο筇卣鞲攀?/p>

面向?qū)ο笤O(shè)計是一種把面向?qū)ο蟮乃枷霊?yīng)用于軟件開發(fā)過程中,指導開發(fā)活動的系統(tǒng)方法,是建立在“對象”概念基礎(chǔ)上的方法學。對象是由數(shù)據(jù)和操作組成的封裝體,與客觀實體有直接對應(yīng)關(guān)系,一個對象類定義了具有相似性質(zhì)的一組對象。面向?qū)ο蟪绦蛟O(shè)計具有抽象性、封裝性、繼承性和多態(tài)性等特征。

抽象:指從事物中舍棄個別的、非本質(zhì)的特征,而抽取共同的、本質(zhì)特征的思維方式。

封裝:將數(shù)據(jù)和代碼捆綁到一起,避免了外界的干擾和不確定性。對象的某些數(shù)據(jù)和代碼可以是私有的,不能被外界訪問,以此實現(xiàn)對數(shù)據(jù)和代碼不同級別的訪問權(quán)限。

繼承:讓某個類型的對象獲得另一個類型的對象的特征。通過繼承可以實現(xiàn)代碼的重用:從已存在的類派生出的一個新類將自動具有原來那個類的特性,同時,它還可以擁有自己的新特性。

多態(tài):指一般類和特殊類可以有相同格式的屬性或操作,但這些屬性或操作具有不同的含義,即具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為。

2 面向?qū)ο笤O(shè)計方法發(fā)展歷史

在這里把面向?qū)ο蠓椒ǖ陌l(fā)展分為三個階段:雛形階段、完善階段和繁榮階段。

(一)雛形階段

1967年挪威計算中心的Kisten Nygaard和Ole Johan Dahl開發(fā)了Simula67語言,首先引入了類的概念和繼承機制,它是面向?qū)ο蟮南闰?qū)。1972年P(guān)alo Alno研究中心(PARC)發(fā)布了Smalltalk-72,其中正式使用了“面向?qū)ο蟆边@個術(shù)語。Smalltakl的問世標志著面向?qū)ο蟪绦蛟O(shè)計方法的正式形成。

可以說出現(xiàn)了面向?qū)ο笳Z言之后,面向?qū)ο笏枷氩诺玫搅搜杆俚陌l(fā)展。過去的幾十年中,程序設(shè)計語言對抽象機制的支持程度不斷提高:從機器語言到匯編語言,到高級語言,直到面向?qū)ο笳Z言。匯編語言出現(xiàn)后,程序員就避免了直接使用0-1,而是利用符號來表示機器指令,從而更方便地編寫程序;當程序規(guī)模繼續(xù)增長的時候,出現(xiàn)了Fortran、C、Pascal等高級語言,這些高級語言使得編寫復雜的程序變得容易,程序員們可以更好地對付日益增加的復雜性。

(二)完善階段

PARC先后發(fā)布了Smalltalk-72、76和78等版本,直至1981年推出該語言完善的版本Smalltalk-80。Smalltalk-80的問世被認為是面向?qū)ο笳Z言發(fā)展史上最重要的里程碑。迄今絕大部分面向?qū)ο蟮幕靖拍罴捌渲С謾C制在Smalltalk-80中都已具備。它是第一個完善的、能夠?qū)嶋H應(yīng)用的面向?qū)ο笳Z言。但是隨后的Smalltalk-80的應(yīng)用尚不夠廣泛,其原因是:

追求純OO的宗旨使得許多軟件開發(fā)人員感到不便。

一種新的軟件開發(fā)方法被廣泛地接受需要一定的時間。

針對該語言的商品化軟件開發(fā)工作到1987年才開始進行。

(三)繁榮階段

從20世紀80年代中期到90年代,是面向?qū)ο笳Z言走向繁榮的階段。其主要表現(xiàn)是大批比較實用的面向?qū)ο缶幊陶Z言的涌現(xiàn),例如C++、Objective-C、Object Pascal、CLOS、Eiffel和Actor等。這些面向?qū)ο蟮木幊陶Z言分為純OO型語言和混合型OO語言?;旌闲驼Z言是在傳統(tǒng)的過程式語言基礎(chǔ)上增加了OO語言成分形成的,在實用性方面具有更大的優(yōu)勢。此時的純OO型語言也比較重視實用性?,F(xiàn)在,在面向?qū)ο缶幊谭矫?,普遍采用語言、類庫和可視化編程環(huán)境相結(jié)合的方式,如Visual C++、JBuilder和Delphi等。面向?qū)ο蠓椒ㄒ矎木幊贪l(fā)展到設(shè)計、分析,進而發(fā)展到整個軟件生命周期。

到20世紀90年代,面向?qū)ο蟮姆治雠c設(shè)計方法已多達數(shù)十種,這些方法都各有所長。目前,統(tǒng)一建模語言已經(jīng)成為世界性的建模語言,適用于多種開發(fā)方法。把UML作為面向?qū)ο蟮慕UZ言,不但在軟件產(chǎn)業(yè)界獲得了普遍支持,在學術(shù)界影響也很大。在面向?qū)ο蟮倪^程指導方面,目前還沒有國際規(guī)范發(fā)布。當前較為流行的用于面向?qū)ο筌浖_發(fā)的過程指導有“統(tǒng)一軟件開發(fā)過程”(RUP)和國內(nèi)的青鳥面向?qū)ο筌浖_發(fā)過程指導等。

3 面向?qū)ο笤O(shè)計方法應(yīng)用現(xiàn)狀

當前,面向?qū)ο蠓椒◣缀醺采w了計算機軟件領(lǐng)域的所有分支。例如,已經(jīng)出現(xiàn)了面向?qū)ο蟮木幊陶Z言、面向?qū)ο蟮姆治?、面向?qū)ο蟮脑O(shè)計、面向?qū)ο蟮臏y試、面向?qū)ο蟮木S護、面向?qū)ο蟮膱D形用戶界面、面向?qū)ο蟮臄?shù)據(jù)庫、面向?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)、面向?qū)ο蟮闹悄艹绦蛟O(shè)計、面向?qū)ο蟮能浖_發(fā)環(huán)境和面向?qū)ο蟮捏w系結(jié)構(gòu)等。此外,許多新領(lǐng)域都以面向?qū)ο罄碚摓榛A(chǔ)或作為 主要技術(shù),如面向?qū)ο蟮能浖w系結(jié)構(gòu)、領(lǐng)域工程、智能代理、基于構(gòu)件的軟件工程和面向服務(wù)的軟件開發(fā)等。

4 結(jié)語

計算機軟件技術(shù)的發(fā)展日新月異,在很短的時間內(nèi)即涌現(xiàn)出了大量的軟件開發(fā)工具并迅速地更新?lián)Q代,給編程人員進行程序設(shè)計帶來了極大的方便。在不久的將來相信面向?qū)ο蟪绦蛟O(shè)計技術(shù)必將應(yīng)用到更多的程序中。

【參考文獻】

[1] 麻志毅,著.面向?qū)ο蠓治雠c設(shè)計.機械工業(yè)出版社,2013,2.

[2] 格雷厄姆(Ian Graham,I.)著,袁兆山,譯. 面向?qū)ο蠓椒ǎ涸砼c實踐.機械工業(yè)出版社,2003,3.

猜你喜歡
發(fā)展史面向?qū)ο?/a>程序設(shè)計
基于Visual Studio Code的C語言程序設(shè)計實踐教學探索
從細節(jié)入手,談PLC程序設(shè)計技巧
面向?qū)ο蟮挠嬎銠C網(wǎng)絡(luò)設(shè)計軟件系統(tǒng)的開發(fā)
面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
高職高專院校C語言程序設(shè)計教學改革探索
淺談我國會計發(fā)展史
淺談低音提琴在演奏中的技巧問題
新型智能手機保護殼設(shè)計
面向?qū)ο骔eb開發(fā)編程語言的的評估方法
PLC梯形圖程序設(shè)計技巧及應(yīng)用