天下网吧 >> 网吧天地 >> 网吧行业 >> 网络追踪 >> 正文

设计模式有害论

2014-1-6不详佚名
:设计模式有害论

跟有经验的优秀程序员一起工作能让你学到很多东西,而其中我感觉最有帮助的一点就是学会了编程中的实用主义。

有学院背景是件好事,如果没有上过大学,我估计我的程序员仕途未必能赶得上现在的一半。但从另外一方面看,学院理论和市场之间存在阻抗失配,学生离开学校毕业进入职业社会,都带着一种被J2EE洗脑的纯洁的错觉,忘记了很多东西只有亲自动手才能学到——这就是为什么很多自学成才的程序员能够解除束缚,开发出伟大的具有革命性的软件的原因。

我曾经就是这样,我曾经熟记《设计模式》里的各种设计模式,并且试图在任何一个可以用的的地方使用它们。但是,当离开大学,开始在现实世界里编程时,我开始认识到一个事情:做“正确的事情?”并非是总能给你带来成功的途径。以我的观点,能证明这种现象的最大的一个例子就是JavaScript语言:虽然世界上有这么多的好的编程语言,为何一个像JavaScript这样的“四不像”语言会成为最流行和最通用的语言?(这个问题留给大家在评论里讨论)

回到设计模式的话题:设计模式是对重复出现的问题的好的、可重用的解决方案的范例。很好的东西,不是吗?它们怎么可能变成有害的呢?

问题并不是出在设计模式自身,而是我们的一种不加选择地到处使用它们的强迫症,总以为用了它们才是正确的编程。

这种思维习惯会导致你按图索骥,强行让问题去适应设计模式提供的解决方案,而不是它本该采取的方案,同样也会导致过度技术化和不必要的复杂,这些在将来都会导致项目受挫。

采用实用主义的态度,让设计模式在代码中自然的出现,不需要雕琢。你读过这些设计模式,你知道它们的存在,但你不需要特意的以它们为标准去实现一种解决方案。相反,凭借你的经验,这些模式会在你的代码里天然的形成,并适合你的问题,不带任何束缚。也许你甚至不知道这是什么模式,叫什么,这不重要,但如果你知道,你可以注释一下,这能帮助其他程序员更容易的理解,帮助他们明白你的代码在做什么而不需要阅读整段代码——因为你遵循了一种设计模式。

所以,我认为,懂得和熟悉设计模式很重要——就像是你应该经常去看看别人是如何写代码的,是如何用另一种方式解决问题的——但是,不要强迫在代码中使用它们。顺其自然,keep it simple, stupid!

本文来源:不详 作者:佚名

相关文章
没有相关文章
声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。文章是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。 Email:support@txwb.com,系统开号,技术支持,服务联系微信:_WX_1_本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行