个人感悟
今天在继续学习了开放-封闭原则,越看越觉得,其实有些原则很相近,但是细细体会,又有大不同。
讲讲开放-封闭原则吧,大概的意思就是说,对于扩展是开放的,对于修改是封闭的。我们对于程序的设计应该是可扩展性的,来应对不同的需求。当然如果更改了需求,不能说完全不修改源代码,但是尽可能的少修改。
这里我学到了一个很好的概念,就是抽象的概念,先写一个抽象的方法,既然你更改了需求,那么我可以在不修改源代码的基础上,多添加一个抽象的实现类,这样只是添加一个实现类,客户端可以减少更改,甚至可以不更改。就实现一个新的需求。
做到可扩展,不更改。这个应该是开放-封闭原则的核心了。
2017.11.25补充
开放-封闭原则也被叫做OCP(The OPen-Closeed Principle)