kava
通過解釋方式來執行的編程語言
Kava是SU² Technology針對移動終端推出的一種編程語言。它是一種通過解釋方式來執行的語言,兼容Java語法。Kava也是一種跨平台的程序設計語言,用Kava語言編寫的程序叫做“Application”(應用程序),用編譯器將它編譯成類文件后,就可以在KVM(Kava的虛擬機)上運行。
Kava非常適合移動終端,它幾乎使所有應用程序(包括遊戲、工具以及信息程序和服務)都能在任何計算機和設備上運行。KAVA有許多特性:KVM針對移動設備進行特定優化,小而高效;同時具有簡單、面向對象、分散式、解釋性、可靠、安全、結構中立性、可移植性、高性能等。KAVA做了Java不會針對特定系統進行優化的工作,同時擯棄了C++中各種弊大於利的功能和許多很少用到的功能。
Kava程序並不像其它程序語言被編譯成所在平台的機器語言后再執行,而是先編譯成位碼(byte code),然後才到裝有Kava虛擬機器(Kava Virtual Machine)的硬體上去執行,這也就是為什麼Kava程序能夠跨平台的主要原因。其中Mobius保證了KVM針對各移動終端系統的優化與跨平台性,右圖簡單的表示Kava原始程序、位碼(byte code)、KVM和宿主硬體(移動終端、PC/Server)之間的關係。
Kava核心主要包括三大部分:Kava Kernel、KVM、Kava Packages。Kava Kernel:Kava Kernel負責與Mobius、相關移動終端、PC/Server等操作系統的介面,Kava Kernel用C/C++語言實現,依賴於Mobius的跨平台性與相關開發介面庫。KVM(Kava Virtual Machine):KVM是Kava的虛擬機,負責對byte code的kava類進行解釋執行。 Kava Packages:是kava開發所必須依賴的基本套件,主要包括:GUI(圖形圖像)、I/O(文件與流操作)、Networking(網際網路)、PS(移動通信)、Video(視頻)、Media(音頻)、Time(時間)、Event(事件)、String(字元串)、Base(其它基本套件)等。Yoda OS:是純用Kava語言開發的操作系統,包括圖形操作、系統調用、應用框架等,可運行任何kava程序以及支持Java程序的運行。Kava Application:用kava編寫的程序都統稱為Application,Kava系統支持Application採用XML配置,讓用戶可靈活配置應用。
Kava是SU² Technology自主研發的一種跨平台開發語言,針對移動終端系統進行特定的優化,可完全兼容Java語言。自主研發從Kava核心到kava Packages、KVM以及Mobius(跨平台無關性)的所有代碼均由SU² Technology獨立研發。Kava採用獨特的系統架構,完成了對現有主流移動終端系統(Symbian、Win mobile、Linux、MTK)以及主流Pc/Server)操作系統的跨平台工作,讓開發者不必關心應用會在哪個平台上運行。與Java兼容Kava天生就與Java兼容,但不同等於Java。現有Java開發的很多應用基本不需修改,即可在Kava上運行。同時Kava的語法與Java非常接近,甚至Kava的source可以用Javac進行編譯。兩者在source到byte code層上有著完全的兼容性。Kava提供了比Java更有針對性的Packages、更小的虛擬機、更高的執行效率、更靈活的擴展性。為移動終端量身定製Kava的核心是基於Mobius,Mobius針對移動終端進行量身定製並達到基於其上開發應用的平台無關性,因此Kava也繼承了Mobius的平台無關性。由於移動終端系統處理能力、內存大小、存儲能力等的限制,Kava針對這些限制進行了獨到的設計,使得Kava的核心運行只需要幾KB的空間即可運行順暢。Kava是真正為移動終端量身定製的應用運行平台和開發工具。體系化Kava已經完成體系化工作,它包括開發所需的Kava Packages、Kava IDE、Kava KVM、Yoda OS等體系支持所需的各種環境、工具、文檔。
kava