《軟件工程》筆記4

本書前幾章主要介紹了傳統軟件工程方法,包括

結構化分析(需求)

結構化設計(建模)

結構化實現(編碼、測試)

傳統軟件工程方法首先正確、完整地理解系統需求,然后將系統功能進行分解成一個個模塊,最后編碼實現,因此,傳統方法是面向過程的設計方法,以算法為核心,把數據和處理過程作為相互獨立的部分,數據代表問題域中的實體,而程序代碼則用于處理這些數據。

面向對象方法學

6.1.1

而接下來介紹的面向對象的程序設計方法模仿人類習慣的解題方法,用對象分解取代功能分解,也就是把程序分解成一系列對象,每個對象都既有自己的數據(描述該對象所代表的實體的屬性),又有處理這些數據的函數(通常稱為服務或方法,他們實現該對象應有的行為)。不同對象之間通過發送消息向對方提出服務要求,接收消息的對象主動完成指定功能,提供所要求的服務。程序中所有對象分工合作,共同完成整個程序功能。

6.1.2 設計類等級

類是由一組具有相同數據和方法的對象抽象出來的。例如不同圓心和半徑的一組圓,它們具有相同屬性(圓心和半徑),因此可以抽象出circle這個類。

子類繼承父類中定義的所有東西(屬性和服務),并加進該子類特有的新內容。

6.1.3 定義屬性和服務

①定義屬性:確定每個屬性(數據類型、數據結構、訪問權限)

②定義服務:設計完成每項服務功能算法。設計算法的方法參見傳統方法中的結構化設計

6.2.1 面向對象方法4要點

①用對象分解取代傳統功能分解

②把所有對象都劃分成對象類,每個對象類都定義一組數據和方法

③子類、父類組成一個層次結構的系統(繼承性),低層特性屏蔽高層同名特性

④對象間僅能通過傳遞消息互相通信(封裝性)

面向對象=對象+類+繼承+通信

6.2.2面向對象軟件過程

①陳述對程序的需求

②用面向對象的方法分析需求,確定問題域中對象,并劃分成類

③設計出適當的類等級以及每個類的屬性和服務

④用面向對象編程語言寫出該程序

那么如何用面向對象方法分析需求、定義類、定義類屬性、定義類操作呢?這里就涉及到面向對象的建模方法。包括

①對象建模(核心!):描述系統數據結構。定義類,類的屬性、類的操作

②動態建模:描述系統控制結構。規定對象模型中的對象的合法變化序列(明確規定什么時候做)

③功能建模:指明系統該干什么


最近居然花癡上了陳偉霆(? ???ω??? ?)

不過他真的好帥啊~洗洗睡下花癡一下?˙3˙?(??? ? ???)?˙3˙?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容