posts - 189,comments - 115,trackbacks - 0
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(35)

          我參與的團隊

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          Android

          BLOGS

          Econormic

          Friend-Blog

          Guitar

          J2ME

          JAVA

          Linux

          Linux_driver

          MUSIC

          MY--BLOG

          NET

          NEWS

          ORACLE

          Project

          SOFT

          STUDY

          Sutra<==>Research

          SVN

          Translate

          Vim

          在線翻譯

          娛樂

          文檔教程

          考研

          裝修

          軟件開發

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

           

          Android開發的技術層次

           

           

          http://blog.csdn.net/theorytree/article/details/6649825

           

          任何一種移動開發生態系統其技術人員都是呈現金字塔式分布的。

          也就是我們常說的大部分人都是開發人員,只有少數人是真正意義上的程序員。


          android系統也是一樣,在龐大的android開發人員群體中,我認為可以由低到高分為以下四個層次:


          1)應用層開發


          使用java語言,基于android的框架和類庫,進行應用層程序的開發。

          這類開發一般依賴于短期記憶,也就是我們所說的類庫王子。

          這類人員,只要會UI布局,熟悉常用的widget,寫幾個消息回調函數.

          鼓搗以下網絡類,簡單的數據庫操作,調用一下播放器,發一下短消息。

          再用一哈比如Gallery這樣外行看起來表面上比較炫的類。


          這類開發人員一般自我感覺良好,比較自大,認為android開發也不過如此。

          這類技術門檻很低,這類開發人員中的真正的熟手和高手,是充分熟悉官方文檔的,已經過了什么都去GOOGLE的階段,達到了查什么都直接去查

          http://developer.android.com/reference/packages.html  的地步。

          而且在大腦中已經形成了一個官方文檔的索引,查什么都能達到幾乎勻速的地步。


          充分利用好官方文檔,全部類庫在大腦中有比較有條路的記憶,告別了短期雜亂無章的記憶。


          成為了一個高級的“類庫王子”。


          2)中間層開發


          使用c/c++語言,基于NDK JNI方式的開發.

          需要對android的整體框架機制和android系統codebase非常熟悉.

          一般都會自己自己下載android的系統源代碼,自己編譯IMAGE.

          熟悉android系統的Custom Building System.

          能修改和擴展Android的框架和 服務.

          移植和定制nativelibray 和框架 ,如opencore,opengl,webkit

          定制一套系統的UI,制作點ROM

          也就是我們國內所謂的自主研發的手機操作系統。


          這類開發人員一般屬于稍微資深一點的,一般都有強烈的技術饑餓感,覺得自己懂的很少,不停的去提高自己。


          3)操作系統級別的開發,系統定制

          熟悉Linux驅動開發,Linux內核結構

          針對特定硬件的移植

          這類開發的技術含量其實和中間層開發差不太多,從某種意義上還不如。

          其實,驅動開發更主要的要求需要一定的硬件知識。

          這類開發人員一般式各大手機廠家的開發人員,由于接觸的面比較窄,技術饑餓感不如中間層開發人員。



          4)找出Android的不足,幫助Google持續改進Android

          這種人是真正意義上的android程序員,他們會有選擇的去閱讀android框架源代碼,會認真的去閱讀dalvik的源代碼。

          自身知識結構也比較成熟,知識面比較廣。

          會很多上面三類人都不具有的調試和跟蹤技巧。

          這些多,多半也精通其他平臺,比如Symbian,Meego,IOS,WP

          甚至Windows NT, Linux  edition for Server.


          posted on 2011-08-02 09:36 MEYE 閱讀(318) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 五河县| 鄂托克旗| 博野县| 望江县| 白玉县| 南开区| 久治县| 增城市| 西乡县| 桦南县| 寿光市| 北票市| 平远县| 广安市| 昌宁县| 连州市| 大连市| 辽中县| 准格尔旗| 潜山县| 开原市| 饶阳县| 西安市| 宜宾市| 崇阳县| 安平县| 眉山市| 沧州市| 古蔺县| 永吉县| 大城县| 翁源县| 吴堡县| 江源县| 卓资县| 兰考县| 察隅县| 定结县| 马公市| 泉州市| 灵璧县|