面向對象的技術(shù)是隨著(zhù)計算機技術(shù)不斷發(fā)展而形成的一項新技術(shù),它相對于早期的面向過(guò)程的開(kāi)發(fā)技術(shù),并在現在的大中型系統中等到了廣泛的應用。下面,對一些基本概念做一個(gè)介紹:
對象:是結構的基本單位,它也是概念化設計或程序設計的基本單位,對象是一種概念、一種抽象,是問(wèn)題域中有著(zhù)明確意義的事物。
屬性:是對象的特征之一,代表與其他對象的關(guān)聯(lián)和對象本身的狀態(tài)。
方法:是對象的特征之一,是對象可以執行的過(guò)程或服務(wù)。
規則:是對象的特征之一,說(shuō)明了對象的其他特性之間是怎樣聯(lián)系的,或者對象在什么條件下是可行的。
類(lèi):描述了一組具有相同屬性、行為、共同語(yǔ)法特征以及和其它對象有著(zhù)相同聯(lián)系的.
目前,面向對象技術(shù)在系統設計過(guò)程中的使用越來(lái)越廣泛,它為我們的系統設計帶來(lái)了許多的益處:
可重用性。從一開(kāi)始對象的產(chǎn)生就是為了重復利用,完成的對象將在今后的程序開(kāi)發(fā)中被部分或全部地重復利用。
可靠性。由于面向對象的應用程序包含了通過(guò)測試的標準部分,因此更加可靠。由于大量代碼來(lái)源于成熟可靠的類(lèi)庫,因而新開(kāi)發(fā)程序的新增代碼明顯減少,這是程序可靠性提高的一個(gè)重要原因。
連續性。具有面向對象特點(diǎn)的C++與C語(yǔ)言有很大的兼容性,C程序員可以比較容易地過(guò)渡到C++語(yǔ)言開(kāi)發(fā)工作。
從分析面臨的主要任務(wù)來(lái)看,面向對象分析具有比其它分析方法明顯的優(yōu)點(diǎn):
(1)問(wèn)題域和系統責任
對問(wèn)題域和系統責任進(jìn)行深入的調查研究和準確的理解是成功開(kāi)發(fā)系統的前提,也是分析工作的第一個(gè)難點(diǎn)。面向對象分析強調從問(wèn)題域中的實(shí)際事物以及與系統責任有關(guān)的概念出發(fā)構造系統模型,使得系統中的對象、對象的內部構成以及對象之間的結構與連接能直接地描述問(wèn)題域和系統責任,并與之產(chǎn)生良好的對應。因此面向對象分析非常有利于對問(wèn)題域和系統責任的理解。
(2)交流問(wèn)題
人與人之間的交流是分析工作面臨的一個(gè)重要問(wèn)題。如果一種分析方法產(chǎn)生的文檔使分析員以外的其他人員很難讀懂,就不利于交流。對此,面向對象分析運用了人類(lèi)日常生活中采用的思維方法和構造策略來(lái)認識和描述問(wèn)題域,構造系統模型及詳細說(shuō)明并采用了直接來(lái)自問(wèn)題域的術(shù)語(yǔ)及概念,使各類(lèi)人員之間交流的最基本條件得到了改進(jìn)。
(3)需求的不斷變化
在軟件開(kāi)發(fā)過(guò)程中,需求的不斷變化是分析人員棘手的問(wèn)題,而面向對象分析則由于封裝對象原則使得它對變化比較有彈性。因此從整體看,面向對象分析以對象作為系統的基本構成單位,對象的穩定性和相對獨立性使系統具有一種宏觀(guān)的穩定效果。
(4)軟件復用
軟件復用已從20世紀80年代中期主要著(zhù)眼于程序的復用發(fā)展到注重分析結果和設計結果的復用,這樣產(chǎn)生的效果更加顯著(zhù)。面向對象分析中,類(lèi)由于其完整性和獨立性很適于作為可復用構件。當分析員完成一個(gè)系統的面向對象分析工作后,其面向對象分析結果較容易通過(guò)復用而擴展為一個(gè)系統族。因此能很好的支持軟件分析復用。
面向對象技術(shù)與方法包括面向對象分析(OOA),面向對象設計(OOD),面向對象編程(OOP),面向對象測試(OOT)和面向對象維護(OOSM)五個(gè)階段。其中軟件工程中的分析具有兩個(gè)方面的意義:在認識事物方面,具有一整套分析和認識問(wèn)題域的方法、原則和策略,這些方法、原則和策略使開(kāi)發(fā)人員(系統分析員)對問(wèn)題域的理解比不遵循軟件工程方法更為全面,深刻和有效;在描述事物方面,它具有一套表示體系和文檔的規范,比僅用自然語(yǔ)言表達更為準確,也更接近后期的開(kāi)發(fā)階段。因此,在軟件工程中分析成了軟件開(kāi)發(fā)的關(guān)鍵一環(huán)。
正如我們所見(jiàn),計算機技術(shù)的發(fā)展用日新月異來(lái)描述是十分貼切的,其中軟件的升級和更新更是使人目不暇接。因此一個(gè)好的軟件,只有具有很好的可擴充性和可重用性,才能夠在激烈的競爭中得以不斷發(fā)展、完善、生存。實(shí)際上從計算機誕生之日起,人們就一直在追求這樣的目標,發(fā)展能夠提高可擴充性和可重用性的程序設計方法。面向對象程序設計正是這種發(fā)展現在所達到的高度,它通過(guò)抽象、封裝、繼承等一系列手段,達到程序源代碼最大限度的可重用和可擴展,提高程序員的生產(chǎn)能力,控制軟件開(kāi)發(fā)和維護的費用。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。