什麼樣的程序設計,才是好的程序設計?

莫愆 發佈 2022-08-08T05:36:33.284996+00:00

今天這一章講的是ETC(easy to change 容易改變)原則。作者稱其為設計的本質。A thing is well designed if it adapts to the people who use it.


今天這一章講的是ETC(easy to change 容易改變)原則。作者稱其為設計的本質。
A thing is well designed if it adapts to the people who use it. For code, that means it must adapt by changing.
如果一個東西能夠適應使用它的人,那麼它就是好的設計。對於代碼來說,這意味著它必須通過改變來適應。

基於這個日新月異的時代,人們想要的東西一直在變,有時候連客戶都不知道自己想要的東西到底是什麼。需求的變更也是家常便飯。
加上系統本身也是在不斷地完善壯大,更新的過程也是變更的過程。

從這個角度來看,只要你寫出來的東西,還有人在用。你自己對它還有優化的意願。那麼,代碼註定是需要不停改變的。
所以,改變是代碼的宿命。設計的意義就是為了讓代碼容易被改變。

作者提到說到底那麼更加細節的設計原則,都只是為了實現ETC原則而已。

想想也確實是如此。從最基礎的面向對象來說,封裝可以更方便地更改屬性的訪問權限,更方便更改方法內部的具體實現;繼承可以更方便的「更改」父類的行為;多態可以更方便更改不同的實現……

作者甚至提到,命名規則也同樣有助於實現ETC原則。命名規範有助於更容易讀懂代碼,我們需要先讀懂代碼才能修改代碼。哈哈哈,無法反駁。

作者同時提到,ETC不是一種規則,而是一種價值觀。它是我們在多個選項中做出選擇的依據。

在寫下某段代碼之前不妨想想,這段代碼是讓改變變得更簡單了還是更困難啦?

當然,把作為價值觀的前提是,我們需要知道怎麼判斷哪種寫法更有利於改變。

如果我們暫時也不知道該怎麼判斷的時候。作者給了兩個方法。
1. 試著讓你寫的東西可以被替換。這樣,即便寫的東西不行,到時候全被換掉也是可以的。
根據我本人的愚見,其實我並不是很能理解這一條,我感覺讓寫的東西可以被替換,和讓寫的東西更容易更改,沒什麼區別吧。
2. 在注釋中寫上當時都有哪些選擇,為什麼選了這一個。到時候這個地方需要修改的時候,可以作為一種依據。
這一點和昨天提到的寫文檔的時候要寫上原因是一個道理吧,可見注釋是真的非常重要。
要讓ETC變成一種日常思考的習慣。只有通過刻意練習,才能把它內化。不然看完就忘了,對往後的編碼並沒有多大的裨益。

作者提到了一種方法,給我們的編輯器增加一個配置,在每次保存的時候,都彈出一個提示,「剛剛寫的東西,容易修改嗎?滿足ETC嗎?」。


字數:784

耗時:60分


··················END··················


關鍵字:

【好物分享】感動…“嘟唇精華“讓我重新認識我的唇💋💋💋

2021-11-16T09:15:48.475315+00:00

只要一步『脫皮醜嘴→性感啾唇』

原以為這輩子跟唇膏無緣了😭

 

我素唇好好的,一塗口紅就狂起屑

上色變得很不均勻,再燒的人氣專櫃款,也被我塗的很廉價

什麼方法都試過啦!

護唇膏打底、凡士林厚敷…

對頑劣死皮頂多「一次性」效果

補個妝…原!形!畢!露!

口紅因此一支支被冷凍(大哭)

 

以為要粗糙一生,結果我朋友意外推坑【嘟嘟精華唇蜜

從此開啟我唇的第二人生💋

https://www.cashin.tw/product/000000000034960

 

 

我一直對唇蜜印象很差

黏膩感結合死皮…恩…抿起來很噁

所以聽到關鍵字,本能的搖頭拒絕

朋友表示:『這韓國醫美研發剛好專治你的唇況,就死馬當活馬醫吧!』

 

好…回過神我就下單了(腦波很弱

但,第一次擦就打破我對唇蜜的認知!

不知道什麼原理,這支居然把死皮治得服服貼貼😳

滋潤度.持久度碾壓護唇膏,不需要一直補擦(也是,哪家護唇膏會下重本加玻尿酸

不誇張,我卸妝後唇況還嫩到隔天,代表成分真的有被吸收

 

色澤是淡淡珊瑚色的“韓系玻璃唇

單擦顯氣色,薄荷還能激出天然唇珠///

試著疊擦口紅…

1+1效果驚為天人!居然沒有脫皮了!

而且唇紋被撫平後

妝感都level up了

果然好看的唇,才是一個好妝容的核心

現在,我那些塵封已久的唇膏都能拿來用了❤️

 

原來拯救脫皮唇幾百塊能搞定…

早知道當初就該三支組合買下去

anyway我是一定會回購啦哈哈

https://www.cashin.tw/product/000000000034960

 

 

商品資訊

 

MAGICOM_4D瞬感豐唇精華_微涼感(乾燥玫瑰色)

 

讓人忍不著想親的 C粉嫩唇!

單擦:潤色護唇 打造自然澎澎感

疊擦:塗自己喜歡的口紅 豐潤更顯色

加強:唇峰二次加強 免注射也有微笑唇

 

https://www.cashin.tw/product/000000000034960