• Android开发的技术层次


    任何一种移动开发生态系统其技术人员都是呈现金字塔式分布的。

    也就是我们常说的大部分人都是开发人员,只有少数人是真正意义上的程序员。

    android系统也是一样,在庞大的android开发人员群体中,我认为可以由低到高分为以下四个层次:

    1)应用层开发

    使用java语言,基于android的框架和类库,进行应用层程序的开发。

    这类开发一般依赖于短期记忆,也就是我们所说的类库王子。

    这类人员,只要熟悉UI布局设计,熟悉常用的widget,写几个消息回调函数.

    鼓捣以下网络类,简单的数据库操作,调用一下播放器,发一下短消息。

    再用一哈比如Gallery这样表面上比较炫的类。

    这类开发人员一般自我感觉良好,比较自大,认为android开发也不过如此,

    2)中间层开发

    使用c/c++语言,基于NDK JNI方式的开发.

    需要对android的整体框架机制和android系统codebase非常熟悉.

    一般都会自己自己下载android的系统源代码,自己进行编译IMAGE.

    熟悉android系统的Custom building system.

    能修改和扩展android的框架和 服务.

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

    定制一套系统的UI,也就是给系统换肤。

    也就是我们国内所谓的自主研发的手机操作系统。

    这类开发人员一般属于稍微资深一点的,一般都有强烈的技术饥饿感,觉得自己懂的很少,不停的去提高自己。

    3)操作系统级别的开发,系统定制

    熟悉Linux驱动开发,Linux内核结构

    针对特定硬件的移植

    这类开发的技术含量其实和中间层开发差不太多,从某种意义上还不如。

    其实,驱动开发更主要的要求需要一定的硬件知识。

    这类开发人员一般式各大手机厂家的开发人员,由于接触的面比较窄,技术饥饿感不如中间层开发人员。

    4)找出Android的不足,帮助Google持续改进Android

    这种人是真正意义上的android程序员,他们会有选择的去阅读android框架源代码,会认真的去阅读dalvik的源代码。

    自身知识结构也比较成熟,知识面比较广。

    会很多上面三类人都不具有的调试和跟踪技巧。

    作者:观海看云个人开发历程知识库 - 博客园
    出处:http://www.cnblogs.com/zhangtao/
    文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    社群电商
    文字超出部分省略号显示······
    jq监听页面的滚动事件,
    input 更改 pleaseholder 的字体样式
    20161213 scrapy安装
    map按照value排序的方法
    Qt跨线程信号和槽的连接
    C++ map指针的使用
    Python 高级进阶
    [转]解读C指针(5)——笔试题解析
  • 原文地址:https://www.cnblogs.com/zhangtao/p/2347518.html
Copyright © 2020-2023  润新知