準備使用IBM收購Rational以后的最新產(chǎn)品RSA 6.0,作為開發(fā)建模工具。
人寫程序與類在打交道,而在程序運行時,是對象在運行。
人寫的是類型,而動態(tài)的是對象,使機器在運行代碼。
OO是一種系統(tǒng)建模的技術(shù),是一個過程!
對對象進行描述。
在這個過程中,要使用UML語言進行類型的描述。
========================================
比如模擬達內(nèi),可以說有很多老師對象和學生對象,但在達內(nèi),關(guān)注學生這個個體什么呢?只關(guān)心姓名,性別,背景,而絕對不關(guān)心它的婚姻情況。
可以對這些對象進行共性的提取,變?yōu)槔蠋燁愋秃蛯W生類型。而運行時就是一個個有特性的實例。
========================================
什么是對象,就是一個屬性確定的實體。比如找對象,這個對象在你心中早就有特定的要求,那么這樣的一個對象肯定是有確定屬性的對象。是單個的,唯一的,識別的實體。
那么由于成員變量的值不同,方法調(diào)用的結(jié)果不同。
所以對象是構(gòu)建系統(tǒng)的基石。
它包括:<1>標識也就是引用名
<2>數(shù)據(jù)
<3>方法
什么是Class,它是對對象的定義。對于在某一個環(huán)境下的對于對象關(guān)心屬性的提取和抽象。
====================================
面向?qū)ο缶幊痰奶攸c
1抽象,就是一個提煉過程
2封裝,隱藏細節(jié)(屬性和私有方法)
3繼承,上下層次
4多態(tài)
--------------------------------------------
5,關(guān)聯(lián),對象的依賴程度
6,聚合
7,組合
8,內(nèi)聚&耦合
1,抽象的目的,主要是隱藏細節(jié),可以簡化信息,看到顯著特征。
2,封裝的目的,隱藏數(shù)據(jù)和行為,
注意,類有兩個視圖,對外視圖(別人使用此類,不關(guān)心實現(xiàn))
內(nèi)視圖(自己拿著代碼,要知道實現(xiàn))
3,關(guān)聯(lián)
一個類型使用其他類型對象的服務(wù)。
4,聚合
一種強關(guān)聯(lián),一個是另外一個的組成部分,而不是必要部分。
一個汽車和一個音響。
5,組合
一個對象包含另外一個對象
一個是另外一個組成部分
大的東西決定著組成部分的生命周期
6,繼承,是一種實現(xiàn)代碼復用的手段,語言的特性。另外一種代碼復用的方式就是組合。
減少代碼量,維護方便。
組件的開發(fā)
在開發(fā)過程中,要遵循高內(nèi)聚,低耦合的規(guī)律。
組件內(nèi)部要相互的調(diào)用,來統(tǒng)一對外實現(xiàn)一個功能,而外界為實現(xiàn)這個功能,基本不需要再做什么,那么這個組件的重用性,就愈高。依賴于別人的越少,那么組件的復用價值也就愈高。
多態(tài)
有統(tǒng)一的接口,而行為有它的子類型的行為確定。
運行時多態(tài),就是子類型重寫了父類型virtual方法。
能使用編譯時多態(tài)就是用編譯時多態(tài)。
================
所以可以將上面的幾個特點按類別分類,比如,單個類型、類型之間、層次結(jié)構(gòu)、編程規(guī)則。
posted on 2006-02-28 23:57
北國狼人的BloG 閱讀(554)
評論(1) 編輯 收藏 所屬分類:
達內(nèi)學習總結(jié)