用好设计模式,就要抓住设计模式的精髓

 设计模式的提出已经有很长一段时间了,在很多项目中我们已经潜移默化的使用了这些设计模式。不管我们采用java还是c#开发,都是基于一个框架或者一些组件来进行。这些框架和组件都是基于一些设计模式来制作的。虽然我们根据感觉自己在开发的时候,只需要填空式的做一些内容,但其实也是在某些模式的基础上,给了我们这种易于扩展的便利性。
因此有时候我们发现,框架都已经帮我们做好了,设计模式中提到的那些模式在我们实际的开发中好像没有了用武之地。
但其实我们目标不能仅仅停留在书本上提到的那些模式,或者基于某种语言实现的模式。我们要从设计模式的出发点来看待,从其根本来考虑并解决平时遇到的问题。
首先一点,设计模式最关键的是处理“变化”,所有这些模式都是围绕如何适应“变化”而展开的。对于不同的“变化”情况,将其控制在某个变化点。设计模式应该说是我们处理变化的某个约定,也就是说对于某种变化情况,我们怎么设计,将来的影响是最小的。然后我们约定了这种设计方式,这样当变化到来时,我们就知道怎么去实现他。
设计模式另外一个关键是面向对象的实现方法,设计模式就是利用面向对象的抽象、继承、多态、封装这些特性来实现的。因此我们抓住了设计模式的出发点,再加上面向对象的技术和手段,我们就能真正的理解设计模式,并在项目中活用设计模式。
现在的项目开发比以前有了更多的特点:业务需求变化更加频繁,需求变化涉及的面也更加广,从流程、逻辑甚至数据结构,都可能会发生变化;前端用户操作易用性要求高,特别是互联网的发展,网站提供的各种简便的、人性化的操作,也进一步增强了用户对管理系统的要求,性能、易用性、美观都是当前前端的要求。
基于以上的特点,我们要在设计上,从一开始就考虑这些变化情况。在实现上,我们设计并考虑,流程变化时,我们的变化点在哪里、逻辑变化时变化点在哪里,数据结构变化时,变化点在哪里。在项目实现时,做一个通用的约定。前端js虽然不是完全面向对象的,但是我们也可以按照面向对象的技术来制作我们的js类库。利用这些特性,我们来处理界面样式的变化、布局的变化、输入方式的变化、检验逻辑的变化等。
虽然一般的web信息化项目很难体会到使用设计模式的价值,但是我们在制作产品类的软件时,却发现设计模式是相当的重要。因为产品是需要不断升级的,在升级的过程中除了增加功能外,还要进行重构工作。重构其实就是用更加适合的模式来满足现有的功能。
附件是关于书本上的一些设计模式的介绍,单独拎出了每个设计模式的意图,根据每个设计模式的意图,我们才能真正体会其适用的场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值