发表评论
也推荐:Head First Design pattterns
我对模式是停留在只听说的层面上。
从没有系统的看过一本关于模式的书,在工作中也从来没有用模式进行过设计或者开发。
漂过,顶一下.....
模式只是给一种代码结合抽象起个名......
个人感觉学习模式的效果不是立杆见影的
如要精通
得先受其熏陶,身为设计模式之奴,程序皆套用各模式,直至滥用,身受其害
然后一日顿悟,反身为其主
终于参悟其实设计模式 不过是让程序在现在及未来 给我们减少工作量的一个知识...
这是小弟见解,现处于,身受其害那个阶段
Head First Design pattterns 非常不错
等代码玩到一定程度在不停重构过程中自然会发觉自己的代码开始需要点什么或者从自己的代码中发现和提炼出了一些更抽象的东西,这个时候才是开始学习和掌握设计模式的时候,不然都是扯淡,最多不过只会穷白活,亲身体验过这种感觉,连O都没O明白的去扯设计模式,只能用无语来形容……
设计模式可不是靠写两篇文章就能搞清楚的,要靠平时不断的重构,谁一开始就能写出完全符合设计模式的code,那简直太厉害了。反正我写不出来,我一般都是重构一两次之后,才真正体会到设计模式的重要性的
虽然说自己慢慢体会确实的结果往往确实是和设计模式不谋而合。
但是如果能预先简单了解一下设计模式,是不是会让这个体会的过程更短呢?
设计模式只是起的只是一个引导作用,能不能用上还需要自己的实践。
正因为模式是需要自己体会的东西才会有这么多相关的随笔。
有总比没有强吧,特别对于不容易入门的东西,多一点启发加上自己的思考进步就快。捧着设计模式一书看2年可能能看懂,为何不多看一些各种随笔心得,配以设计模式一书一起看,学习速度更快。
@lovecherry
csdn中的人生豪迈是不是您?
#16楼 [
楼主]2007-10-06 17:44 |
@lovecherry
你的“Asp.net第一步”,我看了不错。
我还是那句话,针对不同的等级的读者,出不同等级的博文。
希望有高品质的“博”在cnblogs进行发布。
顶
心里话
在反问别人的同时,先要问问自己,想想自己是哪个水平?
设计模式确实不适合初学者而且需要一定的内功,但是我看包括楼主在内的一楼到15楼,正是需要仔细揣摩设计模式的时候,尽管你可以轻视别人的水平.
哎,不就是做了两三年程序员吗?!
支持 LoveCherry!
博主的问题的确很尖锐, 很深刻, 相信在博主眼里,很多某方面的文章的确含量有限, 就连不才我, 也常常浪费时间在乱七八糟的文章上面, 深有同感.
一枝独秀不是春, 百花齐放春满园, 有牡丹玫瑰, 有月季芍药, 也有总多不知名的鲜花绿草才是博课园不是? 红花也需绿叶伴,优秀的人, 优秀的文章都不可避免的是少数. 新人还有普通的人写出来的文章自然相当一般, 价值不高, 特别是在高人眼中:).正是如此, 所以高人更加应该勉励, 应该提点. 士别三日,另当刮目.
尊重人家的一得之见, 给人人空间就是给自己空间, 我想这才是有容乃大. 不过文章毕竟是给别人看得, 仁兄们应该力求精益求精.
写一篇文章比看一篇文章需要花更多的时间。
如果初学者不把自己的学习心得进行分享,高手又没有时间写文章分享的话,那么我们看什么呢?即使有些内容是错误的,我觉得能分享出来就值得鼓励。
有的时候看到首页发了GridView的文章,然后评论一片说这种文章不要拿出来了,就分享来说他错了吗?对有些人来说GridView的文章是不用看了,对初学者来说正需要这个实用的东西。每个人关注的层面不同,开宝马的没有必要歧视在自行车行挑选自行车的学生。
@勇敢的心
我怎么感觉楼主除了前面几行说的是目前写设计模式的人比较多以外,其他地方更多的是谈如何给这些文章分类呢
@niu
不知道您从何看出1-15楼轻视别人技术了?
只有非常同意 [未注册用户] 听着不怎么舒坦外,我觉得其他人的除了顶顶顶那个,都在谈论设计模式的学习方法亚,您这是哪里的脾气呢?
@lovecherry
能拿出分享精神来那就应是好样,学习肯定是一个从肤浅到深入的过程,再说我看了您的设计模式的文章,感觉写的非常好,也挺深入的。支持你继续写下去。设计模式是一个要求内功的武林秘籍,没有修成九阳神功的,都需要加强内功修为,学习和实践都是途径,支持你,希望看到更精彩的设计模式系列
#23楼 [
楼主]2007-10-06 19:39 |
@niu
请仔细理解,我写文章的意图,谢谢。
同意“jillzhang "的说法
--------------------------------------
在反问别人的同时,先要问问自己,想想自己是哪个水平?
哎,不就是做了两三年程序员吗?!
niu
--------------------------------------
这种已经说明了你此时的心态和你的阅力。呵呵
努力吧
#24楼 [
楼主]2007-10-06 19:41 |
@勇敢的心
一枝独秀不是春, 百花齐放春满园, 有牡丹玫瑰, 有月季芍药, 也有总多不知名的鲜花绿草才是博课园
---好句
一波人过来,留下来一堆入门话题和设计模式的文章,走了...
又一波人过来,继续入门话题和设计模式,走了...
如此循环往复,仅此而已...
此文我不同意!有炒作嫌疑!
1.一些朋友写这个主题,是为了加深自己印象,并不是给别人看的!
2.一些朋友写这个主题,是偶有所感,并不是一定在工作中经常用到,才写出来
3.至于初学者,学习步骤是这样的:
先到书店买一本书,粗粗看一边,并不一定全都明白。
接下来,要品!
然后,看看GOF的原版
接着,再把你的书看一边,同时google一下其他人的心得——blog的作用体现出来。
最后,最好是在你的项目中用一下
设计模式的最高境界,是组合+聚集的灵活使用,是开闭原则和面向接口编程的把握,并不仅仅是那23个模式,还有很多其他模式在其他书上,有兴趣的人可以去研究。
楼主此文不妥,建议收回,说得不客气些,你算那棵葱啊,在此大放厥词!
to LZ,关于这个帖子,1、感觉有点酸;2、没有意义;
to 包建强,“楼主此文不妥,建议收回”赞同!
还有个建议:对于这种有争议的帖子,LZ最好设置成不允许匿名留言更有说服力一些
@jillzhang, 智者见智. 你说是模式的分类, 你是对的,我赞同. 不智者见不智, 我也看到的是标题:"众多设计模式话题,到底有必要吗?", 标题有可能是全文的总纲吧, 呵呵, 可能是我的不智:“话题总多是否必要?”
其实千言万语,一言以蔽之, 我想说的,无非就是“我不同意你的观点, 但是我尊重你说话的权利“。 捍卫说不上, 但是尊重是最重要的, 也是最起码的。
@北溟鱼逍遥游
仔细读了一遍,还是感觉楼主本意不在于反对大家写这种类型文章,否则最后给出一个推荐读物做什么?可能是标题与开篇的言辞犯了众怒,我开始读的时候,也一样想法,读到后来才发现其实楼主也是一个俗人,也在写设计模式的文章,只是想把自己弄成另类,吸引大家眼球而已
楼上的,那本书我看过,讲的并不全,而且画太多,这要看NET设计模式的书,我读过举得不错的,以下书参考:
C# 设计模式
.NET设计模式
NET2.0模式开发实践
Visual Basic.NET设计模式
#33楼 [
楼主]2007-10-06 22:20 |
@jillzhang
也在写设计模式的文章,只是想把自己弄成另类,吸引大家眼球而已
----我没有写什么设计模式的文章。不好意思,您搞错了。眼球是大家伙自己的希望控制好,谢谢。
#34楼 [
楼主]2007-10-06 22:25 |
@Justin
接受你建议,也许确实看者没有明白我的意思,或者我的标题是有点。
#35楼 [
楼主]2007-10-06 22:39 |
@包建强
说得不客气些,你算那棵葱啊,在此大放厥词!
-----请你说话呵呵,哎。。
“你算那棵葱啊”这种话希望等你一定沉浮时再说,好吗?
幸好您不是资深工程师。。。
。。。是为了加深自己印象,并不是给别人看的!
-----这些语句好像在说你自己吧。
我看了你的开源地带。你的许多文章都是以笔记为标题的。是有点纪实自我的感觉。
Head First Design Patterns是一本获奖的书籍。当然众口难调吗。
当然感兴趣的读者也可以看看"包建强"推荐读物
C# 设计模式
.NET设计模式
NET2.0模式开发实践
Visual Basic.NET设计模式
我想我们应该允许大家对于同一问题存在不同的看法.1>没有足够的经验,写设计模式这样的文章出来,可能的确有点不妥,但是也不能一概而论,有人为了记录自己学习的过程便于以后查看,有人可能是为了分享自己的感悟等等,无能目的是什么,只要用心去写,负责去写,至少说精神可嘉;大家也只有积极分享自己的成果,学习别人的成果经验和教训才能一起进步嘛.2>是否可以考虑在博客前写上适合阅读的人群,自己写的目的,以方便他人过滤信息.3>博客园更新时间很快,对于已经有的可能不容易找到,是否可以进行必要的分类和整理.4>以上也谨代表个人观点,有不当之处,敬请大家谅解.
呵呵, 我想大家才疏学浅, 自己心里都明白, 不过LS这个不喜欢谁就穿人家马甲顺便侮辱之的行为, 感觉有点不地道.
另外不知LZ指的是节前的争论还是最近的设计模式文章, 这次节前的讨论其实和设计模式无关. 设计模式是在实现阶段具体如何做的学问, 而这次其实核心在于如何"建模", 我个人推荐小生的文章. 如果非要扯上设计模式, 我只能说, 很多学问内在的道理是共同的, 以设计模式所蕴含的思想, 反思建模的过程, 乃至对其它问题的思考, 不无裨益.
承蒙dudu看的起, 把我当做了起头折腾的, 其实我原文的意义, 确是与这次争论相反. 什么领域建模也好, 设计模式也好, 在我看来, 如果不首先培养如何看待事物的基本能力和扎实的编程基本能力, 说句不中听的, 就我个人的经验来看, 根本是瞎玩深沉. 比如你说的设计模式, 如果光看懂个形式, 实际上很easy, 其中22篇实际上要碰到需求, 然后反复琢磨才体会的到; 但是其中有一篇讲解释器的, 真正体会, 就需要至少一点点编译原理的基础功, 何时应用, 又强调语言对软件系统发挥的作用的理解与定位.
我开始也不喜欢见各种无意义的争论,不过等到争论激烈以后, 尤其是小生的文章和思归的出现, 我个人感觉又学习了不少东西. 从我的角度看, 我缺乏正规的经验和训练, 很多东西他们一说出口, 对我来说, 有一种找到家的感觉, "原来我这个想法和某某是对应的啊", 一下子又清晰了不少. 之前其他人的争论, 对我而言就成为了抛砖引玉, 虽然也经历了烦躁, 不过终于没白关注这么些天. 那么这个争论, 难保不对其它人有用呢?
LZ推荐的书不错, 用于入门太好了, 几年前我也是在china-pub上买了英文版, 回头发现在读DP95容易多了. 至于你说的UML, 说实话有点基本概念就够了. L嘛, 主要是用于交流的语言. 说UML是什么工具, 不敢苟同. 形式逻辑的东西, 用大白话, 照样能表达的很好, 不过这就要看各位博主的语言能力了(似乎不是那么可靠哈); 从这个角度看, 用UML统一一下确实不错, 不过UML的作用在我看来也就仅止于此了.
所以呢, 我的想法是, 凡事可以提出自己的想法, 不过不必过于上纲上线, 尤其是说不准就对谁有益呢. 倒是你说的, 对于各个水平的读者, 如何有个正确指引, 确实需要认真对待, 大家不妨都想想办法, 毕竟敢于说, 就得对说的东西负个责任, 也许各位博主很难误导一个已经有成熟想法的, 但是影响了后来人, 就不是那么好了 :)