面向對象的開發方法把軟件系統當作各類對象的集合,對象就是最小的子系統,一組相關的對象可以組合成一個更復雜的子系統。這種開發方法有如下幾點優勢.
(1)把軟件系統當作是各類對象的集合,這更接近於人類的天然思惟方式。
(2)軟件需求的變更每每是功能的變更,而功能的執行者---對象通常不會有大的變化。這使得按對象設計出來的系統結構比較穩定。
(3)對象包括屬性(數據)和行爲(方法),對象把數據以方法的具體實現方式一塊兒封裝起來,這使得方法和與之相關的數據再也不分離。提升了每一個系統的相對獨立性,從而提升了軟件的可維護性。
(4)支持封裝,抽象,繼承和多態,提升了軟件的可重用性,可維護性和可擴展性。
咱們通常的軟件開發從需求分析開始到繪製類圖的通常思惟。先從<問題領域的事物>中抽取與問題領域相關的事物的屬性和行爲,抽象出來爲------>對象。在從<對象模型中的對象>中把具備相同屬性和行爲的對象抽象爲------>類(class).再從<對象模型中的類>中把具備相同屬性和行爲的類中抽象出來爲<對象模型中的父類>(abstract class)。
從上面的分析一步一步的抽象,咱們能夠看出面向對象的開發過程當中主要運用了抽象思惟。