[料理秘方] 深入淺出設計模式

筆記一下有關於 OO 相關的守則,以便隨時能複習。

SOLID

  • SRP (Single responsibility principle)
  • OCP (Open/closed principle)
  • LSP (Liskov substitution principle)
  • ISP (Interface segregation principle)
  • DIP (Dependency inversion principle)

找出程式中可能需要更動之處,把它們獨立出來,不要和那些不需要更動的程式碼混在一起。

寫程式是針對介面而寫,而不是針對實作方式而寫。

多用合成,少用繼承。(Has-a better than Is-a)

設計時,盡量讓需要互動的物件之間關係鬆綁。

類別應該開放,以便擴充:應該關閉,禁止修改。

依賴抽象類別,不要依賴具象類別。

極少化守則:只和你的密友談話。

好萊塢守則:別呼叫我們,我們會呼叫你。

一個類別應該只具有一個改變的理由。

相關資源

C# 指南
ASP.NET 教學
ASP.NET MVC 指引
Azure SQL Database 教學
SQL Server 教學
Xamarin.Forms 教學