小偉

          我的java筆記

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            29 隨筆 :: 1 文章 :: 23 評(píng)論 :: 0 Trackbacks
          閻宏 ,1964年出生于天津市。1987年畢業(yè)于中國(guó)科技大學(xué)近代物理系,1990年于中科院理論物理所獲碩士學(xué)位,1992年獲博士學(xué)位,翌年赴日本京都大學(xué)進(jìn)行博士后研究工作。

          作者曾于美國(guó)花旗銀行(Citibank)、湯臣金融(Thomson Financial)、奧本海默基金(Oppenheimer)等處供職,進(jìn)行了多年的軟件開(kāi)發(fā)、架構(gòu)設(shè)計(jì)和技術(shù)管理工作。

          閻宏博士對(duì)面向?qū)ο罄碚摵驮O(shè)計(jì)模式有精到的見(jiàn)解,對(duì)中國(guó)的古典智慧也有深厚的積淀,更為難得的是能夠把兩者融洽地結(jié)合起來(lái)。閱讀閻宏博士的文章,你會(huì)發(fā)現(xiàn)文章中處處閃爍著作者智慧的光點(diǎn)。閻宏博士著有《Java與模式》一書(shū),本專(zhuān)欄編輯了閻宏博士的幾篇文章和書(shū)中的一些章節(jié),以饗讀者。

          您閱讀后有什么感想,歡迎在JR論壇中發(fā)貼和大家討論。同時(shí),也可以與作者聯(lián)系:JavaPatterns@hotmail.com
          1. 什么是模式

          什么是模式,這是一個(gè)看上去簡(jiǎn)單,但是又非常不簡(jiǎn)單的問(wèn)題。我見(jiàn)過(guò)很多人,學(xué)習(xí)模式理論已經(jīng)很長(zhǎng)時(shí)間了,但是并不真正理解這一點(diǎn)。

          模式理論的基本思想其實(shí)起源于中國(guó),是中國(guó)文化的固有思想。你,我,我們中每一個(gè)自幼受到中國(guó)思想熏陶的人,都自然具有這一基本思想。模式的思想存在于中國(guó)文化的各個(gè)角落,包括哲學(xué)、法律,醫(yī)學(xué),兵法,體育,文學(xué),直到我們行為處事的方式。

          模式的思想,長(zhǎng)期以來(lái)不存在于西方思考方式中,至今也不是西方文化的主流思想。因此學(xué)習(xí)模式,切忌以西方式的思路學(xué)習(xí)。不然的話,緣木求魚(yú),事倍功半。

          簡(jiǎn)單地講,所謂模式,就是得到很好研究的范例。設(shè)計(jì)模式,就是設(shè)計(jì)范例。在孫子兵法中,充斥著各種模式。孫子說(shuō),“至于死地而后生”,就是戰(zhàn)爭(zhēng)模式。三十六計(jì),條條都是模式,比如“走為上”,“空城計(jì)”也都是戰(zhàn)爭(zhēng)模式。

          這些模式中的每一個(gè)都具有典型意義,具有學(xué)習(xí)價(jià)值。通過(guò)研究這些模式,學(xué)習(xí)者可以相互交流,可以在自己的實(shí)踐中舉一反三,推陳出新,加以應(yīng)用。

          在我們參加高考的時(shí)候,老師給我們很多的典型題目,作為練習(xí)使用。這些題目一般來(lái)說(shuō)不會(huì)在高考中原封不動(dòng)地出現(xiàn),但是這些題目會(huì)有一些內(nèi)容啟發(fā)我們的思考,可以讓我們舉一反三,從而為考試做好準(zhǔn)備。

          模式不是框架(Framework),也不是過(guò)程。模式也不是簡(jiǎn)單的“問(wèn)題的解決方案”,因?yàn)槟J奖仨毷堑湫蛦?wèn)題的解決方案,是可以讓學(xué)習(xí)者舉一反三的,有研究?jī)r(jià)值、有交流價(jià)值,有自己的名字的例子。

          模式不能套用。不要以為在任何一個(gè)系統(tǒng)中都要使用某些設(shè)計(jì)模式。系統(tǒng)的設(shè)計(jì)也不是含有設(shè)計(jì)模式就好,更不是含有越多的設(shè)計(jì)模式就越好。

          在《三國(guó)演義》中,馬恕就套用了“至于死地而后生”的戰(zhàn)爭(zhēng)模式,最后倒了大霉。在高考中,你如果把老師交給你的典型題目答案倒背如流,在一個(gè)個(gè)放到考試卷子上去,放得越多,恐怕你就離考上大學(xué)越遠(yuǎn)。

          比如你喜歡三十六計(jì),如果你在執(zhí)行某項(xiàng)軍事任務(wù)的時(shí)候,千方百計(jì)地將盡可能多的三十六計(jì)用到里面,每次都來(lái)一個(gè)“走為上”,那么你的朋友和敵人都會(huì)覺(jué)得某名奇妙。如果你非三十六計(jì)中的計(jì)謀不用,或者認(rèn)為非三十六計(jì)中的策略不算好策略,那么別人只能認(rèn)為你不懂三十六計(jì)的精髓。

          中國(guó)傳統(tǒng)醫(yī)學(xué)也是一樣,有時(shí)看上去癥狀相似的病,卻要使用不同的處方,即所謂辨證用藥。如果每次給病人看病,都要捧出某本醫(yī)案,將盡可能多的著名醫(yī)案用到你的病人身上,恐怕過(guò)不了多久就麻煩大了。

          中國(guó)古代的法律,就是案例法;也就是需要法官在研習(xí)案例的基礎(chǔ)之上,舉一反三,適當(dāng)發(fā)揮。開(kāi)個(gè)玩笑,如果你喜歡上“軋美案”,逢美必軋,恐怕需要及早做好該行的準(zhǔn)備。

          關(guān)于模式的理論的起源、歷史,以及模式理論與中國(guó)文化的淵源、哲學(xué)思想,設(shè)計(jì)模式背后的OO設(shè)計(jì)原則,二十幾個(gè)設(shè)計(jì)模式的詳細(xì)講解,他們?cè)贘ava語(yǔ)言中如何實(shí)現(xiàn),如何在自己的系統(tǒng)設(shè)計(jì)中舉一反三、推陳出新,以及Java語(yǔ)言本身使用了什么設(shè)計(jì)模式,可以看一看我的新書(shū)《Java與模式》(電子工業(yè)出版社出版)。

          簡(jiǎn)單工廠(Simple Factory)模式
          本文是作者的新書(shū)《Java與模式》的節(jié)選,主要內(nèi)容如下:

          第12章? 簡(jiǎn)單工廠(Simple Factory)模式
          12.1? 工廠模式的幾種形態(tài)
          12.2? 簡(jiǎn)單工廠模式的引進(jìn)
          12.3? 簡(jiǎn)單工廠模式的結(jié)構(gòu)
          12.4? 簡(jiǎn)單工廠模式的實(shí)現(xiàn)
          12.5? 簡(jiǎn)單工廠模式與其他模式的關(guān)系
          12.6? 模式的優(yōu)點(diǎn)和缺點(diǎn)
          12.7? 簡(jiǎn)單工廠模式在Java中的應(yīng)用
          12.8? 女?huà)z摶土造人

          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文

          簡(jiǎn)單工廠(Simple Factory)模式

          工廠方法(Factory Method)模式

          本文是作者的新書(shū)《Java與模式》的節(jié)選,主要內(nèi)容如下:

          第13章? 工廠方法(Factory Method)模式
          13.1? 引言
          13.2? 工廠方法模式的結(jié)構(gòu)
          13.3? 工廠方法模式在農(nóng)場(chǎng)系統(tǒng)中的實(shí)現(xiàn)
          13.4? 關(guān)于工廠方法模式的實(shí)現(xiàn)
          13.5? Java語(yǔ)言中工廠方法模式的例子
          13.6? 工廠方法模式與其他模式的關(guān)系
          13.7? 女?huà)z舉繩造人
          13.8? 其他的例子

          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文

          工廠方法(Factory Method)模式

          抽象工廠(Abstract Factory)模式

          本文是作者的新書(shū)《Java與模式》的節(jié)選,主要內(nèi)容如下:

          第14章? 抽象工廠(Abstract Factory)模式
          14.1? 引言
          14.2? 問(wèn)題
          14.3? 抽象工廠模式的結(jié)構(gòu)
          14.4? 在什么情形下應(yīng)當(dāng)使用抽象工廠模式
          14.5? 抽象工廠模式在農(nóng)場(chǎng)系統(tǒng)中的實(shí)現(xiàn)
          14.6? 抽象工廠模式的另一個(gè)例子
          14.7? “開(kāi)-閉”原則
          14.8? 關(guān)于模式的實(shí)現(xiàn)
          14.9? 女?huà)z造萬(wàn)物的故事

          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文

          抽象工廠(Abstract Factory)模式

          單例(Singleton)模式

          本文是作者的新書(shū)《Java與模式》的節(jié)選,主要內(nèi)容如下:

          第15章? 單例(Singleton)模式
          15.1? 引言
          15.2? 單例模式的結(jié)構(gòu)
          15.3? 在什么情況下使用單例模式
          15.4? 單例類(lèi)的狀態(tài)
          15.5? 一個(gè)實(shí)用的例子:屬性管理器
          15.6? Java語(yǔ)言中的單例模式
          15.7? 專(zhuān)題:不完全的單例類(lèi)
          15.8? 相關(guān)模式
          15.9? 附錄:雙重檢查成例的研究
          15.10? 給讀者的一點(diǎn)建議

          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文
          單例(Singleton)模式

          單例模式與MX記錄

          本文是作者的新書(shū)《Java與模式》的節(jié)選,講解如何將單例模式應(yīng)用到實(shí)際系統(tǒng)設(shè)計(jì)中去,主要內(nèi)容如下:
          第16章? 專(zhuān)題:?jiǎn)卫J脚cMX記錄
          16.1? 問(wèn)題與解決方案
          16.2? 目錄服務(wù)與MX記錄
          16.3? JNDI架構(gòu)介紹
          16.4? 如何使用JNDI編程
          16.5? 系統(tǒng)設(shè)計(jì)
          16.6? 討論
          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文
          單例模式與MX記錄

          多例(Multiton)模式與多語(yǔ)言支持

          本文是作者的新書(shū)《Java與模式》的節(jié)選,講解多例(Multiton)模式以及如何將多例模式應(yīng)用到實(shí)際系統(tǒng)設(shè)計(jì)中去,主要內(nèi)容如下:

          第17章? 專(zhuān)題:多例(Multiton)模式與多語(yǔ)言支持
          17.1? 引言
          17.2? 多例模式
          17.3? 多語(yǔ)言項(xiàng)目的設(shè)計(jì)

          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文
          多例(Multiton)模式與多語(yǔ)言支持

          序列鍵生成器與單例及多例模式

          本文是作者的新書(shū)《Java與模式》的節(jié)選,講解單例(Singleton)及多例(Multiton)模式以及如何將它們應(yīng)用到實(shí)際系統(tǒng)設(shè)計(jì)中去,主要內(nèi)容如下:
          第18章? 專(zhuān)題:序列鍵生成器與單例及多例模式
          18.1? 問(wèn)題
          18.2? 將單例模式應(yīng)用到系統(tǒng)設(shè)計(jì)中
          18.3? 將多例模式應(yīng)用到系統(tǒng)設(shè)計(jì)中
          18.4? 討論

          請(qǐng)?jiān)谙旅娲蜷_(kāi)pdf文件閱讀本文
          序列鍵生成器與單例及多例模式

          《Java與模式》的目錄
          閻宏博士
          《Java與模式》作者
          www.WebEndsHere.com(或者h(yuǎn)ttp://218.6.168.109/jeffyan77)
          JavaPatterns@yahoo.com

          posted on 2006-10-18 15:13 小偉 閱讀(1660) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 蓬莱市| 靖宇县| 安福县| 永兴县| 镇沅| 故城县| 抚远县| 冀州市| 北票市| 布尔津县| 固安县| 兴海县| 娄底市| 大余县| 达拉特旗| 舟山市| 吕梁市| 习水县| 安徽省| 贡觉县| 永顺县| 通道| 清丰县| 伊宁市| 延吉市| 内江市| 阿拉尔市| 武宁县| 利川市| 敦化市| 武山县| 肇州县| 鹤岗市| 进贤县| 铅山县| 谷城县| 邵武市| 福泉市| 驻马店市| 竹溪县| 昌图县|