关于设计模式

摇撼大地 2016-08-24 08:35:29
想系统的学习设计模式。
有没有好的途径。或者比较简单易懂的书籍。
...全文
332 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiang_liu_ 2016-09-08
  • 打赏
  • 举报
回复
大话设计模式看完了 虽然比较囫囵吞枣 现在又再看head first 设计模式 觉得比大话设计模式稍微好点 易懂点 大话设计模式有的为了引出设计模式 会有的例子不太适当 反而造成理解偏差或错误
xiaha3 2016-08-27
  • 打赏
  • 举报
回复
一个没有复用需求的人, 这些设计模式只是个概念而已,就像大学的课程,学完了4年还得从coding做起!只有当自身有复用需求,才会理解这些模式,所以经历工程重构才是掌握设计的最好方法! 所以,如果软件公司招聘,一个是有工程经验的,另一个是没工程经验的,但学了设计模式,你说他招那个?想提升自身的水平,没有捷径!除非有好的老师亲自指导,另当别论 我再说一下设计模式,他只是个总结,看清楚,是总结,就像你长大了,你会爬,会跳,会跑一样,本身没有意义,关键是你长大的过程
摇撼大地 2016-08-27
  • 打赏
  • 举报
回复
引用 14 楼 xiaha3 的回复:
根本没有用!淘汰的东西!根本不用看!永远都不用看! 想长进就把自己的代码重构,复用!记住,是复用,重复使用!就这一条!!!!!!!设计的终极目标就是复用,你冲这个目标去,自然会降低模块之间的耦合,自然会单一职责,自然会依赖倒置。。。就会发现面向oo的设计,设计模式,都是自然而然的事情! 自然会用到高级语言内置的很多支持你复用的功能,反射,event,delegate,接口,泛型,attribute,Lambda Expression,多线程,消息,WCF,组件,甚至集成IDE的属性表,当你熟练使用这些,关于设计的思考就慢慢成为你的习惯,回头一看,呵呵,你也可以写本书
毕竟,知识也最好先复用吧,你说是不是。
摇撼大地 2016-08-27
  • 打赏
  • 举报
回复
引用 14 楼 xiaha3 的回复:
根本没有用!淘汰的东西!根本不用看!永远都不用看! 想长进就把自己的代码重构,复用!记住,是复用,重复使用!就这一条!!!!!!!设计的终极目标就是复用,你冲这个目标去,自然会降低模块之间的耦合,自然会单一职责,自然会依赖倒置。。。就会发现面向oo的设计,设计模式,都是自然而然的事情! 自然会用到高级语言内置的很多支持你复用的功能,反射,event,delegate,接口,泛型,attribute,Lambda Expression,多线程,消息,WCF,组件,甚至集成IDE的属性表,当你熟练使用这些,关于设计的思考就慢慢成为你的习惯,回头一看,呵呵,你也可以写本书
你说的没错啦。但是这自己趟水是不是太费力气了。借鉴着别人的经验,应该也会省力不少吧。我年纪不小啊,时间宝贵啊。
摇撼大地 2016-08-27
  • 打赏
  • 举报
回复
引用 3 楼 sp1234 的回复:
GOF的《设计模式》这本书是一个大坑,它过于八股,非常不自然,而且几乎所有的模式都用”雷人的“名字儿,以至于甚至有人硬要“戏说”设计模式,设计模式更适合戏说。 你应该正规地学习一些面向对象系统分析和设计的教材,例如25年前 Rumbaugh 所写的 OMT 专著()要比今天的绝大部分 OOAD 教程都好。或者现在的与 UML 核心相关的一些内容(但是 UML 中有 80% 都用不到)。 如果你没有正规学习OOAD,而去学习《设计模式》,绝对会被它误导。设计模式这本书应该在你过几年之后再看,参考一下那些编程小伎俩如何组织。但是不要用设计模式来学面向对象设计技术。 面向对象OOAD的专著,是根据软件工程的实践者的方法来写的,是按照一个正规的软件工程教程来写的。绝不是为了”戏说“什么而写的。所以你没有先学到好的基础功夫,却要练传说中的九阴白骨爪,最后怀揣”葵花宝典“却一直看不透。 《设计模式》这本书并没有软件工程的正规内容,并不是软件工程教程。GOF并不懂事件驱动,不懂依赖倒置等等面向设计基本原则,如果四人帮懂这些,那么设计模式只要4、5个模式就足够了。
嗯。有种这个感觉,今天开始看了大话设计模式,觉得设计原则下,才产生了许多的设计模式。
wanghui0380 2016-08-27
  • 打赏
  • 举报
回复
引用 16 楼 qq_20324803 的回复:
毕竟,知识也最好先复用吧,你说是不是。
我以前做过一个比方就是下棋,国象有所谓的23杀招“挂角马,天地跑,反宫马,卧槽马,双车错---------”,可以说你只要赢了棋,最后的必杀都逃不开这23杀招 问题是你记下了有什么用呢??没用,我刚下第一步,你就说,嗯,这盘可以用天地炮??不可以把? 所以下棋本身是策略,变化和平衡计算。 我建议你先学“编程范式”,“编程原则”
xiaha3 2016-08-27
  • 打赏
  • 举报
回复
根本没有用!淘汰的东西!根本不用看!永远都不用看! 想长进就把自己的代码重构,复用!记住,是复用,重复使用!就这一条!!!!!!!设计的终极目标就是复用,你冲这个目标去,自然会降低模块之间的耦合,自然会单一职责,自然会依赖倒置。。。就会发现面向oo的设计,设计模式,都是自然而然的事情! 自然会用到高级语言内置的很多支持你复用的功能,反射,event,delegate,接口,泛型,attribute,Lambda Expression,多线程,消息,WCF,组件,甚至集成IDE的属性表,当你熟练使用这些,关于设计的思考就慢慢成为你的习惯,回头一看,呵呵,你也可以写本书
lyshrine 2016-08-25
  • 打赏
  • 举报
