我一直在学习越来越多的javascript;这是我工作的必需品。我们有一个使用大量javascript的web应用程序,而且我每天都会做越来越多的事情。我已经阅读了关于设计模式的点点滴滴,但是想知道是否有人可以给我一个简单而干燥的例子和定义。他们是否会对我有益?还是更高一级?JavaScript中的设计模式对您有帮助吗?他们究竟是什么?
8
A
回答
11
5
也有是在JavaScript中的book about classic design patterns。你可以从它的网站下载例子。
但是从我的经验,其obviuosly更难实现与JavaScript的大量项目。
7
其中最实用和易于使用的特定JavaScript的设计模式,我遇到的是Module Pattern,这是一种改性Singleton pattern说:“命名空间”相关的代码,并阻止全球范围内从混淆了变量和函数可能在复杂的页面中彼此冲突。
1
设计模式是与语言无关,我会建议你阅读关于这一主题的经典书籍之一。我最喜欢的是:
- 由Martin Fowler 企业应用 架构模式(http://www.amazon.com/Enterprise-Application-Architecture-Addison-Wesley-Signature/dp/0321127420)
- 设计模式:通过 可复用面向对象软件的元素的 “四人帮” (http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/ref=sr_1_1?ie=UTF8&s=books&qid=1229278937&sr=1-1)。这是一个经典之作。
但是,这些不是初学者的书籍,你可能会从许多网页资源和教程中获得更多的价值(维基百科有一些合理的解释)。
我自己的经验是,在JavaScript对象模型是麻烦一点比其他如PHP或Ruby和理解,因此,应用设计模式并不总是那么容易。像Prototype这样的库提供了使继承更易于使用的功能,这使得以OO方式编程JavaScript变得更容易。
我最近使用JavaScript来实现使用Active Record pattern原型,你可以了解更多关于在这里,如果你想: http://codeinthehole.com/archives/6-Active-record-javascript-objects-using-cookies.html
相关问题
- 1. Ruby中的CSV对象。他们究竟是什么?
- 2. 数据库模式究竟是什么?
- 3. AngularJS中的模块究竟是什么?
- 4. 数据仓库设计中的星型模式究竟是什么措施?
- 5. javascript原型的点究竟是什么
- 6. 究竟是MySQL中的“尾随空间”究竟是什么?
- 7. 异步计算究竟是什么?
- 8. 究竟是什么“config.assets.debug”设置呢?
- 9. 变量模板究竟是什么
- 10. DEFAULT_COMPRESSION究竟是什么?
- 11. cacert.pem究竟是什么?
- 12. JSON-RPC究竟是什么?
- 13. WPF究竟是什么?
- 14. NoSQL究竟是什么?
- 15. “Sample”究竟是什么?
- 16. ContextStaticAttribute究竟是什么?
- 17. JSON究竟是什么?
- 18. 究竟是什么插座
- 19. targetSdkVersion究竟是什么?
- 20. getGlobalVisibleRect()究竟是什么?
- 21. 究竟是什么#^:_ 1
- 22. WCF - 究竟是什么?
- 23. Rest API究竟是什么
- 24. “句柄”究竟是什么?
- 25. this.id究竟是什么?
- 26. Erlang OTP究竟是什么?
- 27. selenese html究竟是什么?
- 28. 资源究竟是什么?
- 29. 究竟是什么@ ViewDebug.ExportedProperty?
- 30. ViewUserControl.ViewDataKey究竟是什么?