其核心原则:“开闭”。是想让程序拥抱变化。
老百姓的话就是:让软件商品与客户共同成长。
我对“开闭”是非常喜欢的。但思考却让我产生了疑问。它可能是永远也无法达到的目标。为什么呢?
关键还在于人类的认识过程是个不断深入的过程。请想,无论多高明的专业人员,有谁真能全面,深入,发展地把握客户呢?这个认识过程要达到“闭”的部分才会有“开”。这个闭的抽象是核心。任何项目都有时间限制,不会无止境地让你抽象下去。时间、人员水平,客户的配合都是不确定因素。项目在前进中是不断碰到“湍流”的。可能只有极个别的情况下才能达到完美。那也不算“开闭”的大功德吧?就算是关于接口的两个原则本身就是有冲突的(接口职责单一vs接口隔离)。
以上只是一个阶段性思考。可能会启发自己关注更有成效的思想吧。我想,很多人都把设计模式奉为圣经的。但开发不是为理论服务的,关于这点,没被什么东西洗过脑的人一定不会反对。