Script.NET通用开发平台介绍

 Script.NET是蓝蚂蚁工作室从2000年开始开发的一个通用脚本语言开发平台,最初主要用于Tcl、Python等脚本语言的开发、调试,2004年发布的V1.1版本可以较好的支持Tcl、Python语言的开发,发布之后得到了不少用户的支持,不少用户也给我提了很多很好的建议。Script.NET V1.1版本主要的用户还是Tcl开发人员,因为Tcl语言在国内使用的人非常少,并且也没有很好的开发平台,比较出名的是ActiveState公司的Komodo,我觉得相比之下Script.NET在易用性和运行速度方面应该比Komodo有一定的优势,并且中文的开发资料也比较完善,因此有不少国内的Tcl开发人员使用过这个工具。

Script.NET最初的开发思路来源于我在公司负责开发的一套基于VC的测试平台,当时那个平台提供了VC的测试程序开发框架,所有的测试程序都是使用VC开发的动态库,加载在平台上运行。我觉得如果能使用Tcl这种脚本语言来开发测试程序,应该可以大大降低开发难度,提高开发的效率,因此深入研究了Tcl的嵌入、扩展、调试等技术,后来这些研究并没有完全应用于测试平台,但我使用这些技术在业余时间开发出了Script.NET,这其中我觉得难度最大,最有突破性的主要有下面几个技术:

1、Tcl和Python脚本的调试技术,特别是Tcl脚本的调试技术,采用了和Komodo等开发环境都完全不同的思路,采用了对被调试脚本进行预处理的方法,经过多次的改进,虽然不能达到百分之百的准确,但实际使用效果还是比较满意的,以后有时间我会详细解释一下这种调试方法。Python的调试实现相对来说简单一些,因为Python自身带的有完善的调试扩展库,我基本上是对其进行封装。

2、界面和非界面模块的组件化技术,在Script.NET中有界面组件(OWM)和非界面组件(VCI)两种扩展模块,整个平台的核心并不是很大,大部分功能都是由这些扩展组件实现的,通过组件的动态加载,可以有效的加快启动时间,减少内存占用。

3、通过脚本调用扩展组件的技术,这个功能的核心是使用汇编语言编写的接口函数调用方法,通过翻译头文件,先解析出所有的接口函数和每个参数的类型,然后通过参数压栈,来执行相应的接口函数,这样只要编写一次C++的组件封装,就可以在任意脚本中调用这些组件,而不用为每种脚本语言编写大量的扩展模块了。

4、通过Tcl等脚本生成动态的Html页面,并在应用程序中嵌入Html浏览器,从而实现灵活的界面显示,使用这种方法可以避免用VC来编写大量的界面,因为VC编写界面工作量比较大,并且修改也不方便,脚本+html的方式使得界面编写的工作量相对小一些,并且不需要编译,基本上可以立即看到效果,灵活性非常高。后来我使用这种技术应用于我开发的大部分项目中,效果应该还不错。

从2005年我开始V2.0版本的设计与开发,V2.0版本的架构变化非常大,基本上重新设计了整个程序框架,参考了Eclipse等组件化设计比较好的项目,使组件化做的更彻底,平台的内核更小,V2.0的目标已经不仅仅是脚本语言的开发平台,我的设想是可以作为类似于Eclipse RCP的通用富客户端开发与运行平台,基于这个平台,用户只要做少量的扩展开发,就可以开发出面向不同应用的客户端应用系统,因为Script.NET提供了丰富的基础功能、美观的界面(V2.0中还可以支持皮肤),并且可以提供内嵌任意脚本,因此二次开发人员只要专注与自己的业务开发就可以了。

因为我的工作很忙,V2.0版本的开发进度一直非常慢,到目前为止发布了beta1和beta2两个版本,离我预想的目标还有不少差距,我希望2007年年底之前可以发布V2.0的正式版本。下面大概介绍一下V2.0版本的特性与构想:

1、组件化程度大大增强,采用类似Eclipse的组件架构,并在性能、扩展性、灵活性等方面做了很多的考虑,主要有三类组件:OWM界面组件、解释器组件、普通的组件(VCI组件)。可以方便的扩展界面、脚本解释器、非界面类组件。

2、界面美观性的改进,支持Office2007、Visual Studio 2005等界面风格和界面换肤。

3、国际化的支持,采用一种非常方便的国际化手段,使系统完全支持国际化,(目前主要是中文和英文)。

4、非常强的界面扩展能力,界面中的很多地方都可以通过VC或各种脚本语言来扩展,特别是提供了TclVci扩展模块,使得在脚本中可以直接调用界面和组件的接口,实现各种功能。

5、强大的脚本开发能力和扩展能力,Script.NET V2将脚本解释器作为独立的组件,通过开发向导可以自己扩展其他的脚本解释器,系统定义了一个解释器的标准接口,如果全部实现接口的功能,则扩展的解释器将具有强大的调试能力,并可以在任意脚本中直接调用系统中的其他组件和平台的功能接口,可以支持Tcl等脚本的编译、构建可执行文件。

6、TclFace本地web开发包,提供了TclFace界面扩展包,用于开发基于Tcl的本地web界面,思路类似于Java中的JSF,将本地web界面开发对象化,可以采用堆积各种组件的方法来开发本地web界面,Scrpt.NET本身的各种管理界面就是用TclFace(TLF)开发的。此模块目前还只实现了一小部分功能,还在不断完善中,源代码请参考Tcl库的tclFace目录。

7、各种功能强大的扩展组件,包括图象编辑器组件、UML组件、查找组件等,另外还增加NSIS脚本的支持...

