频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

1.3.1 做一个框架

作者: 周爱民 出处:电子工业出版社  2008-03-19 16:34    砖    好    评论   进入论坛
阅读提示:《JAVASCRIPT语言精髓与编程实践》详细讲述JavaScript作为一种混合式语言的各方面特性,第一章作者写了与JavaScript的故事。本文告诉我们如果做一个框架。

1.3  没有框架与库的语言能怎样发展呢?

1.3.1  做一个框架

聊天室接下来的发展几乎停滞了。我在RWC与RIA之争中选择了RWC,但也同时面临了RWC的困境:我找不到一个统一的框架或底层环境。因此,聊天室如果再向下发展,也只能是在代码堆上堆砌代码而已。

于是,整个的2003年,我基本上都没有再碰过浏览器上的开发。2004年初的时候,我到一家新的公司(Jxsoft Corporation)任职。这家公司的主要业务都是B/S架构上的开发,于是我提出“先做易做的1/2”的思路,打算通过提高浏览器端开发能力,来加强公司在B/S架构开发中的竞争力。

于是我得到很丰富的资源,来主持一个名为WEUI(Web Enterprise UI Component Framework)项目的开发工作。这个项目的最初设想,跟JSVPS一样是个庞然大物(似乎我总是喜欢如图1-4所示的这类庞大的构想)。

图1-4  WEUI基本框架和技术概览 

WEUI包括了B/S两端的设计,甚至还有自己的一个开发环境。而真正做起来的时候,则是从WEUI OOP Framework开始的。这是因为JavaScript语言没有真正的“面向对象编程(OOP,Object Oriented Programming)”框架。
在我所收集的资料中,第一个提出OOP JavaScript概念的是Brandon Myers,他在一个名为Dynapi 的开源项目工作中,提出了名为“SuperClass”的概念和原始代码。后来,在2001年3月,Bart Bizon按照这个思路发起了开源项目SuperClass,放在SourceForge上。这份代码维护到ver 1.7b。半年后,Bart Bizon放弃了SuperClass并重新发起JSClass项目,这成为JavaScript早期框架中的代表作品。

后来许多的JavaScript OOP Framework都不约而同地采用了与SuperClass类同的方法——使用“语法解释器”——来解决框架问题。然而前面提到过的实现了“类Outlook界面”的Erik Arvidsson则采用了另一种思路:使用JavaScript原生代码(native code)在执行期建立框架,并将这一方法用在了另一个同样著名的项目Bindows上。

对于中国的一部分的JavaScript爱好者来说,RWC时代就开始于《程序员》2004年第5期的一篇《王朝复辟还是浴火重生——The Return of Rich Client》。这篇文章讲的就是Bindows(见图1-5)。

图1-5  Bindows在浏览器上的不凡表现 

Bindows可能也是赶上了好时候,这年的MS Teched就有好几个专场来讲述智能客户端(Smart Client)。而“智能客户端”的基本思想就是跨平台的、弹性的富客户端(Rich Client)。因此“丰富的浏览器表现”立即成为“时新”的开发需求,以Bindows为代表的RWC(Rich Web Client)也因此成为国内开发者和需求方共同关注的焦点。

WEUI v1.0内核的研发工作大概就结束于此时。我在这个阶段中主要负责的就是JavaScript OOP Language Core的开发,并基本完成了对JavaScript语言在OOP方面的补充。而接下来,另外的两名开发人员 则分别负责Application Framework与Database Layer的开发,他们的工作完成于2004年8月。紧接着WEUI就被应用到一个商业项目的前期开发中了——WEUI很快显示出它在浏览器端的开发优势:它拥有完整的OOP框架与“基本够用”的组件库,为构建大型的浏览器端应用系统的可行性提供了实证。

WEUI在开发环境和服务器端上没有得到投入。这与JSVPS有着基本相同的原因:没有需求。于是从2004年底开始,我就着手以UI组件库为主要目标的WEUI v2.0的开发,直到2005年3月。

【责任编辑:雪花 TEL:(010)68476606】

回书目   上一节   下一节
专题
Java编程开发手册
JAVASCRIPT语言精髓与编程实践
Ajax构建工具箱指南
持续集成:软件质量改进和风险降低之道
.NET Web高级开发
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。