回复
有一本《大话设计模式》写的不错,不枯燥
threenewbee 2016-08-25
  • 打赏
  • 举报
回复
引用 10 楼 she6600 的回复:
可以看看大话设计模式,但是sp1234说的很对,刚开始编程,看设计模式有些早,最好过一段一年之后再看,这样效果才好 你可以看看网上的设计模式 http://blog.jobbole.com/78138/
你的观点和sp的根本都不搭,你说他说的很对,那你说的又是什么
  • 打赏
  • 举报
回复
可以看看大话设计模式,但是sp1234说的很对,刚开始编程,看设计模式有些早,最好过一段一年之后再看,这样效果才好 你可以看看网上的设计模式 http://blog.jobbole.com/78138/
  • 打赏
  • 举报
回复
个人推荐还是 head first,或者微软官方那个叫啥中的有GOF一系列设计模式的讲解视频
  • 打赏
  • 举报
回复
GOF的设计模式应当说是 在设计模式思想下, 提炼出来专门针对一系列场景的处理方案,属于套路之流,但套路归套路,在套路的途中,才能更好地理解思路
秋的红果实 2016-08-25
  • 打赏
  • 举报
回复
先多参与实践,以后慢慢接触模式,所谓模式是前人开发系统的经验总结,个人觉得不论哪种模式,只参考,不套用
摇撼大地 2016-08-25
  • 打赏
  • 举报
回复
引用 3 楼 sp1234 的回复:
GOF的《设计模式》这本书是一个大坑,它过于八股,非常不自然,而且几乎所有的模式都用”雷人的“名字儿,以至于甚至有人硬要“戏说”设计模式,设计模式更适合戏说。 你应该正规地学习一些面向对象系统分析和设计的教材,例如25年前 Rumbaugh 所写的 OMT 专著()要比今天的绝大部分 OOAD 教程都好。或者现在的与 UML 核心相关的一些内容(但是 UML 中有 80% 都用不到)。 如果你没有正规学习OOAD,而去学习《设计模式》,绝对会被它误导。设计模式这本书应该在你过几年之后再看,参考一下那些编程小伎俩如何组织。但是不要用设计模式来学面向对象设计技术。 面向对象OOAD的专著,是根据软件工程的实践者的方法来写的,是按照一个正规的软件工程教程来写的。绝不是为了”戏说“什么而写的。所以你没有先学到好的基础功夫,却要练传说中的九阴白骨爪,最后怀揣”葵花宝典“却一直看不透。 《设计模式》这本书并没有软件工程的正规内容,并不是软件工程教程。GOF并不懂事件驱动,不懂依赖倒置等等面向设计基本原则,如果四人帮懂这些,那么设计模式只要4、5个模式就足够了。
我也这么想过,是不是会有点早。面向对象的设计你觉得需要掌握到什么程度才算学好了基础呢?
摇撼大地 2016-08-25
  • 打赏
  • 举报
回复
引用 8 楼 starfd 的回复:
GOF的设计模式应当说是 在设计模式思想下, 提炼出来专门针对一系列场景的处理方案,属于套路之流,但套路归套路,在套路的途中,才能更好地理解思路
其实现在编程的时候我也让自己多用用面向对象的思维去写代码。但是感觉提升不大。
threenewbee 2016-08-24
  • 打赏
  • 举报
回复
C#作为一种比较先进的语言,大部分gof的设计模式都不需要。
software_artisan 2016-08-24
  • 打赏
  • 举报
回复
不要想着设计模式,要思考问题的本质。抽象问题,用优雅的思路解决问题,然后,你会发现人家说的设计模式你早就在用了。 其实,设计模式就是一些解决问题的套路而已,并没有什么高深的,了不得的东西在里面。 友情提示:生搬硬套设计模式还不如不用设计模式。因为这个世界上,问题是多样的,没法用几个简单的模式来完全描述。如果你不具备分解复杂问题为简单问题的能力,设计模式根本就用不上,如果用上了,那一定是在乱用。这样非但不能解决问题,反而制造了更多问题。
  • 打赏
  • 举报
回复
GOF的《设计模式》这本书是一个大坑,它过于八股,非常不自然,而且几乎所有的模式都用”雷人的“名字儿,以至于甚至有人硬要“戏说”设计模式,设计模式更适合戏说。 你应该正规地学习一些面向对象系统分析和设计的教材,例如25年前 Rumbaugh 所写的 OMT 专著()要比今天的绝大部分 OOAD 教程都好。或者现在的与 UML 核心相关的一些内容(但是 UML 中有 80% 都用不到)。 如果你没有正规学习OOAD,而去学习《设计模式》,绝对会被它误导。设计模式这本书应该在你过几年之后再看,参考一下那些编程小伎俩如何组织。但是不要用设计模式来学面向对象设计技术。 面向对象OOAD的专著,是根据软件工程的实践者的方法来写的,是按照一个正规的软件工程教程来写的。绝不是为了”戏说“什么而写的。所以你没有先学到好的基础功夫,却要练传说中的九阴白骨爪,最后怀揣”葵花宝典“却一直看不透。 《设计模式》这本书并没有软件工程的正规内容,并不是软件工程教程。GOF并不懂事件驱动,不懂依赖倒置等等面向设计基本原则,如果四人帮懂这些,那么设计模式只要4、5个模式就足够了。
我叫小菜菜 2016-08-24
  • 打赏
  • 举报
回复
花钱报班吧。只要肯花钱,手把手教,最简单

7,765

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