Qomo OpenProject beta1 发布!
Qomo離上一次發(fā)布FT4已經(jīng)過去整整一個(gè)月了。這一段時(shí)間中,因?yàn)槲覀€(gè)人的緣故,未能組織好Qomo的團(tuán)隊(duì),導(dǎo)致UI組和DB組未能正常展開工作。因此截止beta 1發(fā)布,以上兩個(gè)組仍未能釋出代碼。
一個(gè)最重要的原因,是因?yàn)镼omo目前沒有一個(gè)好的UI和DB框架。以前在WEUI中使用過的UI和DB Components代碼并不適用于新的架構(gòu)和設(shè)計(jì),因此只能供參考。
此外,兼容組的Zhe設(shè)計(jì)了新的兼容框架,基本上已經(jīng)完成了代碼。但測(cè)試工作還未結(jié)束,因此暫時(shí)只作為Qomo項(xiàng)目團(tuán)隊(duì)內(nèi)部的一個(gè)測(cè)試版本,仍未能放在目前的beta 1中。
1、關(guān)于UI與DB組件包
============
本次,公開發(fā)布的beta 1仍不會(huì)附帶UI和DB代碼。但是我稍后會(huì)在這個(gè)blog中發(fā)布一個(gè)Qomo.Components的包,這個(gè)包中將會(huì)有目前全部UI、DB相關(guān)的代碼。這些代碼的注釋是全中文的。
這個(gè)包中的代碼,事實(shí)上是原WEUI項(xiàng)目中的代碼(甚至我連注釋都沒有改掉)。由于Qomo與WEUI有相同的語(yǔ)法與實(shí)現(xiàn)架構(gòu),因此只用了極少量的修改,這些代碼就可以運(yùn)行在Qomo上了。在今后,這些代碼(中的部分或者全部)將不會(huì)隨Qomo繼續(xù)發(fā)布,它可以作為Qomo愛好者研究借鑒,但我不建議你使用在項(xiàng)目中。——因?yàn)镼omo將會(huì)另行提供一套。
2、本次發(fā)布中的主要修正
============
在FT4的基礎(chǔ)之上,本次發(fā)布代碼中有大量的修正代碼。最主要的兩項(xiàng)修改是:
? - 重新定義了Qomo的兼容性目標(biāo)。Qomo今后將在底層提供一個(gè)IE、Mozilla等瀏覽器(及不同的JS版本)的公共特性的超集,而不是象以前所說的“以IE6為基準(zhǔn)”。這意味著Qomo將有一個(gè)更強(qiáng)大的兼容層。因此,一些原本在JSEnhance.js中的代碼被移到了兼容層框架中,例如出現(xiàn)了“Compat/common_js16.js”這個(gè)單元。
? - 修改了多投事件對(duì)象MuEvent()的代碼,徹底解決了原來的“快就不強(qiáng)壯,強(qiáng)壯就不快”的矛盾。
此外,在Object.js、System.js等內(nèi)核代碼中,為一些新特性的實(shí)現(xiàn)也加入了代碼。但基本上沒有調(diào)整代碼框架,因此不單獨(dú)敘述了。
3、本次發(fā)布中的主要添加的內(nèi)容
============
這次beta 1的發(fā)布,在Qomo中添加了完整的“接口(Interface)”機(jī)制,以及非常完整的“面向切面編程(AOP)”框架。并完成了相關(guān)技術(shù)文檔。
beta 1也完成了一個(gè)“組件繼承框圖”的自動(dòng)生成程序。這樣你要以很容易地看到系統(tǒng)內(nèi)部的框架結(jié)構(gòu)。我也將在隨后再撰文來講述Qomo底層框架的實(shí)現(xiàn)。
beta 1終于開始在Debug/目錄下加入代碼。今次提供的是一個(gè)Profilers.js單元,這個(gè)單元用于收集系統(tǒng)運(yùn)行中的效率數(shù)據(jù)。它采用原生的javascript代碼實(shí)現(xiàn),因此可以脫離Qomo運(yùn)行。——除了在toData()輸出時(shí),他需要一個(gè)uneval()函數(shù),這在兼容層代碼Compat/common_ie6.js中。
profiles.js本意是試圖用AOP框架來實(shí)現(xiàn)的,但是這樣的話在Aspect.js單元之前的其它單元的載入性能就無法檢測(cè)了。因此Qomo提供了一個(gè)RepImport.js單元,使用$import()提供的一些特性來收集system.js中載入的代碼效率。在system.js載入之后,該單元提供的特性將會(huì)被關(guān)閉(ResetImport),此后的用戶代碼,可以通過AOP建立自己的分析系統(tǒng)。一個(gè)這樣的示例被放在Debug/TestCase/T_profiler.html中。——它也正好演示了AOP與非AOP實(shí)現(xiàn)profiler時(shí)存在的不同。
4、主要添加文件的列表
============
組件包:
/Components/*.*
/Framework/Components.js
/Framework/Classes.js
內(nèi)核上的修正和新特性:
/Framework/RTL/Interface.js
/Framework/RTL/Aspect.js
/Framework/Compat/common_js16.js
/Framework/Debug/Debug.js
/Framework/Debug/Profilers.js
/Framework/Debug/RepImport.js
/Framework/Debug/TestCase/*
文檔和測(cè)試:
/Framework/DOCUMENTs/Qomolangma實(shí)現(xiàn)篇(七).txt
/Framework/DOCUMENTs/Qomolangma實(shí)現(xiàn)篇(八).txt
/Framework/DOCUMENTs/TestCase/AdvObjectDemo3.html
/Framework/DOCUMENTs/TestCase/AdvObjectDemo4.html
/Framework/DOCUMENTs/TestCase/AdvObjectDemo5.html
/Framework/DOCUMENTs/TestCase/BaseObjectDemo4.html
/Framework/DOCUMENTs/TestCase/T_InterfaceAggregate.html
/Framework/DOCUMENTs/TestCase/T_InterfaceQuery.html
下載:Qomo OpenProject beta 1
---------------------------
http://www.01cn.net/users/aimingoo/files/Qomo.V1(b1).zip
文檔:
---------------------------
Qomolangma實(shí)現(xiàn)篇(七):Qomo的接口機(jī)制
Qomolangma實(shí)現(xiàn)篇(八):Qomo中的AOP框架
Qomo OpenProject beta1 精彩圖集~
轉(zhuǎn)載于:https://www.cnblogs.com/java0818/archive/2006/04/17/2144562.html
總結(jié)
以上是生活随笔為你收集整理的Qomo OpenProject beta1 发布!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 正则表达式 运算 常见
- 下一篇: 奇怪的问题,.Net 2.0发送邮件失败