GUI是任何一台终端设备必须面临的问题,无论是低端的硬件配置还是高端的硬件配置,对绚丽、爽人的用户体验是大家无法抗拒的吸引力!
android的成功,让我们对用户体验的憧憬达到了前所未有的层次,但android的高端硬件配置,也让很多单片机系统望而却步。
如果说好的用户体验是靠高端的硬件配置来换取的话,这真不是一个人人都喜欢的交易,至少单片机环境是无法接受的。尽管linux对各种高端芯片的支持也非常好,但考虑到更多成形的嵌入式设备还在使用比较陈旧的硬件,于是巨大的反差出现了:用惯了手机、平板的用户,在接触到我们嵌入式设备时,感觉一夜回到解放前了!
这也不能怪谁,因为很多嵌入式gui的设计理念还停留在windows时代。
但本文想表达的意思是:这种交易未必跟大家想象的一样!我的观点是:好的GUI,特别是具有android特性的GUI未必需要高端的硬件配置,甚至没有操作系统的单片机系统也可以享受滑屏、触控这种体验。
还是看图说话吧,请大家看一下下面的视频:
http://v.youku.com/v_show/id_XNjgyNDQwMjUy.html
朋友,你认为这台机器的配置如何?
答案是:cpu核心频率<400MHZ,内存使用量仅20M,cpu使用率<24%,而实时性则高达毫秒级别(同时有13道波形在实时绘制),分辨率达到了1024*768
如果,大家觉得这个硬件配置还是比较高,那请给我一点时间,回头我传一个单片机版本,让大家感受一下吧。
我想说明的意思是,以牺牲效率才能换来好的用户体验是错误的观点。我所支持的观点是:抓住特性,适当舍弃一些几乎不用的、大而全的东西,则会给系统带来的惊人的效率提高!
大而全的东西,往往带来的是低效和更多用不到的功能。在今天的微时代,我提倡通过提供GUI微核心来为不同的应用定制不同的用户体验。我不认为minigui,QT能解决一切问题,其实它们从来没有解决过所有的问题,我认为通过GUI微核心,提供强大的UI设计引擎,然后将UI的设计权,全权交还给用户,才是各得其所的好事!我想问大家一个问题,minigui为我们贡献了40万~100万行的代码,我们真的用到了几行?真正被我们掌握的有几行?如果我给你的GUI核心,只有几千行的话,你是不是觉得更加自信呢?
微GUI核心,还有一个最大的好处,就是它能很简单的融入到任何现有的GUI系统,比如android,ios等。由于是微核心,所以它对操作系统几乎不产生任何依赖(甚至可以在无操作系统支持的系统上面运行),那么这样,我们再也不用为如果未来android一统天下,而让我们辛辛苦苦编写的C/C++程序变为历史的尘埃的事情而担心了,有了GUI微核心,我们编写的任何嵌入式C程序,可以在任何平台运行,ios、android等等,牛吹完了,我必须再发布一个小电影了,这个电影跟上面的视频是一样的内容,只是它运行在android之上:
http://v.youku.com/v_show/id_XNjM4NDgxOTg0.html