锁定老帖子 主题:提速javascript开发(一)
该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-03-11
jindw 写道 这里所谓的js的private变量,其实就是局部变量。
private和public这样的访问权限的封装在js 脚本语言里,意义应该不是很大吧? 引用 3.2 类继承 禁止写法 prototype继承 万恶之首:目前有很多继承写法,都是直接或者间接使用它。严重破坏封装性。 没法实现多态:只是简单的复用,这种继承意义不大。 apply,或者call 只是复用:简单的在当前对象中,执行对象之外的另一个方法。 这几种javascript的继承写法虽然目前被大量的使用,但是他们的缺点是明显的,因此我们不建议采用这些常见的javascript继承写法。 prototype继承 万恶之首?是不是太武断了? prototype这个语言本身支持的东西用起来安全性等还是有优势的吧, 比如利用prototype封装实例方法相对楼主的方法能有效的避免ie内存泄露。 楼主实现的继承等功能在利用prototype的基础上应该也能实现吧? |
|
返回顶楼 | |
发表时间:2007-03-11
支持一下!看的出楼主写的是自己项目的真实感受,感同身受,对于一个团队来讲,养成良好的默契的开发习惯至关重要,条条大路通罗马,选择适合自己团队的一条路就可以!
|
|
返回顶楼 | |
发表时间:2007-03-12
我的原则是没有任何理由去面向对象
写出程序流程,然后注入函数就足够了 |
|
返回顶楼 | |
发表时间:2007-03-12
没有完美的方式。我自己的写法也是有代价的,prototype的代价个人感觉更大。首先在javascript中做出很好的封装性很难!prototype写的继承有个最大的缺点(暂且不说它的封装性),如下。这是目前许多比较优雅的写法。如果我用prototype弄继承,那么代码最好是
当然有的时候封装性也不太重要。这事上没有绝对的事情,文章中的观点针对的是:发挥js对象的特点而言。甚至有的时候没有必要发挥其对象性的一面,这都是根据需要来用的。 强烈建议大家在表达自己想法时:给些例子。最好再将例子与反对的例子对比下,这样说明的话,理解的直观些 |
|
返回顶楼 | |
发表时间:2007-03-12
建议搂主去看下GOOGLE MAPS API,如果不会破解,可以去看下51DITU API ,看了后你就晓得你说得封装和继承得问题可以得到比较好得解决,而且还有许多JAVA .NET中玩不出得精彩技巧
|
|
返回顶楼 | |
发表时间:2007-04-07
很受启发
|
|
返回顶楼 | |
发表时间:2007-04-14
学习中
|
|
返回顶楼 | |
发表时间:2007-04-14
为什么说js不支持多态那,js可是弱类型的。
|
|
返回顶楼 | |
发表时间:2007-04-15
这样的话,在每new一个A的时候,每个对象都是拥有自己的method2,而不是作为prototype存在。 关于public、private可以在开发中作出协议,例如,方法名前用_,表示方法是私有的。 |
|
返回顶楼 | |
发表时间:2007-04-15
sp42 写道 其实,js是一门很好玩的语言,稍花点时间和来点兴趣,就会对这DSL爱不释手,相信能给你带来java、.net无法比拟的乐趣。
p.s如果你玩过dhtml,更能明白我说什么。 yeah! js is an enjoyable language, although the various libs are more pragmatic and productive for real web-development, it's an enlightenment to understand its prototype-based oo mechanism. |
|
返回顶楼 | |