设计模式小结

Q:一定要设计模式吗?
A:设计是为了封闭变化,若是个项目确定以后不需要扩展,那么随便怎么干都行。
若不是这样,至少保证当前项目中会扩展的地方进行设计
Q:简单的例子
A:MVC是最简单的例子。把它发扬光大就不错了。通常的做法是一定要把V分开,MC视情况而定。比如今天我们使用GUI作为渲染,下一个版本可能使用hge,cocos2d,u3d等等,最大程度的保留原来功能的做法是把MVC精心的加以区别。
Q:最困难的地方是什么
A:对项目的需求认识不足是最困难的地方。项目一开始不一定会设计得很完善,但是可以重构,通过重构来一步步的达成目标,任何项目都是这样循环的,若是没有这样的过程了,则此软件的生命周期也应该结束或是趋于真正的稳定了。
Q:使用使用设计模式以后的坏处是什么
A:坏处是原来可以直接搞定的事情需要转个弯了,会增加调用和代码。而且降低一定的效率。(不难理解:因为增加了调用的代码,会多一层调用开销)。但是当有一天你发现这样做是完全物超所值的时候一定会有惊喜。坏处举例:

// 无模式的代码
if (loginok) { Banner banner = Banner.new() banner.showMsg("登录成功!") }

// 有模式的代码

if(loginok) { m_face.showMsg("登录成功!") }

区别在于一个直接调用UI进行显示,另一个调用一个叫做face的中间类
这个face里面再实现UI的操作。
当我们只需要命令行的时候face接口可以仅仅输出。
当我们需要界面的时候face中可以实现界面输出。

建议:当我们需要公共模块的时候,尽管使用设计模式,它会让你事半功倍。

你可能感兴趣的:(设计模式)