CRTP
CRTP 全名 Curiously Recurring Template Pattern ,又被稱作 F-bound polymorphism ,F-bound quantification 中的一種形式。故事要先從型態轉型開始。A general function for ...
《K的技術學習筆記》——解耦合的設計概念:<Inversion of Control>
控制反轉(Inversion of Control)是一種解除class與class之間耦合的概念。在傳統的程式寫法中,當物件A需要物件B時,物件A需要自己制造物件B。若果套用了控制反轉(Inversion of Control)的概念,就會變成物件A不需要自己制做物件B,而是由第三方提供物件B給物件A。
《K的技術學習筆記》——良好OOP的設計原則:<SOLID Principles>(六)
Dependency Inversion Principle SOLID Principles的D就是依賴轉換(Dependency Inversion Principle)依賴轉換(Dependency Inversion Principle)用抽象觀念替代具體物件的關係。
《K的技術學習筆記》——良好OOP的設計原則:<SOLID Principles>(五)
SOLID Principles的I就是接口隔離(Interface segregation principle)接口隔離(Interface Segregation Principle)Client只依賴它所需要使用的方法。因此,以功能性去劃分及創建不同的Interface,再以組合形式創造class。
《K的技術學習筆記》——良好OOP的設計原則:<SOLID Principles>(四)
SOLID Principles的L就是里氏替換原則(Liskov Substitution Principle)里氏替換原則(Liskov Substitution Principle)sub-class必須能夠替換其super-class,並且不會出現問題。
《K的技術學習筆記》——良好OOP的設計原則:<SOLID Principles>(三)
SOLID Principles的O就是開閉原則(Open–closed principle)開閉原則(Open–closed principle)開放去被繼承,封閉去被改動。詳細說明就是這些已完成的class或function可以自由被使用或是擴展用途,但不可以直接修改,增加或減少當中的結構或是邏輯。
《K的技術學習筆記》——良好OOP的設計原則:<SOLID Principles>(二)
Single Responsibility PrincipleSOLID Principles的S就是單一功能(Single Responsibility Principle)單一功能(Single responsibility principle)只因一個職責而去作改變。
《K的技術學習筆記》——良好OOP的設計原則:<SOLID Principles>(一)
SOLID Principles剛作為Programmer時, 我自己只在意一件事, 就是完成老闆要求的工作。在沒有良好的導師教導和只求快速完成feature下, 結果就是只為能做到而去做, 並沒有考慮程式的結構和可讀性等要素。這樣會在往後的擴展, 維護和別人合作時出現大問題。