不論使用哪一種語言開發,寫出易懂易讀易維護的代碼都是很重要的事情。而在寫程式之外,如何有效迴避與開發無關的雜事或低效率會議則屬於 Clean Coder 的範疇,希望本文能夠提升讀者作為開發者的 "乾淨" 程度
「依賴反向原則 (Dependency Inversion Principle, DIP) 告訴我們,最靈活的系統是**『原始碼的依賴關係只涉及抽象不涉及具體...
「如果 SOLID 原則告訴我們的是如何將磚塊安排到牆壁和房間中,那麼元件原則就是告訴我們,如何將房間安排到建築物之中」 取自: Clean Architec...
「本章描述的依賴性管理度量,可以用來量測一個設計有多符合『好的依賴及抽象』模式。經驗告訴我們,依賴關係有好壞之分。這些度量並不完善,但是我希望你覺得它們有些用...
「首先,軟體架構師也是程式設計師,並持續是個程式設計師。永遠不要落入「從程式碼中撤離,專注於更高層次問題」的陷阱。他們不會這樣做!」 「軟體架構師是最好的程式...
「軟體架構就是畫線的藝術,我稱這些線為邊界 (Boundaries)」 「架構師的目標是盡量減少建置和維護系統的所需人力資源。耗盡人力資源代表什麼呢? 耦合...
「軟體系統是策略(Policy)的陳述。電腦程式是將輸入轉換為輸出的『策略的詳細陳述』」 「會因著相同的原因在相同時間變化的策略,處在同一層級,並且會隸屬於同...
「你的應用程式架構尖叫了什麼呢? 當查看最高層目錄結構和 package 中的原始碼檔案時,他們是否會尖叫『醫療保健系統』或『會計系統』或『庫存管理系統』?...
以服務為導向(Service-Oriented)的『架構』和微服務(MicroService)『架構』最近變得非常流行。原因包括以下幾點: 服務似乎彼此強...
「從架構的角度來看,資料庫是一個非實體 — 它與軟體系統架構之間的關係就像門把與你家的架構那樣」 「許多資料存取框架允許將資料庫的列及資料表作為物件在系統中傳...
「目前為止,所有建議無疑將幫助你設計出更好的軟體,這些軟體是由具有明確邊界、職責、依賴關係受控的元件所組成。本章的重點是要強調,如果不考慮實作策略的錯綜複雜,...