2016-4-25:軟件模塊的3項(xiàng)職責(zé).md

“大千世界中,唯一缺乏的就是人類的注意力。”——?jiǎng)P文?凱利
要使軟件易于閱讀和修改,所需要的不僅僅是一些原則和模式。還需要你的注意力,需要紀(jì)律約束,需要?jiǎng)?chuàng)造美的激情。

每一個(gè)軟件模塊都有三項(xiàng)職責(zé)。

  1. 功能職責(zé)(是否完成了功能?)
    它運(yùn)行起來(lái)所完成的功能,這也是該模塊得以存在的原因。

  2. 變化職責(zé)(是否能夠應(yīng)對(duì)變化?)
    它要應(yīng)對(duì)變化,幾乎所有的模塊在它們的晟敏周期中都要變化,開發(fā)者有責(zé)任保證這種改變應(yīng)該盡可能簡(jiǎn)單。一個(gè)難以改變的模塊是拙劣的,即時(shí)能夠工作,也需要對(duì)它進(jìn)行修正。

  3. 交流職責(zé)(換一個(gè)人,是否可讀?)
    要和閱讀它的人進(jìn)行溝通。對(duì)該模塊不熟悉的開發(fā)人員應(yīng)該能夠比較容易地閱讀并理解它。一個(gè)無(wú)法進(jìn)行溝通的模塊也是拙劣的,同樣需要對(duì)它進(jìn)行修正。

小知曰:好的模塊一定是符合“開放封閉原則(OCP,Open Closed Principle)”的,即:對(duì)擴(kuò)展是開放,而對(duì)修改是封閉。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,593評(píng)論 25 708
  • 我看見(jiàn) 殘陽(yáng)里有兩三座炊煙, 也不小心聽(tīng)見(jiàn)風(fēng)里 四五聲雁啼。 筆直的水泥路上 有六只水牛蹣跚著。 我不是一個(gè)人, ...
    妖菲閱讀 101評(píng)論 1 1
  • 笛聲悠悠,柔情碎。 驚鴻一瞥,心已醉。 荷花傘下,見(jiàn)紅顏。 枯樹洞內(nèi),終身定。 月兒彎彎,心亦知。 千山冰雪,為卿...
    vark纖上陌塵閱讀 530評(píng)論 0 1
  • 晚間打卡 2016/09/07 ,8/70 “ 老師您在學(xué)校嗎?” "在,今晚督班,21:40分...
    婉琳閱讀 412評(píng)論 2 2
  • 一本書,一段思考,一種心得。 《我喜愛(ài)一切不徹底的事物》,的確有一副青春的派頭。 想看的風(fēng)景很多,想體驗(yàn)的人生也有...
    艽艽艽艽閱讀 195評(píng)論 4 6