Android专家课程——课后小记

 

我对android了解不深,这次特地学习了两位专家 高焕堂 和 Jollen Chen 关于Android的课程,颇有收获。

所以在这里记录下心得。

 

先介绍下两位老师
高焕堂:《UML+OOPC嵌入式C语言开发精讲》:《Android 应用软体架构设计》等书作者。从事IT行业近30年,被称为“台湾OO技术教父级代表人物”:近年来,专注于产业、企业及嵌入式产品的架构设计,被称为“台湾软件架构设计大师”,曾任WWISA(Worldwide Institute ofSofware Architects)会员。


Jollen Chen:台湾地区最具知名度的Embedded Linux技术顾问公司Jollen’s Consulting创办人暨首席讲师,同时也是全球知名开放手机专桉Openmoko的大中华区负责人。Jollen为台湾地区资深的Embedded Linux顾问与讲师,有超过8年的Linux专案与授课经验,更是台湾地区Embedded Linux以及Linux驱动程式的授课名师。Jollen目前则是专注于Android OS底层的技术研究,以及Android驱动程式的开发,同时也提供业界Android专案设计服务。(老师的网站:http://www.jollen.org/)

 

高焕堂老师是软件架构的专家,他的课程也是不离他的老本行,虽然以android做例子,实际讲的都是架构的

思想。他一直反复做两个比喻,就是大强龙和地头蛇,做框架的是大强龙,做应用的是地头蛇。多少年来,软

件领域的强龙都是老美,中国的开发者们是地头蛇。不知道是不是我理解不够深,我觉得这个比喻不是很恰当

,俗话说强龙压不过地头蛇,这里的强者应该是地头蛇不是强龙。而高老师的意思是想说我们在跟着强龙跑,

多少年来,我们做软件常常受限于系统限制,已经习惯于在系统提供的功能基础之上做我们的程序。因为系统

是老外的,框架是老外的,我们只能基于他们去做。尤其是这些封闭的系统,windows,symbian,iPhone等等

。我们不知道要为何如此,因为我们看不见系统的内部,由于习惯按系统的规矩做事,即使现在有Android这

样开放的系统可用时,我们拿到它的第一反应仍然是去问Andorid支持那些特性?Android支持我们把程序做成

什么样?其实我们可以不必如此,因为其实我们也可以做强龙。高老师做了多年的架构,他希望我们理解的是

,做框架,做系统其实并不难,我们一样可以做。这对于中国的手机产业是一个机会,我们其实可以做好自己

的Android,自己来做一次强龙。 Android本身做得并不好,但框架是通用的,注定会有多个版本的Android,

例如移动的OPhone,其实Google就是希望借助大家的力量做好Android。

后面两天是Jollen Chen的课程,jollen的PPT每一页都是他的那副漫画自画像,很是有趣。他是linux底层的

专家,他从下往上为我们介绍了Android的原理,java层与C++层的交互关系,系统层与硬件层的关系,

Android本身并不复杂,主要是添加了中间层,向下和向上都更容易独立,很好的屏蔽了和硬件的直接关系从

而更容易移植和修改。另外Android也针对手机特性对linux内核做了些特别的优化。不过我本人的感受仍然是

java层显得很多余,上下通过JNI的交互增加了不少编程的麻烦,个人以为UI上层采用了java和google决策层

的某些个人意志有很大关系,并不一定是最优选择,因为它的作用完成可用C++替代。

今天写这些,有时间再继续补充...

posted @ 2009-12-26 22:40  猫咪  阅读(628)  评论(0编辑  收藏  举报