4月23日讀書(shū)日,全稱(chēng)“世界圖書(shū)與版權(quán)日”,在廣州天河圖書(shū)館開(kāi)了一張借書(shū)卡,借了3本書(shū)回來(lái)看,其中一本就是重構(gòu)手冊(cè)-《重構(gòu)》之姊妹篇。為什么借了這本呢,是因?yàn)槲蚁肓私庖恍┫胂笾械闹貥?gòu)和大家認(rèn)同的重構(gòu)有什么不同,下面我將逐一細(xì)說(shuō)這個(gè)異同。

      一、原來(lái)重構(gòu)是小步前行,逐一重構(gòu)

      我以前認(rèn)為重構(gòu)是某個(gè)項(xiàng)目的大部分功能重新修改架構(gòu)才是重構(gòu),看完這本書(shū)才知道重構(gòu)可以是對(duì)一個(gè)屬性,一個(gè)方法,一個(gè)類(lèi), 多個(gè)類(lèi)進(jìn)行重構(gòu),可以是小的修改也可以是大的修改重構(gòu)。

      二、從代碼中能看出來(lái)的那些代碼需要重構(gòu),但有些不能直接看出來(lái)

      只要在代碼中看到一點(diǎn)不對(duì)勁的警示信號(hào),但是有的無(wú)法在代碼中直接看到有什么問(wèn)題。就像冰箱里的發(fā)霉變質(zhì)食物,有的味道很臭,有的味道有點(diǎn)臭,有的食物變質(zhì)了但是沒(méi)有臭味,這跟代碼的異味很相似。

      三、重構(gòu)是分重構(gòu)周期的

      重構(gòu)是分重構(gòu)周期的,要解決代碼異味越小,重構(gòu)周期越小。一般是分步走的,一小步重構(gòu)一點(diǎn)代碼(可以是某個(gè)屬性或某個(gè)方法),小步走,按設(shè)定的重構(gòu)周期完成。

      四、重構(gòu)是需要衡量是否完成的

      重構(gòu)有4個(gè)簡(jiǎn)單設(shè)計(jì):1、運(yùn)行所有測(cè)試;2、不存在重復(fù)的邏輯;3、要向程序員清楚地說(shuō)明對(duì)其很重要的每一個(gè)意圖;4、盡量少使用類(lèi)和方法。

網(wǎng)友評(píng)論