一、寄語:再次被重造的GUI輪子
/*
* Create By : 李紹良[lsl](zyzx)
* Create Time : 2015-03-14
*/
按照慣例得啰嗦一番^_^。我想寫的這個專題就是再次重新創造GUI這個輪子。
從大一下學期(2004年年初)開始接觸VB,第一次寫出來的“Hello World!”就是界面程序。VB給我帶來的感覺是寫界面如此簡單,但隨后的學習和工作對界面是即愛又狠。使用MFC等,寫個玩具倒是很簡單,真正想寫成可以使用的軟件卻是坑爹之極。先且不論英文障礙,找個資料找半天,還得一邊嘗試一邊推想微軟在底層到底干了些啥。這也是初學做Windows程序的悲哀吧,整天圍這個鳥問題折騰。
在大學,從學習VB,再自學WIN32編程,再到使用MFC。畢業后在武漢一家皮包公司做WinCE,使用的是wxWindows,前些年留下的BLOG就是那個時候的筆記和心得。在武漢待了兩年后,2009年在深圳到了目前的這家公司(做安防嵌入式DVR/NVR之類,其他的就不說了,當前也處于即將離職,悲哀啊,也只有離職期間才有時間總結),才深深的被震撼。原來UI也可以自己一針一線(一點,一線條)將其實現,只是當時的實現方案比較原始,但確確實實啟發了我的思維,不再認為GUI只有微軟、蘋果、QT、mimiGUI、wxWindows等才可以將其實現,我們也可以有自己的思維來實現GUI。
在此特別感謝當年的團隊在這個方面的思維積累。DVR3.0時代界面設計思路由前人完成,而我做的就是在這個界面思路下實現、完善、優化和擴展。此時的界面也就擺脫了當初簡簡單單的結構,為公司產品順利打開國際化市場,樹立行業DVR的OME廠商品牌,功勞不小。2012年左右,主管在前一代產品界面使用上的不足,提出來新一代產品界面需求,而我則開始構思GUI體系,規劃實現了4.0界面框架體系。4.0使用的是C++實現,并利用了基本C++類特性,為保密起見,我要再造的GUI輪子將按新的思路擴展,重寫這個部分的代碼。
這里就是我的GUI的需求:
1. 主要目標圍繞嵌入式平臺的界面,需要跨平臺實現
2. 內存,CPU消耗不得過多
3. 盡量精簡,以滿足基本要求為主
4. 接口使用標準C,以庫的方式提供
5. 只處理UI相關的部分,其他一律不考慮
6. 能否將UI使用lua腳本語言來實現
7. 只使用基礎語言,不使用高級語言特性
大概就這些吧,后面想到了再加進來。
posted on 2015-03-15 13:54 zyzx 閱讀(2737) 評論(2) 編輯 收藏 引用 所屬分類: 自己動手寫GUI