Justin’s Blog
Web developer, I love this game.
设计模式,学习笔记
November 9th, 2007 by Justin
这段时间参加培训,内容是设计模式。具体什么是设计模式,究竟有哪些设计模式,大家GOOGLE一下估计都有。
设计模式其实是一些被公认的解决方案,在团队合作开发、可扩展性、松偶合性、降低复杂度方面有两好的表现。
课程的一开始,老师就说,设计模式并没有对错,只有适合与否。很多的书中,都讲哪个模式怎么怎么好,要么说哪个模式怎么怎么不好。其实应该辨证的来看。。。。哇卡卡又上升到哲学了。还是言归正传。
在程序设计的过程中,面向对象的思想常常被误解,并不是用了类和实例就是面向对象了。面向对象是整个系统以行为驱动的,高度的封装,松偶合。其实说来说去就是这么点,关键在于这个高度高到什么程度。这并不仅仅是统一接口这么简单,对于各种实例的管理、创建都有一个中间件。这个中间件在各个设计模式中有不同的名称,例如:工厂类、虚工厂类、build、适配器等等。
这两天的学习,和同学们的讨论,得出了一些共识。
- 一切模式的根本是工厂模式。
- 采用不同的模式,很重要的目的之一是降低维护、交接、沟通成本
- 设计程序的时候,把结构事先设计好,免得再用这些个中间件来包装LJ代码。
我想到了我们的AE框架,当我还是一个懵懂的少年,经过成长,经过和TBRA的融合,经过和5年前的JS代码的合并,AE框架已经是有着多样接口,多样调用方式的一个框架,其实是不利于使用的。接下来我要做的一件事情是把这些东西封装一下,让以后的产品都更加适合团队开发。
最后,我自己认为,其实在业务模块之间,或者是不同产品之间,设计模式尤其重要。而在一个模块内部,硬编码可以降低开发成本,甚至由于代码量比较少,硬编码还能方便后人的阅读和理解。
非常欣赏老师的一句话:代码即是文档。(绝对经典,体现了设计模式的重要性)
Posted in Web Development
2 Responses to “设计模式,学习笔记”
Justin | December 26th, 2007 at 6:57 pm
写代码肯定睡不着,也就可以理解为提神了
- – 弱弱问是不是困了就写代码提神的…够高度吧…