1. 程式人生 > >面向物件軟體工程與UML

面向物件軟體工程與UML

軟體工程
1.針對軟體生命週期全過程及其每個具體階段的工程方法、技術細則、文件規範、技術支援、
  管理制度、人員組織以及質量保證體系等。

軟體工程:
 1.方法:完成軟體開發的各項任務的技術方法,為軟體開發提供“如何做”的技術
 2.工具:為運用方法而提供的自動的或半自動的軟體工程的支撐環境
 3.過程:為了獲取高質量的軟體所需要完成的一系列任務的框架,它規定了完成各項任務 
        的工作步驟,如何將軟體工程方法與軟體工具相結合,合理,即使的進行軟體開發 

1. 尋找商機:產品。專案
2. 可行性分析
3. 需求調研:系統分析師;UI工程師;測試人員
4. 設計:概要設計(結構,分層)

        詳細設計:主體,介面,抽象類,實現類,(專案經理,組長)
        資料庫設計:DBA,
5. 開發階段:——>程式設計師,測試人員
6. 測試階段:效能測設,壓力測試,使用者環境測試
7. 使用者培訓:說明書
8. 試執行:驗收
9. 維護

面向物件設計原則

好的設計
  1. 可讀性
  2. 可複用性
  3. 可擴充套件性
  4. 可維護性

內聚度:表示一個應用程式的單個單元所負責的任務數量和多樣性。內聚與單個類或者單個方法
       單元相關
耦合度:表示類之間關係的緊密程度
    “高內聚,低耦合”
原則:
     1. 單一職責原則:所有的物件都應該有單一的職責,他提供的所有的服務也都僅圍繞這職責
     2. 開閉原則:指一個軟體實體應該對擴充套件開放,對修改關閉,,,(spring)
     3. 里氏替換原則:在一個軟體系統中,子類應該能夠完全替換任何父類能夠出現的地方,
                    並且經過替換後,不會讓呼叫父類的客戶程式從行為上有任何改變
     4. 依賴倒轉原則:是指將兩個模組之間的依賴關係倒置為依賴抽象類或介面;
          分層的時候,底層涉及介面或抽象類與高層進行繫結,遵循的是依賴倒轉原則
     5. 介面隔離原則:指客戶不應該依賴它們用不到的方法。只給每個客戶它所需的介面
     6. 組合/聚合度 :儘量使用組合/聚合而非繼承來達到複用目的
     7. 迪米特法則:一個軟體實體應當儘可能少的與其他實體發生相互作用

建立型設計模式

設計模式:微觀的,針對某一具體場景或問題所做的程式碼級別的設計(有23種){
     1. 建立模式:建立某種特殊的物件{單例模式:(singleton)
     場景:當需設計一種特殊類,能且只能產生一個物件
     }
     2. 結構模式:
     3. 行為模式
     4. 工廠模式:工廠模式就是集中建立例項物件
     5. 原型模式:(Prototype)用原型例項指定建立物件的種類,並且通過拷貝這些原型建立新的物件
     6. 裝飾器模式:}


架構模式:巨集觀的,三層架構,主要針對工程中的;類與介面的關係,進行搭建