软件项目的公理---变化必然存在

软件项目的公理---变化必然存在

 

Author:zfive5(zhaozidong)
Email:zfive5@163.com

 

今天又一次回顾设计原则,记得看《敏捷软件开发》还是在刚工作时我的项目经理告诉有这本书,最近又一次翻这本书,越发体会出“酒还是沉得香”。

 

 

 

关于设计模式和设计原则各大书籍讲的很多,估计只有写书的人才有深刻体会,前几天给项目组工作5年的同事聊天(也不算短了),看他一脸茫然样子,很是绝望。

 

  • 责任单一原则----其实更多的是在应对变化而产生的,如果预计在不远的将来没有变化的可能(但现实往往是相反的),也就没有必要把原有的设计搞得乌烟瘴气了,毕竟现实是简单,往往复杂在于人的想法。

 

  • 开闭原则----其实也在面对变化,为了将来变化达到我们认为的最小,所以用扩展应对变化,而在不伤害已有的实现,毕竟为它们已经付出了巨大的花销和努力。

 

  • 里氏替换原则----子类可以替换父类。之前本人一直没有理解这个原则的内涵,这些天又翻了《敏捷软件开发》之后,才发现它也是耐人寻味的。往往在刚开始使用面向对象的语言时,偏见的认为只要有继承,就是面向对象,结果往往达到的效果----用的面向对象之形,行的是面向过程之实。

 

  • 依赖转置原则----这个之前也写过关于它的文章,只是补充一下,如果没有依赖转置,我们就不能说他们精通C#和Java,其实面向对象的灵魂就在其中,一些类库使用才是皮毛,高层依赖底层,要转过来变成高层和底层都依赖抽象,从而让高层和底层的耦合达到最低。

 

写到这里,又想起了《冒号课堂》,好书呀。

 

 

这些原则性东西就应该像几何学里的定理,而真正推导出它们的公理就是---变化必然存在。当然没有变化的假设可以推导出软件设计中的“非欧几何”了。

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值