旧文新帖(First out:2008-06-07):JavaScript“类”继承的横向比较
来源:互联网 发布:何伤乎 亦各言其志也 编辑:程序博客网 时间:2024/05/29 14:15
本文最早发表于2008-06-07
首入眼帘,代码:
然后是 YUI 的儿子,Ext JS:
注:上一个是 v2.0 的;Ext JS v2.1 改进了一点,见:
其实啊,Ext JS 好、YUI 也好,它们那一套的继承都源自这个前辈 Kevin Lindsey:
要搞清楚这套继承来龙去脉,这 Article 就千万不能错过了:
http://kevlindev.com/tutorials/javascript/inheritance/index.htm
文章问世时间是:Saturday, April 13th, 2002 。
最后,看到一位仁兄的推荐,来自 John Resig 的方案好像“集百家之所长”,见:
还有其他基于类的继承方案,如 Lazy Inheritance、Dean Edwards 的 Base2,不是说不好,而是很好,好到太复杂了(Lazy Inheritance 的简介像论文似的—题外话),——个人认为过于复杂有点违背 JS 短小精悍的意思,什么东西过了谱就不行的啦 嘿嘿 所以第一眼就枪毙了。
总结一下..嗯 还没太多的心得,还是台湾的一位朋友说得好:
無奈
感覺上又回到原始時代,或者說,回到比原始時代更久遠的上古時代,連建構基本的物件架構就有許多的不便,這樣複雜的結構實在有礙思考。想必在Scripting 領域的 OO 或甚至 Design Patten 又會發展成另一個 Knowledge Domain 吧!過去在其他物件導向語言使用的 Patten,硬是要套到這上面來不見得是一件明智的作法,畢竟 Script 的特性就是如此,與其他語言有一定程度的差別,但也正因為如此,不是 Scripting 是有缺陷的語言,而是在這個領域的設計及規劃方法,全世界都欠缺足夠的經驗,因此就不像使用 Java 或 C# 那般,可以歡歡喜喜的導入前人歸納的各種設計模式。
注:本文的重点是类继承,如果采用 JS 原生的“原型”继承 则简单很多——请君勿鄙之,因为存在就是合理。Just take a look 原型继承 by Douglas Crockford,比标准方案Prototype = new XX(); Make Sense很多,仅是五六行代码。
- 旧文新帖(First out:2008-06-07):JavaScript“类”继承的横向比较
- 旧文新帖(First out:2008-06-07):JavaScript“类”继承的横向比较
- JavaScript继承的几种方法比较
- 横向扩展(Scale-Out)存储
- JavaScript类的继承
- JavaScript类的继承
- Javascript 类的继承
- javaScript (二)--类的继承
- 几大搜索引擎的横向比较
- 常见的视频压缩技术横向比较
- 各区块链架构的横向比较
- 各区块链架构的横向比较
- FIFO队列(First In First Out)和优先队列
- EF Code First 使用继承类的一个问题
- javascript继承(二)借用构造函数的方式继承(类继承)
- JavaScript实现类的继承
- javascript 类的继承2
- javascript 类的继承3
- QPushButton QWidget 背景贴图
- 客户端套接字(Socket)超时
- grub命令行启动Windows
- 售楼小姐揭露房产界不能说的秘密~!
- qt arm 魔方机器人··
- 旧文新帖(First out:2008-06-07):JavaScript“类”继承的横向比较
- 房价即将下跌10大信号(转)
- struts2.1.8.1+jquery1.4.2返回json数据
- 拿用户当枪使的“争斗”,何时休?
- 程序员师
- vsftpd 虚拟用户配置(Ubuntu 10.04环境下通过)
- 注册表键值无法重命名为“debugger”
- 现阶段组成中国即时通讯联盟
- 实用Android开发工具和资源精选