ESOE简介

ESOE是ECMAScript OOP Engine的简写. ECMAScript是一个script语言的规范, javascript,jscript,ActionScript等都宣称遵循ECMAScript. 以ECMAScript为基准,可以避开一些因平台/浏览器的不同而产生的困难.

ECMAScript是依照prototype模式进行设计的, 在实现传统意义上的面向对象设计时存在一些困难(见作者文<<Javascript OO 设计正解>>). ESOE是在ECMAScript基础上实现面向对象设计的一种规范,其中参考了JSVM规范的一些思想. ESOE按规范的实现分为2个级别:

级别1 (level 1)
级别1不依赖于具体实现平台, 包括以下功能:
1. 包定义
    定义包(package)/名称空间(name space)的处理方式.
2. 类定义
    定义类(class)的处理方式.
3. 类继承
    定义类继承(derive)的处理方式.
4. 快速转换方案
    提供快速加载现存类库到ESOE的方案.

级别2 (level 2)
级别2依赖于具体实现平台, 包括以下功能:
1. 自动包加载
    定义自动包加载的处理方式.
2. 资源加载
    定义资源加载的处理方式.

ESOE特点:
1. 所有ECMAScript兼容的语言可使用级别1进行面向对象化设计.
2. 类似于java/JSVM的包/类自动加载, 也支持传统的手工加载方式.
3. 规范类设计,要求使用类之前先进行声明.
4. 提供打包工具, 提高包和类库的加载效率.
5. 提供快速方案, 以转换现存类库及其资源.
6. 在javascript的实现方案中, 使用常规*.js文件, 支持常规js文件调试方式.
7. 提供关键字冲突避免方案.
8. 这是一个开源项目.

 ESOE布局例子
<script src="../esoe.js" level="2" debug="1"></script>     //1. 加载ESOE
<script>     //2. 初始化包和类库
_packagepath("com","../lib/");
_import("com.yahoo.yui.widget.TreeView","yui.TreeView");
_update();
</script>
......
<script>     //3. 应用代码
 ......
 var tree= new yui.TreeView("divTree");
 ......
</script >

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值