万恶[变]为首

本文探讨了设计模式在软件开发中的核心价值——应对变化。通过理解变化的重要性,文章阐述了诸如封装变化、依赖抽象等面向对象设计原则如何帮助提高软件的可维护性和灵活性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这两天一直在看那个《Head first Design patterns》,看着各种各样的模式,理
解着各种各样的场景,看着看着,突然想到一个问题,这些模式为了什么,除了减少代
码外,还为了什么?漂亮,优雅,可维护性。那么这一切又都为了什么呢,答案只有一
个,那就是应对变化。
可维护性什么的,如果没有变化的话,那么还提什么维护性。如果不变化的话,那
么优雅简单的代码和丑陋的代码有什么区别呢,如果没有变化的话,那么好的设计和不
好的设计的区别不是很大了,当然了,不能拿最好的和最坏的作比较。一切需要的只不
过是快速实现而已,而不是其他的了,那么那些设计模式什么的,可能就不会出现,因
为一切的需要都已经变成快速开发工具了,需要一把最快的斧子,一个最快开发的工具
就可以了。那么什么MDA什么的,我想可以很快就被实现了吧。
可是世界不是那么完美的,就像太极中的阴阳鱼一样,有阴就有阳。变化出现了,
这个阻碍开发的最大祸首出现了,让人们开始思考,开始考虑语言本身,开始考虑程
序,开始考虑可维护性。考虑这些本来是功能之外的东西。一切的一切都开始围绕着如
何应对变化展开了。 Encapsulate what varies, Class should be open for extension
but closed for modification
, Depend on abstractions .Do not depend on
concrete class
, Programe to interface,not implementations,
Favor composition over inheritance等等着一些OO原则开始大行其道,开始被程序员
奉若圭臬。
那么是不是消除了变化就好了呢?当然不是,第一,如果没有了变化,那就意味着
商家就会跟不上社会的潮流,他们使用的系统是僵化的。或者是没有用的。 第二呢,
如果没有了变化,那么现在很多的程序员可能就已经失业了,那么软件业可能就不会像
现在这样繁荣了。第三,软件如果不变化那么就意味着死亡或者是濒临死亡的边缘了。
所以呢,我们要做的只能是拥抱变化(Embrace Change)这也就是最近敏捷编程
(XP)高喊的口号了,只有拥抱了变化才能使我们的软件不会死,害怕变化,不如拥抱
变化,与变化作朋友,只有这样,才能时时刻刻的感受着变化,应对着变化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值