"Software entities should be open for extension but closed for modification"
by Bertrand Meyer
"軟體需要可以延伸,而不該修改"
因此依照Open-Closed Principle所提的,系統應該透過增加新的程式碼擴充系統功能,而不是修改既有的程式碼,來增加系統功能,規避修改程式碼可能的後果。
實作起來,像是安裝套件一樣,每個插件都是獨立而不會互相牽連,同時不會改變原本系統的運作。
若能盡可能的使用OCP,將可避免牽一髮動全身的風險,減少不必要的麻煩。
沒有留言:
張貼留言