Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否值得使用prototype,还是应该使用面向对象的javascript?_Javascript_Oop_Prototype Oriented - Fatal编程技术网

是否值得使用prototype,还是应该使用面向对象的javascript?

是否值得使用prototype,还是应该使用面向对象的javascript?,javascript,oop,prototype-oriented,Javascript,Oop,Prototype Oriented,我现在是一名开发人员,在过去的几年中,我一直在使用原型框架及其面向对象的实现,以便在Javascript中使用。我还使用了jquery和其他一些框架 我一直在研究js的工作原理以及它与OOP的区别,因为它是一种面向原型的语言。在我看来,这实际上是一个伟大的概念,面向原型的语言。 适当注意: -这就是语言的使用方式,因此更快、更高效、理论上更简单、更流畅。 -每个浏览器都有自己的javascript工作方式实现,这使得在所有浏览器或至少大多数浏览器中都无法使用简洁的代码。 -通常那些OOP框架(

我现在是一名开发人员,在过去的几年中,我一直在使用原型框架及其面向对象的实现,以便在Javascript中使用。我还使用了jquery和其他一些框架

我一直在研究js的工作原理以及它与OOP的区别,因为它是一种面向原型的语言。在我看来,这实际上是一个伟大的概念,面向原型的语言。

适当注意:
-这就是语言的使用方式,因此更快、更高效、理论上更简单、更流畅。
-每个浏览器都有自己的javascript工作方式实现,这使得在所有浏览器或至少大多数浏览器中都无法使用简洁的代码。
-通常那些OOP框架(dojo.declare()、Js.Class、MooTools等)非常适合做一个出色的工作,而且它们是跨浏览器的。

我不禁想知道,是否值得开始使用面向javascript原型的RIA?或者我应该使用Dojo.declare()、js.class或类似的工具吗? ;我建议你

  • 我更喜欢提供类、鼓励子类化并提供定义良好的类层次结构的非常好的示例的
  • 提供使成员数据和成员函数私有(无保护)的示例
  • 许多人使用JavaScript的原型作为实现继承的工具;再见
  • 多态性很容易,因为JS不是强类型的
此外,许多流行的JavaScript库抽象了浏览器与开发人员之间的差异;如果您选择使用JS库,您可能会在代码中发现一些“如果”来补偿浏览器中的差异


最后,还有一些其他的。

我在RIA上使用了去年的prototype.js。我不习惯您所说的库,但我使用jQuery。在学习了如何使用prototype.js之后,我只是避开了jQuery,。我可以使用prototype.js做任何事情,特别是当范围真的很重要时,prototype以如此漂亮的方式处理它。在任何其他库中都找不到prototype提供的bind方法的替代方法。它非常有用。我建议你毫无畏惧地使用原型。。它很酷,而且很容易处理。

别误会我的意思,我觉得oop对我来说非常珍贵。我只是想听听一些意见。有没有面向js原型的框架?谢谢你的回答,不要害怕他们。选择一个库(例如jQuery、ExtJS、dojo),选择一个调试器(例如FireBug),在主要浏览器、书签上频繁测试您的代码,我想您会发现体验很有趣!所有框架/库都利用原型——主要用于继承;您不必担心找到专门为原型创建的库。事实上,在遇到需要了解原型的详细信息的情况之前,您可能需要编程数周或数月。