国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
博客園 - 探索設(shè)計(jì)模式(一):開(kāi)篇

探索設(shè)計(jì)模式開(kāi)篇

——探索設(shè)計(jì)模式系列之一

Terrylee,20051206

前言

加入Design & Pattern團(tuán)隊(duì)有幾個(gè)月的時(shí)間了,慚愧的是從沒(méi)有寫(xiě)過(guò)關(guān)于設(shè)計(jì)模式的隨筆,得到wayfarer的同意,把企業(yè)庫(kù)系列的隨筆放在了團(tuán)隊(duì)的首頁(yè)上。不是不想去寫(xiě)這樣的隨筆,也不是沒(méi)有時(shí)間,自己初學(xué)設(shè)計(jì)模式,去寫(xiě)設(shè)計(jì)模式的文章,有點(diǎn)班門(mén)弄斧的味道。園子里呂震宇老師的《設(shè)計(jì)模式系列》和wayfarer的《設(shè)計(jì)之道》堪稱設(shè)計(jì)模式里的經(jīng)典之作。可是正如wafarer所說(shuō)的那樣,受到發(fā)表欲的蠱惑,本著交流就是進(jìn)步的想法,思考再三,還是決定寫(xiě)這樣的隨筆,來(lái)對(duì)設(shè)計(jì)模式做一些探索和總結(jié),起名曰“探索設(shè)計(jì)模式”,有些言過(guò)其實(shí),就當(dāng)是記錄自己學(xué)習(xí)設(shè)計(jì)模式的歷程吧,不過(guò)還是希望能得到各位前輩的指點(diǎn)!

設(shè)計(jì)模式

設(shè)計(jì)模式是規(guī)則嗎?

地上本沒(méi)有路,走得人多了也就成了路。設(shè)計(jì)模式如同此理,它是經(jīng)驗(yàn)的傳承,并非體系;是被前人發(fā)現(xiàn),經(jīng)過(guò)總結(jié)形成了一套某一類問(wèn)題的一般性解決方案,而不是被設(shè)計(jì)出來(lái)的定性規(guī)則;它不像算法那樣可以照搬照用。

設(shè)計(jì)模式是架構(gòu)嗎?

架構(gòu)和模式應(yīng)該是一個(gè)屬于相互涵蓋的過(guò)程,但是總體來(lái)說(shuō)架構(gòu)更加關(guān)注的是所謂的High-Level Design,而模式關(guān)注的重點(diǎn)在于通過(guò)經(jīng)驗(yàn)提取的準(zhǔn)則或指導(dǎo)方案在設(shè)計(jì)中的應(yīng)用,因此在不同層面考慮問(wèn)題的時(shí)候就形成了不同問(wèn)題域上的模式。模式的目標(biāo)是,把共通問(wèn)題中的不變部分和變化部分分離出來(lái)。不變的部分,就構(gòu)成了模式,因此,模式是一個(gè)經(jīng)驗(yàn)提取的準(zhǔn)則,并且在一次一次的實(shí)踐中得到驗(yàn)證,在不同的層次有不同的模式,小到語(yǔ)言實(shí)現(xiàn),大到架構(gòu)。在不同的層面上,模式提供不同層面的指導(dǎo)。

設(shè)計(jì)模式,軟件的永恒之道?

這個(gè)問(wèn)題沒(méi)有答案,有的只是討論,看一下一位前輩結(jié)合建筑學(xué)得出的幾點(diǎn)心得吧:

和建筑結(jié)構(gòu)一樣,軟件中亦有諸多的內(nèi)力。和建筑設(shè)計(jì)一樣,軟件設(shè)計(jì)也應(yīng)該努力疏解系統(tǒng)中的內(nèi)力,使系統(tǒng)趨于穩(wěn)定、有生氣。一切的軟件設(shè)計(jì)都應(yīng)該由此出發(fā)。

任何系統(tǒng)都需要有變化,任何系統(tǒng)都會(huì)走向死亡。作為設(shè)計(jì)者,應(yīng)該擁抱變化、利用變化,而不是逃避變化。

好的軟件只能產(chǎn)生而不能創(chuàng)造,我們所能做的只是用一個(gè)相對(duì)好的過(guò)程,盡量使軟件朝向好的方向發(fā)展。

需要設(shè)計(jì)模式嗎?

答案是肯定的,但你需要確定的是模式的應(yīng)用是否過(guò)度?我得承認(rèn),世界上有很多天才的程序員,他可以在一段代碼中包含6 種設(shè)計(jì)模式,也可以不用模式而把設(shè)計(jì)做得很好。但我們的目標(biāo)是追求有效的設(shè)計(jì),而設(shè)計(jì)模式可以為這個(gè)目標(biāo)提供某種參考模型、設(shè)計(jì)方法。

我們不需要奉GOF的設(shè)計(jì)模式為圭臬,但合理的運(yùn)用設(shè)計(jì)模式,才是正確的抉擇。很多人看過(guò)GOF的《Design Patterns》,對(duì)這23 種模式也背得滾瓜爛熟。但重要的不是你熟記了多少個(gè)模式的名稱,關(guān)鍵還在于付諸實(shí)踐的運(yùn)用。為了有效地設(shè)計(jì),而去熟悉某種模式所花費(fèi)的代價(jià)是值得的,因?yàn)楹芸炷銜?huì)在設(shè)計(jì)中發(fā)現(xiàn)這種模式真的很好,很多時(shí)候它令得你的設(shè)計(jì)更加簡(jiǎn)單了。

其實(shí)在軟件設(shè)計(jì)人員中,唾棄設(shè)計(jì)模式的可能很少,盲目夸大設(shè)計(jì)模式功用的反而更多。言必談“模式”,并不能使你成為優(yōu)秀的架構(gòu)師。真正出色的設(shè)計(jì)師,懂得判斷運(yùn)用模式的時(shí)機(jī)。還有一個(gè)問(wèn)題是,很多才踏入軟件設(shè)計(jì)領(lǐng)域的人員,往往對(duì)設(shè)計(jì)模式很困惑。對(duì)于他們來(lái)說(shuō),由于沒(méi)有項(xiàng)目的實(shí)際經(jīng)驗(yàn),OO 的思想也還未曾建立,設(shè)計(jì)模式未免過(guò)于高深了。其實(shí),即使是非常有經(jīng)驗(yàn)的程序員,也不敢夸口對(duì)各種模式都能合理應(yīng)用。[--摘自wayfare的設(shè)計(jì)之道]

后記

關(guān)于設(shè)計(jì)模式的理論性的文章,已經(jīng)寫(xiě)了很多了,我不想再繼續(xù)重復(fù)抄寫(xiě)下去,僅記錄下上面幾段話,用它來(lái)作探索設(shè)計(jì)模式系列的一個(gè)開(kāi)篇吧。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
軟件的架構(gòu)與設(shè)計(jì)模式 - 天極網(wǎng)
關(guān)于“架構(gòu)”與“框架”、“模式”與“模型”的思考
C語(yǔ)言和設(shè)計(jì)模式(之開(kāi)篇)
應(yīng)用軟件建模的各個(gè)階段
軟件模式 http://www.uml.org.cn/sjms/200605153.htm
框架和架構(gòu)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服