CH1. 物件導向軟體開發簡介


此章節將討論以下內容:

  1. 功能分解
  2. 物件導向範型
  3. 特殊物件方法

功能分解

功能分解是一種處理複雜問題的方法,當開發人員收到需求時,會按照所需要的步驟來思考
功能分解存在一個問題,容易讓主程式的職責過大,與子程式的耦合過高,之後如果遇到需求有變化時,將難以調整

軟體開發視角

視角 描述
概念 軟體要負責什麼
規約 怎麼使用軟體
實作 軟體怎樣履行自己的責任

物件導向範型

編寫程式碼時是圍繞在物件而非函式,這裡提到的物件,傳統上會定義為 帶有方法的資料,但作者認為是 具有責任的東西

物件類別(class)的實體,程式中需要透過實體化來取得物件

物件導向的三大特性

  • 封裝:隱藏實作,讓外部成員只需對外不開口呼叫而不需要知道細節,將責任解耦
  • 繼承:將物件內的資料及方法完成複製使用,可減少冗餘程式碼
  • 多型:透過抽象參照概念,可以得到不同的行為

特殊物件方法

物件的建立及銷毀方法,主要有:

  • 建構函式 (constructor):初始化或建立一個物件
  • 解構函式 (destructor) :物件不需要時將其清除
設計模式的解析與活用 (Design Patterns Explained: A New Perspective on Object-Oriented Design, 2/e)
設計模式的解析與活用 (Design Patterns Explained: A New Perspective on Object-Oriented Design, 2/e)
作者 Alan Shalloway James R. Trott 博碩文化譯 / 出版社 博碩文化

2013-10-30


#reading #Design pattern #OOP







你可能感興趣的文章

React-[路由篇]-SPAs與React Router (上)

React-[路由篇]-SPAs與React Router (上)

用 Python 自學資料科學與機器學習入門實戰:Matplotlib 基礎入門

用 Python 自學資料科學與機器學習入門實戰:Matplotlib 基礎入門

How to make a Line chatbot with AWS Lambda

How to make a Line chatbot with AWS Lambda






留言討論