重點摘要#
- 許多曾經被熱烈推崇的模式、框架和演算法,長期來看都不值一提
- 選擇值得解決的挑戰比盲目接受任務更重要
- 保持簡單——時間會證明複雜的設計往往是不必要的
- 學會接受舊的東西,不要總想「修正」過去的設計
詳細內容#
觀察多年來哪些技術留存、哪些消失,是一件有趣的事。許多模式、框架、典範轉移和演算法,都曾被聰明人熱情地推崇,但長期看來卻只是曇花一現。歷史在告訴我們什麼?
選擇值得的挑戰#
這對架構師來說很棘手。我們常以為無法選擇要解決的問題,但其實通常可以。當我們不選擇做正確的事,時間流逝後往往會發現:我們辛勤解決的問題並非真正需要解決的,工作就這樣白費了。
長期來看,對正確挑戰的好解決方案會超越其他所有方案。
保持簡單#
我們總說「保持簡單」,但實際上很少做到。我們很聰明,能處理複雜性,也能輕易為複雜性找理由。然後時間過去,一兩年後回頭看,幾乎總是會想:如果重來一次,一定會做得不同。
趁早認清這一點,真正學會在時間的透鏡下理解什麼是「簡單」。
接受舊的東西#
架構師喜歡尋找「唯一正確的方法」——那個能提供我們渴望的可預測性和清晰答案的方法論。但問題是:你現在的指導原則,一兩年後可能就會過時,更別說十年後了。
學會擁抱舊的東西,抵制想要回去「修正」它的誘惑。問問自己:
- 當時的解決方案對問題來說是否合適?
- 它解決了問題嗎?
以這些作為衡量標準,你會快樂得多。
— By Philip Nelson