在很多计算机专业的课程中有一门课叫做设计模式,一听就感觉及其具有理论感,让人想起了混混欲睡的哲学课程和生涩难懂的编译原理课(这两个例子为小编主观感受,不排除有生动的编译原理课和有趣的哲学课)。而且这门课程不像java语言学习那样,可以直观的看到自己对语法的应用。所以很多小伙伴们就会发出这样的疑惑?为什么要学设计模式?学设计模式有什么用?

以建房子为例子,砖瓦工可以建起来一间方方正正的房子,就像程序员能进行代码开发一样。但是没有经验的砖瓦工可能建起来的房子里面有一堆房间,却没有一间厕所,又或者把厕所和厨房放在一起(虽然这很不合理,但是的确可能存在)。而老到的砖瓦工他能根据以往的经验,在一间房子内合理的布局厨房和厕所,这就是设计。程序员也是如此,新手程序员更多的想的是,如何简单的解决问题,所以他们可能在业务代码里面输出一堆渲染页面的代码,也可能因为编写过多的对象而将代码写得很复杂。而老到的程序员他懂得如何编写代码才能提高开发效率,减少代码冗余,让整个项目更加合理。这就是为什么广大计算机专业都有设计模式的原因了。
学习设计模式,有助于程序员更好地解决一个问题,有利于优化项目的结构,实现低耦合,高内聚的效果,有利于团队之间的协作编程,有利于增加代码可重用性和可维护性,代码更容易被他人理解和保证代码可靠性。因为有了设计模式,使得代码的编程可以实现工程化,才促使了软件工程这个行业的诞生。

所以,一个程序员懂不懂得设计模式,是对他境界的一种划分。懂得设计模式的程序员可以被称为工程师,而不懂设计模式的只能被称为码农。不过虽然广大计算机科班都有设立设计模式的课程,但这门课程并不是束于高阁。随着对设计模式的重视,互联网上也出现了很多优质的设计模式的学习资料。比如W3Cschool就提供了很多设计模式的教程。小编在这里整理了一个列表,想要学习的可以前去查看:
设计模式

大话设计模式

23种设计模式

JavaScript设计模式

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。