AWTK能為現(xiàn)代GUI編程帶來何種改變,?
AWTK是一個伸縮性*的嵌入式圖形框架,可在Cortex-M3這樣低端的單片機上運行,,也可以在Cortex-A7/A8/A9等處理器,,甚至DSP以及X86處理器上運行,既可支持小型RTOS系統(tǒng),,也能支持Linux,、MacOS、iOS,、Android操作系統(tǒng),,還能支持Windows操作系統(tǒng)、WEB以及各種小程序,,可以說是一個的嵌入式GUI引擎,。
AWTK的跨平臺特性,使得應用程序開發(fā)也極為便利,,在Windows上開發(fā)完成的程序,,只需經(jīng)過簡單交叉編譯即可下載至嵌入式目標板運行,且得到的效果是*一樣的,,無需再進行任何修改,。
AWTK的特點
AWTK旨在為用戶提供一個功能強大、簡單易用,,能輕松做出炫酷效果的GUI引擎,,具有如下特點:
1、開源,、免費,,用于商業(yè)無需付費,;
2、:小巧,,可運行在Cortex-M3等小資源平臺(參考圖1),;
3、跨平臺:支持跨多種操作系統(tǒng),,跨多種硬件平臺(參考圖2),;
4、穩(wěn)定:架構(gòu),,檢查測試,,多平臺驗證以及強大后備技術(shù)支援;
5,、功能強大:
支持硬件加速,,支持視網(wǎng)膜高清分辨率技術(shù);
擁有完善的動畫系統(tǒng),,豐富的GUI控件,;
支持位圖字體和矢量字體;
內(nèi)置中英文輸入法,,并支持智能詞組輸入,;
支持多語言開發(fā),支持化,;
6,、易用;
7,、支持純C語言編程,;
8、支持組態(tài)方式開發(fā)界面,,所見即所得,;
9、提供完善的API手冊,、使用文檔和大量示例代碼:
支持純C語言編程,;
支持組態(tài)方式開發(fā)界面,所見即所得,;
提供完善的API手冊,、使用文檔和大量示例代碼;
10,、擴展性好:可擴展控件,、動畫、引擎等。
圖1 廣泛處理器支持
圖2 多軟件平臺支持
AWTK開發(fā)環(huán)境
ZLG致遠電子即將推出AWTK集成開發(fā)環(huán)境AWTK Designer,,簡化AWTK界面設計,,無需手寫XML,采用拖拽方式即可完成界面設計,,所見即所得,。AWTK Designer本身就是采用AWTK編程實現(xiàn),界面如圖3所示,。
圖3 AWTK Designer界面
前景展望
在AWTK誕生以前,,沒有哪一款GUI能具有如此廣泛的覆蓋性以及如此良好的伸縮性和延展性。此前的GUI,,往往都是聚焦于某一類處理器或者某幾個平臺,要么只支持某一些列處理器,,要么只支持有限幾個軟件平臺,,這個現(xiàn)狀如今被AWTK打破。AWTK將成為一個可用于嵌入式,、手機和PC的通用GUI系統(tǒng),。
AWTK采用LGPL協(xié)議發(fā)布,任何人或者組織都能獲取到源碼,,并可用于商業(yè)用途而無需付費,。與現(xiàn)有商業(yè)GUI相比,既能為節(jié)省不少授權(quán)費用,,而且能掌握全部源碼,,也能為提供更有力量的信心保證,僅從這兩點而言,,對都是吸引力的,。這勢必能吸引眾多嵌入式加入AWTK生態(tài),并為AWTK生態(tài)添磚加瓦,。
AWTK的多種語言開發(fā)特性,,能吸引更多掌握不同語言技能的。目前大多數(shù)GUI,,都僅支持某一種單一語言,,C或者C++,而AWTK目前已經(jīng)支持C,、Lua,、Javascript on jerryscript、Javascript on nodejs等不同編程語言,,將來還能支持其他開發(fā)語言,。這樣既能為提供編程便利,也能進一步拓寬AWTK的應用領(lǐng)域和使用人群。
AWTK與Linux的結(jié)合,,可謂相得益彰,,為嵌入式Linux的GUI帶來了福音,Linux生態(tài)也會促進AWTK的成長和發(fā)展,。