設計

1/19ページ

UML 工具 UMLet 試用

    UML 工具 UMLet 是一個免費、開源、簡單的 UML 建模工具。分兩個版本,獨立執行的版本和 Eclipse 外掛。我下載的是獨立執行的版本,由這裡下載,目前最新版本是 12.2 。     獨立版本是個 zip 包,解壓即可使用,軟體介面非常簡單,是英文介面,但支援中文輸入,在用例圖 […]

設計模式介紹之一:開篇概述

    這是一系列文章,原本是我撰寫的公司內部講義。最近重新熟悉設計模式翻了出來,再溫習一下。     本文的目的: 介紹設計模式 在開發過程中主動使用設計模式 使用設計模式來重構已有程式碼 不是完整的設計模式參考和詳解,僅僅是推薦     什麼是設計模式    設計模式的系統性概念是 GoF 整理 […]

設計模式介紹之三:命令模式(command)

    命令(模式)的結構很簡單,但對於消除程式碼間的耦合卻有著重要的影響。     在 C 語言中我們經常使用回撥函式,而命令模式是回撥( callback )的物件導向的替代物。從最直觀的角度來看,命令模式就是一個函式物件:一個作為物件的函式。通過將函式封裝為物件,就能夠以引數的形式將其傳遞給其 […]

設計模式介紹之四:模板方法(Template Method)模式

    在前面的文章中我們比較過框架和設計模式,一般的應用程式框架中都會大量用到設計模式。應用程式開發框架允許從一個或一組類中繼承以便建立一個新的應用程式,重用現存類中幾乎所有的程式碼,並且覆蓋其中一個或多個函式以便自定義所需要的應用程式。     應用程式開發框架中的一個基本的概念是模板方法( T […]

設計模式介紹之五:工廠模式(factory)

    我們在實現一個軟體系統時,經常遇到新增新型別的情況,沒有設計模式經驗的開發者會採取比較直接的方式,定義一個類,在用這個類的模組中引入該類所在的標頭檔案,使用 new 操作符從堆上分配一個物件,不需要的時候呼叫 delete 來刪除物件回收記憶體。隨著型別越來越多,這種分配物件的操作遍佈程式碼 […]

設計模式介紹之六:工廠模式(factory)的巧妙實現

    本文展示了實際專案中使用到的一個工廠模式實現,在向系統中新增新型別時,只需要在新型別的實現檔案這一處做改動,將新增型別對應用程式程式碼的干擾降到了最低。     這個工廠實現的基本思想是:繼承自同一個介面的新型別,通過一個函式來建立其物件,利用C 中類的建構函式會被自動呼叫這一特性,在新型別 […]

設計模式介紹之七:觀察者模式(observer)

    觀察者模式(又稱釋出/訂閱模式)定義物件間的一種一對多的依賴關係,當一個物件的狀態發生改變時,,所有依賴於它的物件都得到通知並被自動更新。     常見的應用程式框架中有很多觀察者模式的應用,比如 MFC 的 Doc/View ,Qt 中的訊號與槽、 Model/View Architect […]

設計模式介紹之八:職責鏈模式(Chain of responsibility)

    職責鏈模式使得一個軟體系統中的多個物件都有機會處理請求,將這些物件連成一條鏈,並沿著這條鏈傳遞該請求,直到有一個物件處理它為止,從而避免請求的傳送者和接收者之間產生強耦合關係。     常見的應用程式框架中有很多職責鏈模式的應用,比如 MFC 中的訊息處理機制、 Android 中的按鍵處理 […]

你適合寫高瞻遠矚的書麼?

       你適合寫高瞻遠矚的書麼?有些作者覺得工具書太簡單,沒品位,不能體現他的水平。 比如炒股書,我們說寫MACD、寫KDJ,作者就說這只是個指標,隨便學學就會了,沒什麼講的。他要講投資思路、大盤分析,甚至結合國際形勢來講,這樣才能和他的身份相匹配。   還有人力資源的書,市場上絕大多數暢銷書 […]