提到设计模式,我们会经常这样听说:"我也看过很多的设计模式,但在实际的项目中从来没有用过"。这的确是我以及很多人遇到的情况,那些设计模式都能看懂,但就是在项目用不到,总感觉纸上谈兵,落实不到我们具体的项目上。
我的个人观点:
(1) 对设计模式的理解还不够深入
首先我们要对设计模式所要解决的问题要理解透彻,即什么样的场景适合用这个设计模式。然后就是这个设计模式是如何解决的?解决方式的亮点在哪里?如需求增多时,如何更好地扩展。设想一下,给出一个设计模式,你闭上眼睛能完整的说出它的适用场景和解决方案吗?能给出相应的案例吗?能结合具体的案例来谈谈吗?而我们大部分仅仅是能看懂,完全还没有转化成自己的知识。
(2)做实际项目时缺乏抽象
即使你对设计模式的理解还可以,然而在做实际的项目时,我们几乎是将这些设计模式完全抛之脑后,以临时业务解决方案匆匆应对不断增多的需求。缺乏对需求不断增多的前瞻性,缺乏从实际业务中进行抽象提取出通用的模式,进而出现设计模式适用场景的雏形。
我个人的努力方向:
(1)看设计模式的书籍
看一些经典的设计模式的书籍,最重要的是希望不要走马观花,要细细品味,然后博客记录,加深理解,乃至根深蒂固。
多阅读框架源代码,框架源代码中使用了很多的设计模式,我们要学习学习,他们是如何使用的,如何来解决扩展性问题来应对复杂的需求。
(2)在做实际项目的时候,多进行抽象性的总结,不要让杂乱无章的实际需求浑浊了我们的代码,从杂乱的需求中找到问题的根由和本质。
总之,代码能否成为艺术,关键就在于我们采用什么样的态度来面对他们。希望能够与君共勉。
我的个人观点:
(1) 对设计模式的理解还不够深入
首先我们要对设计模式所要解决的问题要理解透彻,即什么样的场景适合用这个设计模式。然后就是这个设计模式是如何解决的?解决方式的亮点在哪里?如需求增多时,如何更好地扩展。设想一下,给出一个设计模式,你闭上眼睛能完整的说出它的适用场景和解决方案吗?能给出相应的案例吗?能结合具体的案例来谈谈吗?而我们大部分仅仅是能看懂,完全还没有转化成自己的知识。
(2)做实际项目时缺乏抽象
即使你对设计模式的理解还可以,然而在做实际的项目时,我们几乎是将这些设计模式完全抛之脑后,以临时业务解决方案匆匆应对不断增多的需求。缺乏对需求不断增多的前瞻性,缺乏从实际业务中进行抽象提取出通用的模式,进而出现设计模式适用场景的雏形。
我个人的努力方向:
(1)看设计模式的书籍
看一些经典的设计模式的书籍,最重要的是希望不要走马观花,要细细品味,然后博客记录,加深理解,乃至根深蒂固。
多阅读框架源代码,框架源代码中使用了很多的设计模式,我们要学习学习,他们是如何使用的,如何来解决扩展性问题来应对复杂的需求。
(2)在做实际项目的时候,多进行抽象性的总结,不要让杂乱无章的实际需求浑浊了我们的代码,从杂乱的需求中找到问题的根由和本质。
总之,代码能否成为艺术,关键就在于我们采用什么样的态度来面对他们。希望能够与君共勉。