Java 程序员们,你们的设计模式知识怎么从书本走向实践的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 成的内容
FatGhosta
V2EX    程序员

Java 程序员们,你们的设计模式知识怎么从书本走向实践的?

  •  
  •   FatGhosta 2014-08-07 15:46:59 +08:00 4514 次点击
    这是一个创建于 4087 天前的主题,其中的信息可能已经有所发展或是发生改变。
    觉得自己也看了很多设计模式的东西,但是完全用不起来啊感觉。
    是我没理解透彻?
    还是我的工作太偏向业务了?

    你们的设计模式知识怎么从书本走向实践的?看别人源码?
    6 条回复    2014-08-08 09:48:31 +08:00
    incompatible
        1
    incompatible  
       2014-08-07 16:29:14 +08:00   2
    多读源码,无它

    尤其是当你读到到一种模式被应用在数种不同场景时,会有一种豁然开朗的感觉
    比如,当你弄明白了servlet filter的工作原理,再去看aopalliance的MethodInterceptor与MethodInvocation,会发现它们的设计如出一辙,心中大呼“卧槽!这就是chain of responsibility”

    看的多了自然就会用了
    DRcoding
        2
    DRcoding  
       2014-08-07 17:33:27 +08:00   1
    想要实现某个功能结构或了解底层代码,看所谓的框架的源码的时候,发现原来我擦,它这里是用这种方法是这么处理的,虽然此时根本不知道这叫啥模式~~

    遇到某个项目,要自己去架构的时候或者有棘手的问题的时候,在寻求解决方案的时候,突然想到以前看到的 “XXX模式”,“XXX方法” 好像是可以解决的~然后问题就被解决了。
    sampeng
        3
    sampeng  
       2014-08-07 17:38:22 +08:00   1
    多看代码,写的每行代码都要思考。。所谓思考不是按照逻辑去考虑。是跳出来,站在最抽象的位置考虑。几年以后,设计模式就是个笑话了。。
    设计模式只是个名词,核心是解决问题。你拿着锤子找钉子是没有意义的。因为你不是真的懂了这个设计模式所能解决的问题。。。。换句话说。。你是坑掉少了。多掉几个设计上的坑。自然而然就用上了。
    重构干嘛的?大多数情况是用来。没有设计思想的代码,改起来简直要了老命。重写。加入设计思想。完事
    plprapper
        4
    plprapper  
       2014-08-07 18:29:05 +08:00
    模式是总结出来的,从实践中来,到实践中去。

    如果你的 “听说读写” 代码量没达到一个level 那就慢慢升级打怪吧。
    novoland
        5
    novoland  
       2014-08-07 18:48:30 +08:00
    从“过度设计”
    c742435
        6
    c742435  
       2014-08-08 09:48:31 +08:00
    看了设计模式之后才发现原来自己用过的方法有个名字。
    但是还是记不住什么名字。

    当你的程序足够复杂的时候,你就知道设计模式有什么好了。比如说MVC(准确的说MVC是几种设计模式的集合),我个人习惯写代码先从只有View写起,后来如觉得View太大,整合的逻辑太多,改起来费劲了,才把M和C拆出来。

    我说的这个程序是我个人的兴趣项目,所以想怎么写就怎么写。如果是公司的项目,还是一开始就上MVC好。但是这也导致一个问题,初入公司的新程序员发现这样非常繁杂,有很多本来简单的事情搞得复杂,以及某些逻辑不知道写在哪个类合适,也不知道MVC有什么好处。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     907 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 20:42 PVG 04:42 LAX 13:42 JFK 16:42
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86