隨筆-159  評論-114  文章-7  trackbacks-0
          準備使用IBM收購Rational以后的最新產品RSA 6.0,作為開發建模工具。

          人寫程序與類在打交道,而在程序運行時,是對象在運行。

          人寫的是類型,而動態的是對象,使機器在運行代碼。

          OO是一種系統建模的技術,是一個過程!

          對對象進行描述。

          在這個過程中,要使用UML語言進行類型的描述。

          ========================================

          比如模擬達內,可以說有很多老師對象和學生對象,但在達內,關注學生這個個體什么呢?只關心姓名,性別,背景,而絕對不關心它的婚姻情況。

          可以對這些對象進行共性的提取,變為老師類型和學生類型。而運行時就是一個個有特性的實例。

          ========================================

          什么是對象,就是一個屬性確定的實體。比如找對象,這個對象在你心中早就有特定的要求,那么這樣的一個對象肯定是有確定屬性的對象。是單個的,唯一的,識別的實體。

          那么由于成員變量的值不同,方法調用的結果不同。

          所以對象是構建系統的基石。
          它包括:<1>標識也就是引用名
                       <2>數據
                       <3>方法

          什么是Class,它是對對象的定義。對于在某一個環境下的對于對象關心屬性的提取和抽象。

          ====================================

          面向對象編程的特點

          1抽象,就是一個提煉過程
          2封裝,隱藏細節(屬性和私有方法)
          3繼承,上下層次
          4多態
          --------------------------------------------
          5,關聯,對象的依賴程度
          6,聚合
          7,組合
          8,內聚&耦合

          1,抽象的目的,主要是隱藏細節,可以簡化信息,看到顯著特征。
          2,封裝的目的,隱藏數據和行為,
                
                            注意,類有兩個視圖,對外視圖(別人使用此類,不關心實現)
                                                                   內視圖(自己拿著代碼,要知道實現)

          3,關聯
                      一個類型使用其他類型對象的服務。
          4,聚合
                      一種強關聯,一個是另外一個的組成部分,而不是必要部分。
                      一個汽車和一個音響。
          5,組合
                      一個對象包含另外一個對象
                      一個是另外一個組成部分
                      大的東西決定著組成部分的生命周期

          6,繼承,是一種實現代碼復用的手段,語言的特性。另外一種代碼復用的方式就是組合。

                減少代碼量,維護方便。


          組件的開發

          在開發過程中,要遵循高內聚,低耦合的規律。

          組件內部要相互的調用,來統一對外實現一個功能,而外界為實現這個功能,基本不需要再做什么,那么這個組件的重用性,就愈高。依賴于別人的越少,那么組件的復用價值也就愈高。


          多態

          有統一的接口,而行為有它的子類型的行為確定。

          運行時多態,就是子類型重寫了父類型virtual方法。

          能使用編譯時多態就是用編譯時多態。

          ================

          所以可以將上面的幾個特點按類別分類,比如,單個類型、類型之間、層次結構、編程規則。







          posted on 2006-02-28 23:57 北國狼人的BloG 閱讀(564) 評論(1)  編輯  收藏 所屬分類: 達內學習總結

          評論:
          # re: OOAD 面向對象設計與分析 2006-10-16 13:47 | yelite
          總結出來以饗讀者,不錯。頂一個。  回復  更多評論
            
          主站蜘蛛池模板: 佳木斯市| 屏东县| 永仁县| 浦东新区| 惠来县| 宝清县| 江口县| 远安县| 山阳县| 睢宁县| 新密市| 高陵县| 延寿县| 望城县| 墨竹工卡县| 安阳县| 兴宁市| 石泉县| 和政县| 长治县| 博野县| 商洛市| 理塘县| 洛阳市| 上饶市| 宁国市| 通化县| 伽师县| 眉山市| 伊金霍洛旗| 富锦市| 江孜县| 铜陵市| 集安市| 夹江县| 交城县| 桦川县| 上蔡县| 环江| 临安市| 鄄城县|