原创 記boost應用中的幾個有用的宏

BOOST_ALL_DYN_LINK  動態鏈接boost,而不是默認的靜態鏈接。 BOOST_LIB_DIAGNOSTIC  輸出鏈接boost庫的信息,便於開發者確認是否鏈接與期望的一致,且到底是哪個文件用到了相應的boost庫。 此

原创 大衛的Design Patterns學習筆記20:State

一、概述State(狀態)模式用於把一個對象的內部狀態從對象中分離出來,形成單獨的狀態對象,所有與該狀態相關的行爲都放入該狀態對象中。一個對象可能處在

原创 大衛的Design Patterns學習筆記22:Template Method

一、概述Template Method(模板方法)模式定義一個操作中的算法的骨架,而將一些步驟延遲到子類中。Template Method使得子類可以

原创 大衛的Design Patterns學習筆記15:Interpreter

一、概述Interpreter(解釋器)模式描述瞭如何爲簡單的語言定義一個文法,如何在該語言中表示一個句子,以及如何解釋這些句子。在這裏使用語言這個詞

原创 大衛的Design Patterns學習筆記13:Chain of Responsibility

一、概述Chain of Responsibility(職責鏈,以下簡稱CoR)模式通過將多個對象串接成一條鏈(Chain),並沿着這條鏈傳遞上層應用

原创 預告,剛寫了篇關於設計模式與單元測試的文章

訪問量增長太慢,排名又降了好些,對CSDN的牢騷還是沒有得到迴應,哎...... 順便預告一下,剛寫了篇關於設計模式與單元測試的文章,已將大綱投稿到IBM developerworks,畢竟那裏的用戶量更大,但需要1-2周才知道是否可以提

原创 體驗CORBA組件模型CCM:1、引言

體驗CORBA組件模型CCM:1、引言 摘要: 在比較CORBA2.x與CORBA3.x的基礎上,簡要介紹CCM引入的新特性。 一、概述 雖然CORBA2.x已成功應用於諸多軟件系統的開發,但CORBA2.x僅是一個分佈式對象計算模型,並

原创 大衛的Design Patterns學習筆記12:Proxy

一、概述大家都用過代理服務器,代理服務器是從出發點到目的地之間的中間層。而Proxy模式中的Proxy功能上與此類似,是對象的訪問者與對象之間的中間層

原创 大衛的Design Patterns學習筆記10:Flyweight

一、概述當類的部分屬性在整個系統中的多個對象間重複出現時,一個通常的作法是將重複出現的屬性從類定義中分離出來,並在多個對象間通過共享來節約系統開銷,這

原创 大衛的Design Patterns學習筆記05:Singleton

一、概述在很多情況下,我們的系統只允許某個類有一個或指定個數的實例,如一般的應用系統往往有且僅有一個log文件操作類實例,或者,整個系統僅有一個等待事

原创 大衛的Design Patterns學習筆記07:Bridge

一、概述Bridge(橋接)模式將抽象部分與它的實現部分分離,使它們都可以獨立地變化。二、結構Bridge模式的結構如下:圖1:Bridge模式類圖示

原创 大衛的Design Patterns學習筆記24:後記

雖然學習、研究設計模式已經很久,但一直未敢動筆寫下任何關於設計模式的文章,一則是因爲DP屬於軟件設計技術,較其它實用編程技術,更爲抽象,需有認真思考、

原创 大衛的Design Patterns學習筆記14:Command

一、概述Command(命令)模式可用於將一個請求封裝爲一個對象,從而使你可用不同的請求對客戶進行參數化,即允許用戶指定對何種對象執行何種操作;或者,

原创 大衛的Design Patterns學習筆記23:Vistor

  大衛的Design Patterns學習筆記23:Vistor   一、概述 前面已經討論過的Adapter模式告訴我們如何應對接口不一致對我們的設計造成的影響,但是,這並不能在如下的Context下發揮多大的作用: 一個類系中的多個

原创 大衛的Design Patterns學習筆記17:Mediator

一、概述Mediator(中介者)模式的名稱已經基本能夠反映該模式的意圖:用一箇中介對象來封裝一系列的對象之間的交互。中介者使各對象不需要顯式地相互引