8、即时通信功能,使用XMPP通信协议,封装gloox开源XMPP客户端,并很好的集成在Script.NET平台中,可以支持基于XMPP的一些扩展和自动化应用,例如远程协助、自动应答机器人、通过IM与第三方系统的集成。

9、基于此平台开发的一些应用,例如类似于Outlook的邮件客户端应用,FTP客户端应用。

10、提供Script.NET客户端、服务器解决方案,可以提供通用的数据采集等功能。

关于Script.NET这次就先介绍这么多,以后我会逐步的介绍一些细节。

蓝蚂蚁工作室的网站:

http://www.blueantstudio.net

Script.NET的安装程序除了可以在主页上下载之外,也可以在Script.NET的google论坛上下载,论坛地址为:

http://groups.google.com/group/scriptnet

电子邮件地址:blueant_hw AT 21cn.com  或 script.net AT gmail.com

下面是几张界面截图,更多的界面请参考Script.NET相册:

http://blog.csdn.net/oceanheart/Gallery/328803.aspx

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Script.NET通用的脚本语言开发平台,目前支持Tcl、Python、Lua、NSIS脚本的开发,支持脚本语言的开发、运行、调试、编译、生成可执行文件等功能。Script.NET采用类似于Eclipse的插件化开发方式,大部分功能都以插件的形式提供,可以灵活扩展,除了用于脚本开发之外,也可以扩展为各种富客户端应用程序。<br>Script.NET从2000年开始开发,发布过V1.0和V2.0两个大版本,经过8年的不断优化完善,目前在架构方面已经比较合理,完善的插件机制,使得Script.NET平台可以非常容易的扩展更多的功能。可以访问主页 http://www.blueantstudio.net 了解更多信息。<br><br>Script.NET V2.0.2版本开始将基础平台和脚本开发包分离,此处下载的是基础运行平台,要使用某种脚本语言的开发功能,可以到蓝蚂蚁工作室网站下载相应语言的开发包,下载地址:<br>http://www.blueantstudio.net/scriptnet/download/download.htm<br><br>Script.NET主要功能特性如下: <br>1、编辑、调试、运行tcl、python、lua脚本; <br>2、脚本的编译/加密和生成可执行文件(每种脚本语言支持的程度不同); <br>3、效率分析等辅助功能(目前只有tcl脚本支持了此功能); <br>4、关键字帮助,通过F1键或鼠标移动到关键字上,获取详细的帮助信息; <br>5、收集了较多的脚本扩展包、帮助文档和演示程序,目前tcl的扩展包收集较多,其他脚本也正在收集完善,除了常用的tk、wx、pmw,还有图象、多媒体、界面库等很多各种各样的扩展包,以后我们打算通过在线更新的方式使用户可以更方便的获取到各种扩展包; <br>6、附带了ftp、代码统计、正则表达式等一些扩展工具; <br>7、采用灵活的可扩展架构,整个系统可以灵活的扩展各种解释器、界面组件、工具、工程、界面风格等; <br>8、支持控制台功能(目前仅有tcl控制台、telnet控制台、串口控制台可用,其他脚本控制台正在开发); <br>9、Script.NET作为一个通用平台对外提供了很多接口,可以通过脚本等方式调用平台的各种功能,其中的tcl语言支持很多平台扩展命令,可以通过tcl操纵平台的各种功能,对平台进行扩展; <br>10、封装的TclFace页面扩展包,可以通过面向对象的tcl脚本生成各种平台的页面功能。
Script.NET是蓝蚂蚁工作室开发的一套用于Tcl/Python/Ruby/Lua/NSIS 等脚本语言开发的集成开发环境,刚刚发布的2.1.1版本新增了Ruby脚本的支持,可以支持Ruby脚本的开发、调试、生成可执行文件、控制台等功能,可以支持wxRuby、RubyTk等界面库,目前还不支持Rails的调试,后续版本会不断完善。 下载地址和详细介绍请请参考蓝蚂蚁工作室的主页: http://www.blueantstudio.net Script.NET主要功能特性如下: 1、编辑、调试、运行tcl、python、lua、ruby脚本; 2、脚本的编译/加密和生成可执行文件(每种脚本语言支持的程度不同); 3、效率分析等辅助功能(目前只有tcl脚本支持了此功能); 4、关键字帮助,通过F1键或鼠标移动到关键字上,获取详细的帮助信息; 5、收集了较多的脚本扩展包、帮助文档和演示程序,目前tcl的扩展包收集较多,其他脚本也正在收集完善,除了常用的tk、wx、pmw,还有图象、多媒体、界面库等很多各种各样的扩展包,以后我们打算通过在线更新的方式使用户可以更方便的获取到各种扩展包; 6、附带了ftp、代码统计、正则表达式等一些扩展工具; 7、采用灵活的可扩展架构,整个系统可以灵活的扩展各种解释器、界面组件、工具、工程、界面风格等; 8、支持控制台功能(目前支持tcl/python/lua/ruby控制台、telnet控制台、串口控制台可用,其他脚本控制台正在开发); 9、Script.NET作为一个通用平台对外提供了很多接口,可以通过脚本等方式调用平台的各种功能,其中的tcl语言支持很多平台扩展命令,可以通过tcl操纵平台的各种功能,对平台进行扩展; 10、封装的TclFace页面扩展包,可以通过面向对象的tcl脚本生成各种平台的页面功能,此扩展包除了可以用于本地应用程序生成页面之外,还可以运行于AOLServer WEB服务器,作为一种类似于JSF的服务器端脚本。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值