`
阅读更多
JSVM2简介
    JSVM (JavaScript Virtual Machine的缩写),一个JavaScript基础框架,sourceforge开源项目,由万常华(wch3116)于2003年底发起, 目前最新版本是2.05,采用的是 BSD License 授权协议。

    JavaScript 一直以来扮演着Web端“脚本”的角色,开发者用它来在web上制作一些动态特效,或者在表单提交前对数据的预校验等等。随着客户端处理能力日益提升,DHTML在表示层的动态特征和丰富表现力,以及XMLHttpRequest,XmlDom等HTTP控件的出现, 另外一种应用模式开始引起人们的关注 — Ajax。关于Ajax的概念以及优缺点不再作冗余复述。

    如今Ajax Framework像雨后春笋,其中有很多优秀作品,在此也不多作介绍。JSVM 的定位和他们不同:JSVM并不是一个JavaScript Library,而是一个更底层的框架,基于这个框架,可以更好的实现JavaScript的模块化设计,以提高JavaScript代码的重用性。下面简单介绍一下JSVM的使用方法。
在web页面上加载JSVM 环境

在web页面中加入代码:<script src="<jsvm2目录>/jsre.js"></script> 即可实现该页面的JSVM2环境加载。
 
基于JSVM 的JavaScript开发

首先必须声明的是:JSVM2 的加载并不对web页面中原来的JavaScript环境产生任何破坏影响,而只是多了一些其它功能的支持。

在JSVM2 下,JavaScript代码的基本模块单元是“对象”,“对象”的类型可以是一个Function或者是一个Object。
“对象”的命名方式:<包名> + "." + <类名>,且必须以一个单独的文件形式保存。
保存路径是:<jsvm2目录>/classes [/<包名> …] /<类名>.class.js。

例如,设计对象:example.HelloWorld  文件路径:jsvm2/classes/example/HelloWorld.class.js 代码如下:

/**
* 调用jsvm2提供的$package函数定义包名
* 作用相当于:if (!window.example) {window.example = {};}
*/
$package("example");

/**
* 对example.HelloWorld进行定义
*/
example.HelloWorld = function (name) {

   this.name = name;

   this.say = function () {
      alert(this.name + " say: hello world!");
   }

}

当需要使用 example.HelloWorld 对象时,客户代码例如:
 $import("example.HelloWorld");//调用jsvm2提供的$import函数加载“类”

var obj = new example.HelloWorld("Mike");
obj.say();

一切OK,其实就这么简单,理解上面这个例子,就可以说基本上掌握JSVM2的使用了。至于接下来的JSVM2进阶指南,我本人认为并不是很重要,初学者不必着急学习,可以以后慢慢了解。



JSVM2进阶
    接下来介绍一些如何使用JSVM提供的其它功能来优化您的系统。
JSVM JavaScript Archive 的使用

在使用JSVM2一段时间之后,很快会发现JSVM的工作模式是按需动态加载代码的。于是出现一个矛盾:当我们为了满足设计上的合理粒度将代码分散到多个对应的class.js文件中,造成代码的加载动作次数过于多,从而影响到一定的整体性能。
为了解决这个矛盾,JSVM2 提供了一个集中批量加载代码的解决方案。可以通过JSVM2自身提供的工具,将所需的多个class.js文件打包在一个js文件中,然后配置到classpath的环境变量中即可。 当程序执行到需要这个“类”或者“对象”的时候,JSVM会从缓存中直接获得对应的代码,从来避免了进行多次的XMLHttpRequest交互。 例子

JSVM Module 的使用与开发

JSVM2 的核心模块在 bin/kernel.js 中实现,除此之外,我们还可以使用JSVM2自带的(或者第三方提供的)其它模块。
模块文件也必须以 .js 作为扩展名,放置在 <jsvm目录>/bin 目录下。
加载模块的方式:<script src="jsvm2/jsre.js" modules="模块名称1,模块名称2"></script>

... ... 未完待续...
0
1
分享到:
评论

相关推荐

    JSVM使用手册,jsvm 的使用方法大全

    **JSVM 使用手册详解** JSVM(Joint Scalable Video Model)是用于Scalable Video Coding (SVC)项目的一种软件工具。...此外,手册还提供了新工具的集成和验证指南,以便进一步扩展和优化JSVM的功能。

    JSVM SoftwareManual_9.18

    2. **安装与配置**: - 用户需要按照手册中的步骤进行下载和安装JSVM 9.18,确保系统兼容性。 - 配置环节可能涉及设置环境变量、指定运行路径等,以便JSVM正确识别和执行JavaScript文件。 3. **基本使用**: - ...

    jsvm8.6 测试代码

    5. 文档:可能包含API参考、设计文档、用户指南等,帮助开发者理解和使用JSVM8.6。 对于熟悉C++和Java虚拟机原理的开发者来说,这个压缩包提供了一个深入研究JSVM工作原理、优化其性能或扩展其功能的机会。通过阅读...

    jsvm9-19-13

    2. **JSVM源代码分析**: 拥有JSVM的源代码,开发者可以深入理解虚拟机的工作原理,包括类加载、字节码解释、垃圾回收、内存管理等关键过程。这对于研究JVM内部机制、进行性能优化或者开发定制化的JVM实现都具有重要...

    JSVM9-19-13

    用户手册是另一个重要的组成部分,它提供了关于JSVM的详细使用指南和API文档。手册中通常会包含安装步骤、配置选项、运行示例、错误处理以及性能调优等方面的指导。对于初学者来说,用户手册是快速上手的关键,它...

    SoftwareManual

    这是一份关于JMVC(Joint Multiview Video Coding)平台的详细指南,旨在帮助用户理解和操作JMVC,以便在Multiview Video Coding(MVC)项目中进行高效的工作。JMVC是由ISO/IEC移动图像专家小组(MPEG)和ITU-T视频...

    SVC9.15.rar_Scalable Video Codi

    1. **SoftwareManual.doc**:这是软件的手册,提供了详细的SVC9.15编码器和解码器的使用指南,包括安装步骤、配置参数、操作流程等,对于理解和使用SVC技术至关重要。 2. **changes.txt**:这个文件记录了SVC9.15相...

    maoyan-master【小程序源码】.rar

    《maoyan-master【小程序源码】:深度解析与学习指南》 在互联网技术日新月异的今天,小程序作为轻量级应用的代表,以其无需下载安装、即用即走的特点,深受用户喜爱。本资源"maoyan-master【小程序源码】"提供了一...

    jQuery基础学习技巧总结第1/4页

    2. **中文文档**:中文网站(http://jquery.org.cn/)提供了针对中文用户的文档和指南。 3. **教程**:推荐两篇不错的教程——《jQuery的起点教程》和《使用jQuery简化Ajax开发》,这两篇教程深入浅出地介绍了jQuery...

Global site tag (gtag.js) - Google Analytics