Android軟件開發(fā)的思惟與建議
AP+OS+APP主導產(chǎn)品開發(fā),AP(Application Processor)應(yīng)用處理器是產(chǎn)品主板(PCBA)的靈魂,主要的功能是用來執(zhí)行操作系統(tǒng)。OS(Operating System)的重要性在于它提供應(yīng)用軟件的執(zhí)行環(huán)境,并負責驅(qū)動主板上的所有硬件。APP(Applications)則是基本操作系統(tǒng)所撰寫的應(yīng)用程序。
本文引用地址:http://www.ex-cimer.com/article/184499.htm操作系統(tǒng)有近二十年來,不斷蓬勃發(fā)展,并采取社群模式開發(fā)的Linux kernel。應(yīng)用程序部份,有Google提供的AOSP(Android Open Source Project)以及Android API標準。應(yīng)用程序開發(fā)者基于標準API撰寫各式有創(chuàng)意的應(yīng)用程序,產(chǎn)品開發(fā)商或硬件制造商,可基于AOSP的架構(gòu)以及API標準發(fā)展產(chǎn)品。對產(chǎn)品開發(fā)商的優(yōu)點是,基于AOSP架構(gòu)與API標準所發(fā)展的產(chǎn)品,可搭載「現(xiàn)有的 Android 應(yīng)用程序」。意思是,Android Market或第三方來源的各種Android應(yīng)用軟件,「很早就為我們的產(chǎn)品準備好了」。
因此,AP+OS+APP的產(chǎn)品公式,可等價于AP+Android Application Framework+Developers。這讓產(chǎn)品開發(fā)的思惟很不同,但也可以很傳統(tǒng),取決定產(chǎn)品本身的定義。以下是幾點「很不同」的想法,提供大家參考指教。
第一、Android Application Framework的開發(fā)強調(diào)「兼容性」。這個兼容性并不是傳統(tǒng)上的「硬件兼容」或是「舊版本軟件兼容」,而是「API兼容」。如同上述所提,當一個Android框架無法開發(fā)到API兼容時,「很可能多數(shù)的現(xiàn)成軟件都無法正常執(zhí)行」。開發(fā)Android產(chǎn)品不是只為了硬件,而是要支持網(wǎng)絡(luò)上「現(xiàn)成的各種軟件」。消費者可能無法接受一個API不兼容的Android產(chǎn)品。大部份的應(yīng)用開發(fā)者都基于標準Android SDK做開發(fā),此時,API不兼容的產(chǎn)品,會讓這些應(yīng)用軟件無法執(zhí)行。因應(yīng)這個問題,Google提出了CTS套件,希望廠商開發(fā)的 Android 框架與產(chǎn)品都可以通過CTS(Compatible Test Suite)測試。
第二、開發(fā)軟件是「設(shè)計導向思惟」。寫程序(Coding)并不等于做軟件(Software),寫code可以很straight forward,意思是,大家可以通往直前,不受任何限制地自由發(fā)揮,程序代碼怎么寫,很自由心證。但是做軟件就很不同了。以Android框架的開發(fā)為例,寫code要考慮架構(gòu),要先做設(shè)計(OOD),要驗證設(shè)計的正確性,同時也要達到重用(Design Reuse)框架設(shè)計的要求;所以開發(fā)Android框架,是在一套系統(tǒng)化且制式的規(guī)模下進行,寫code受到規(guī)范。過去硬件商寫code是為了驅(qū)動硬件,或驗證硬件,現(xiàn)在要擔綱軟件開發(fā)的工作,coding的思惟就要改變。
第三、這是開放平臺。開放平臺(Open Platform)與開源軟件(Free and Open Source Software)是二個概念。開放平臺代表開放API給開發(fā)者使用,或是開放Platform Builder供制造商使用,制造商很可能無法取得內(nèi)部的實作源碼(Implementation source),取而代之的是一個configurable的環(huán)境。意思是說,AOSP版本的程序代碼很可能永遠都是reference code,廠商自已的implementation也不會公開源碼。Android里的Launcher是reference Launcher,Android里的rild也只是reference code;大部份implementation是reference implementation,不是workable或useable code。所以,不能只顧著等候AOSP的釋出,也不能渴望著取得所有的源碼。強化開發(fā)能力,動手發(fā)展AOSP成為好用的自有版本,才是務(wù)實之道。
2011年是Android揮軍平板計算機的重要一年, 要知道制造商在Android的研發(fā)儲備能量,這將是重要的觀察指針。
本文由 CTIMES 同意轉(zhuǎn)載,原文鏈接: http://www.ctimes.com.tw/DispCols/cn/Android/1012071145ZT.shtml
評論