Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Design Pattern & UML  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 重读设计模式有感
jameszhang



CJSDN高级会员


发贴: 1594
积分: 111
于 2013-06-17 14:11 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
最近有点时间,所以看了下最紧迫要干的事,查了下竟然是重读设计模式,其实已经不知道看了多少遍,当然每次看都有不同的理解,这次看完怎么有种顿悟的感觉!?这种感觉比以前的要强烈得多。

解决了多个问题,如其中就有:过度使用设计模式,为什么会过度使用?怎么判断是过度使用设计模式?
我总结了下判断过度的标准:我们使用设计模式只有一个初衷,那就是简单方便,如果没有这个前提那就不要使用了,不然就成了脱裤子放屁,多此一举了。但是我们在看模式的时候发现他很麻烦,左继承右引用的,其实它在做一件事就是为了实现OOD里第一条定理OCP(Open-Closed Principle),当然也有为了固定模式应用的设计模式与OCP关系不大的如 Singleton,主要用于:保证一个类仅有一个实例,并提供一个访问它的全局访问点。这些模式应用单一,往往是刚接触就能掌握的,所以也是应用的最好的。那些复杂的模式是为了OCP,OCP为了使你的代码便于维护,所以好的程序,应用了设计模式,就是使得程序在后期便于维护。复杂的模式需要根据业务和系统分析来判断应用那种模式,比较难于驾驭,所以应用不当就会使程序不但没有维护简单,还会使得维护难上加难。
为什么会过度使用?是因为我们在编码时没有考虑OCP,而直接使用模式的结果。具体依据什么过度使用了什么模式,这个我还没完全想通。但是如果我们问自己在使用模式时如果没有跟OCP联系在一起考虑就应该是过度使用模式。
怎么判断是过度使用设计模式?当然是如果考虑OCP,根据Open的原则来使用设计模式就是正确使用了。当然这个使用过程是一个设计过程,就有熟练和不熟练,使用正确和不正确,这个就需要通过实践验证了。

这就是我最近读书的一点体会,希望先觉者拍砖,呵呵



"First they ignore u, then they laugh at u, then they fight u, then u will win

Mahatma Gandhi"


话题树型展开
人气 标题 作者 字数 发贴时间
6765 重读设计模式有感 jameszhang 741 2013-06-17 14:11
5214 Re:重读设计模式有感 jameszhang 319 2013-06-24 09:17
5289 Re:重读设计模式有感 ditty 130 2013-06-25 13:15
5346 Re:重读设计模式有感 jameszhang 430 2013-06-25 16:25
5500 Re:重读设计模式有感 jameszhang 180 2013-07-02 08:58
9763 Re:重读设计模式有感 九佰 23 2013-10-16 18:27

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2018 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号
客服电话 0592-8750026    客服信箱 714923@qq.com    客服QQ 714923