`
zscomehuyue
  • 浏览: 414814 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Android赢家密码(一)——什么是赢家密码

阅读更多
http://www.infoq.com/cn/news/2011/02/android-winners-password-1
【编者按】移动开发已经毫无争议地成为软件领域的发展趋势,崭新的领域和模式不仅仅为各个厂商,也会普通的开发者打开了一扇阿里巴巴之门。 InfoQ非常荣幸地邀请到台湾知名技术专家,台湾公认的“OO教父”和“Android教父”高焕堂,为InfoQ中文站开辟Android专栏。这个专栏是摘取自高老师尚未出版的第五本Android书籍《Android赢家密码》。
强龙不压地头蛇

自古有言:“强龙不压地头蛇”。这是来自<<西游记>>第 45 回里所写的:

    “你也忒自重了,更不让我远乡之僧;

    也罢,这正是强龙不压地头蛇。”

强龙不压地头蛇,其意味着:

    * 强龙不会档住地头蛇的财路,
    * 反而会协助地头蛇不断成长。

相对上,木瓜树就是“强龙”角色;而小鸟则是“地头蛇”角色。木瓜免费提供又红又甜的木瓜肉给小鸟吃,让小鸟长得强壮,能飞得更远。此外,还把木瓜种子做很精致的方式包装,让种子既不会伤害小鸟,而且种子也不会被小鸟所伤害(例如被消化掉)。如此,木瓜帮助小鸟长大,愈强壮小鸟就能够将木瓜种子携带到愈遥远的新土地上,大图拓展了木瓜的地盘。强龙与地头蛇形成一个极佳的双赢合作模式:

    * 强龙帮助地头蛇成长壮大。
    * 地头蛇帮助强龙拓展版图。

以 Android 手机平台为例,Google 扮演“强龙”角色;而 AP 开发者则扮演“地头蛇”角色。Google 也尽到强龙的任务:

    * 提供 Android 框架 API 和 Android SDK(含 Android NDK)两道奶水,协助 AP 开发者(即地头蛇)。

AP 开发者也尽到责任:

    * 到了2011年初,全球的Android AP开发者已经替Google强龙开发出超过 10 万支的 AP(即以奶水去养了 10 万个活泼可爱的小孩),让Android手机版图持续扩大,跃升为全世界最畅销的智能型手机了。这也等于帮助 Google 拓展了版图。

以 Android 商业模式为例

Google强龙希望 Android 平台能支撑它在手机、家电产业上的强龙的地位。除了上述的 AP 开发者之外,Google 还有另一种地头蛇:硬件厂。因此,Google身旁有两种主要的地头蛇:AP开发者和硬件厂;其中 AP开发者撰写手机应用软体,而硬件厂则开发手机硬件组件。如下图所示:

图 1-25 Google 的愿望:拥有强龙商业地位

Google为了站稳商业强龙地位,它必须协助两种地头蛇去完成他们各自的任务。于是 Google 开发手机平台软件(即 Android 平台),内含两种框架(含 API):

    * Java 层应用框架(Application Framework),它用来衔接应用子类。
    * HAL(Hardware Abstraction Layer)驱动框架,它用来衔接硬件组件的驱动程序(Driver)。

然后将上述框架当做礼物,分别赠送给 AP 开发者和硬件厂。如下图所示:

Android 框架就是一个完美的范例,主要元素包括:

    * 框架内含基类及主动型 API。
    * 基类里的程序码是鱼饵。
    * 主动型 API 则是鱼钩。
    * 框架是一种极为特殊的礼物。

这种“强龙/地头蛇”商业模式,很类似于大家熟悉的“加盟”体系。Google 开发Android 框架来送人,强力支撑其全球分工和营销的加盟体系,如下图:

图 1-27 Android 框架支撑 Google 的全球加盟体系

强龙必须培养、组织和照顾众多的地头蛇(即加盟者),才能让自己成为盟主(即强龙)。由于大强龙个数不多,条件也高,不是人人都有机会。因此,从 “强龙/地头蛇”商业模式再衍生出新型的“强龙/小强龙/地头蛇”商业模式。于各领域中,具有特定领域(例如智能电视、车载地图、网络游戏等)的公司,皆能开发出特殊的领域框架(Domain-Specific Framework,简称为 DSF),就能扮演“领域强龙”角色,而拥有自己的地头蛇了。相对于 Android 大框架,这种 DSF 则称为小框架。做大框架者是大强龙;做小框架者是小强龙(即领域强龙)。小框架可以融合到大框架里,它充实大框架的内涵,让大强龙、小强龙、和地头蛇共三方皆获利,形成“三合”的美好商业模式。于是,三合(即大强龙、小强龙和地头蛇的合作)的巨大效益为:

    * 以手机硬件为例,小框架能有效创造硬件的差异化、多样化,大幅提升附加价值。
    * 就小框架而言,硬件的大量生产,创造小框架的大量复制机会。

Why,框架 API?

前面已经叙述了,热情地关注 API,即能发现藏在隙缝里的成功密码,成为幸运的赢家。前面也已经说明了,框架就像万里长城,其 API 就像长城的关口(如居庸关等),而且也拿一棵树来做比喻,说明 API 的角色:

    * HAL 框架的 API 就位于树干与树根(即驱动程序)的衔接处。
    * 应用(AP)框架的 API 就位于树干与枝叶(即 AP)的衔接处。

然而,很多人提出疑问:提供API的途径何其多? 为何特别强调“框架”的API呢? 例如,一般程序库(Library)也提供API给开发者使用、网络服务(Web Service)也是一种API,为何只谈框架API呢? 为了回答这问题,必须回顾过去20年来的软件发展经验了。其中有两项重要的事迹:

    * 1980年代后期,CORBA是一项物件导向的服务标准API,实现此项标准的系统中,最著名的商业中间键软件就是Orbix系统。然而,在系统架构上,API是一种制约力量,不是一种礼物,不能用来嘉惠予AP开发者。导致CORBA和Orbix系统架构无法支撑理想的商业模式,而终告消失匿迹。
    * 1990年代中后期,继CORBA之后的是Microsoft公司推出COM/DCOM系统架构,虽然提供了当时先进的物件导向(Object-Oriented)的API,但还是API,仍然是一种制约力量,不是一种礼物,不能用来嘉惠予AP开发者。与CORBA和Orbix一样的系统架构,一样无法支撑理想的商业模式,也终告消失匿迹。

后来,IT业界逐渐发现:API可用来框住应用程序(AP),如同一把利剑;若要获得开发者的青睐,利剑必须搭配面包,就像钓鱼钩必须搭配鱼饵,才能吸引鱼群。于是,Microsoft改变观点,把焦点放在面包上,发现物件导向技术里的抽象类别(Abstract Class)及其提供的预设函数(Default Function)以及其他具体类别,所整合而成的框架(Framework)正式一项极具诱惑力的鱼饵。此外,由框架所提供的主动型 API,也能发挥巨大的控制力。因之,Microsoft于2001推出.NET框架来取代COM/DCOM,由于.NET框架融合了面包与利剑,既能嘉惠广大的开发者,又能有效框住众多的应用程序。.NET框架是Microsoft赠送给广大的开发者的最佳礼物,表达了Microsoft对全球广大第三方开发者关怀和爱心,让他们因.NET而受惠。

到了2007年,Google也依样画葫芦,买来Android框架,当成礼物赠送给全球的手机硬件厂商,也赠送给全球广大的 AP 开发者。由于 Android 框架“礼物”嘉惠予硬件厂商,所以全球的硬件厂商也是受惠者,因而大力支持 Android,也让Android声势扶摇直上。Android框架是面包与利剑的融合体,不仅嘉惠予硬件厂商,也嘉惠予全球数以万计的广大 AP 开发者,同时也主导了这些开发者。

由于 Google 热情投入开发框架 API,并当成礼物来送人,除了嘉惠众多硬体厂商,也嘉惠了全球的 AP 开发者,让人人能拥有“没钱就改版,改版就有钱”的利益。古贤者老子说:“圣人无积,既以为人己愈有,既以予人己愈多。”从历史可知,秦始皇、汉武帝热情投入万里长城的兴建,而成为最大获利者。如今,Google 和微软都热情投入软件框架的开发,而成为幸运的最大赢家。

关于作者

高焕堂,台湾软件架构设计大师,从事IT行业近30年,被称为“台湾OO技术教父级代表人物”。现任MISOO软件开发与管理顾问公司首席架构师,编著过十余本软件技术相关书籍。
分享到:
评论

相关推荐

    android赢家密码

    android赢家密码,主要概述了android架构设计,框架分析的内容,此为第一章,看下载情况发布随后章节了

    安卓Android源码——猜拳游戏.zip

    在Android平台上实现这个游戏,我们需要创建一个用户界面(UI)来展示游戏选项(石头、剪刀、布),并处理用户的输入。这个项目中可能包含了以下几个关键部分: 1. **UI设计**:使用XML布局文件(如`activity_main....

    工作着 快乐着 ——快乐地工作才是大赢家.docx

    综上所述,《工作着快乐着——快乐地工作才是大赢家》这篇文章不仅仅是一篇关于工作态度的演讲稿,更是一份对积极生活哲学的倡导。通过分享个人经历和感悟,作者希望能够激发更多人对工作的热情,从而达到真正的...

    XQ全球赢家-个股栏目全部内容

    《XQ全球赢家:全方位的投资决策利器》是专业投资决策工具的典范,它不仅整合了全球股市的实时信息,而且提供了独特的全球化视角和强大的数据分析能力,为投资者们提供了一个全面的投资分析平台。 XQ全球赢家的个股...

    [企业管理]收获奥运——寻找奥运经济的最大赢家.pptx

    【企业管理】收获奥运——寻找奥运经济的最大赢家 奥运会作为全球最具影响力和规模的体育盛事,不仅推动了体育竞技的发展,也对主办城市的经济发展产生了深远影响。这份资料详细分析了过去几届奥运会,特别是雅典、...

    工作着快乐着——快乐地工作才是大赢家.pdf

    在这个快节奏的社会中,每个人都奔波在各自的工作岗位上,但不是每个人都能在工作中找到快乐。...让我们都努力成为一个在工作中寻找快乐的人,因为快乐工作才能真正让人感受到生活的美好,才能成为职场上的大赢家。

    iOS与Android谁才是大赢家?.docx

    iOS与Android谁才是大赢家?.docx

    SQL Server 2005深入内幕——开发人员,最大的赢家:SQL Server 2005全新的开发特性.pdf

    《SQL Server 2005深入内幕——开发人员,最大的赢家》这本书主要探讨了SQL Server 2005的新特性和提升,对于开发人员来说,这些改进极大地提升了开发效率和性能。以下是书中提及的一些关键点: 1. **CLR集成**:...

    天骑稳赢家

    天骑稳赢家是中国股市第一款集准确选股+高价值股市内参为一体的股市信息软件。经过90个交易日,360个交易小时,4981次的不断验证,选股准确率已经达到了稳赢级别。经过大量来自于第三方的客观数据汇总然后进行深度...

    基于Android平台的鸽赢家系统设计.pdf

    基于Android平台的鸽赢家系统设计.pdf

    短线赢家通达信指标公式源码.doc

    短线赢家通达信指标公式源码 【标题】: 短线赢家通达信指标公式源码 【描述】: 短线赢家通达信指标公式源码 【标签】: 文档 本文档主要介绍了短线操作的四大技巧:看成交量、看图形、看技术指标、看均线。同时,...

    XQ全球赢家-基本内容列表

    XQ全球赢家是一款专业投资决策工具,整合了全球股市信息,能随时查看全球主要市场实时金融行情,与其他股票投资软件不同之处在于——XQ全球赢家是以全球化观点分析市场,透过实时财经数据库与强大的信息分析能力,...

    Android猜拳游戏

    在本项目中,我们讨论的是一个使用Android Studio开发的简单猜拳游戏。Android Studio是Google提供的集成开发环境(IDE),专为Android应用开发设计。它提供了丰富的工具集,包括代码编辑器、调试器、构建工具等,...

    赢家时尚:二零一九年年报.PDF

    赢家时尚:二零一九年年报.PDF

    AFL 大赢家 - MetaTrader 5脚本.zip

    本压缩包文件“AFL大赢家 - MetaTrader 5脚本.zip”包含了专为MT5设计的一款日内交易振荡器,旨在帮助交易者识别市场趋势,提高交易决策的准确性。本文将详细介绍这款名为“AFL大赢家”的振荡器及其核心原理和应用。...

    《人际关系大赢家》.pdf

    《人际关系大赢家》一书便深刻剖析了这一主题,它指出,无论是在日常生活中的小事处理,还是在职业生涯的长远规划中,一个健全而广泛的人际关系网络对于一个人的成功具有不可忽视的作用。 该书一开篇便点明,良好的...

    人际关系大赢家

    《人际关系大赢家》一书中指出,建立有效的人际关系并非一蹴而就,而是需要通过长期的、有意识的互动来培养。初始的相识可能源自共同的兴趣爱好或是偶然的机遇,但只有通过不断的互动和交流,才能逐渐发展成为互助互...

Global site tag (gtag.js) - Google Analytics