歡迎來到 常識(shí)詞典網(wǎng) , 一個(gè)專業(yè)的常識(shí)知識(shí)學(xué)習(xí)網(wǎng)站!
[ Ctrl + D 鍵 ]收藏本站
答案 1:
其實(shí)一般框架中已經(jīng)應(yīng)用了不少的設(shè)計(jì)模式原則,如果使用框架,更多地考慮你的業(yè)務(wù)邏輯模型。其實(shí)我個(gè)人覺得,在一般情況下,不能以設(shè)計(jì)模式做為設(shè)計(jì)的出發(fā)點(diǎn),它們是來幫你解決問題的,而不是為你造成困擾的。在考慮軟件設(shè)計(jì)的過程中,出發(fā)點(diǎn)永遠(yuǎn)應(yīng)該是以需求為基礎(chǔ)的,需要對現(xiàn)有的需求,對于未來可能的變化有盡量充分的考慮。尤其要對變化有充分的認(rèn)識(shí),設(shè)計(jì)模式是用來幫助你應(yīng)付變化的。在這之后,應(yīng)該以一般性的OO設(shè)計(jì)原則進(jìn)行思考,將職責(zé)進(jìn)行劃分、哪些地方可能會(huì)發(fā)生變化、如何做開閉??等等,網(wǎng)上、書上有很多介紹。變化是一個(gè)需要仔細(xì)考慮的因素,這是因?yàn)樽兓鴮?dǎo)致了依賴的變化,由于變化的擴(kuò)張導(dǎo)致的軟件難以維護(hù)和功能升級(jí)。因此把出發(fā)點(diǎn)放在變化上是沒錯(cuò)的。對于需求很確定、變化很少的軟件設(shè)計(jì),可以完全不考慮設(shè)計(jì)模式;但一旦決定使用設(shè)計(jì)模式,就需要仔細(xì)考慮和權(quán)衡。有很多時(shí)候,使用哪種模式并不是非常明顯的,如何抉擇的問題答案又會(huì)回到你對業(yè)務(wù)、對需求、對變化的理解了。答案 2:
我覺得使用設(shè)計(jì)模式是這樣的:出發(fā)點(diǎn)是需求,但你發(fā)現(xiàn)一些需求有共性,要么是相同的動(dòng)作,要么是相同的使用方式,然后你想想有什么抽象或者設(shè)計(jì)模式可以滿足這些共性,然后才是使用設(shè)計(jì)模式。說白了,還是先分析你要做的事情有什么內(nèi)在聯(lián)系,然后再去匹配設(shè)計(jì)模式。個(gè)人認(rèn)為,前者需要很多的思考,而后者靠使用經(jīng)驗(yàn)下一篇:Flipboard、Zaker 類產(chǎn)品是不是已經(jīng)走下坡路了? 下一篇 【方向鍵 ( → )下一篇】
上一篇:咱們的-或者-之類的平時(shí)都在哪里干什么? 上一篇 【方向鍵 ( ← )上一篇】
快搜