支持国产操作系统国产应用!

捉蛋网

当前位置: 捉蛋网>教程>Android开发>

学好Android开发的基石

时间:2013-06-05 16:34来源: 作者: 点击:
  编程语言基石

  Java:这是Android Application和Framework的语言支柱
  C:Native 部分代码使用C语言实现,包括JNI的Native Code
  C++:Native很多代码使用C++实现
  JNI:包括Java Call Native Code 和 Native Call Java Code。 Android中经常出现Java 和 Native 代码空间的切换
  Assemble:除非你想学习Linux Kernel, Driver等Kernel Space的内容
  GNU Make:Android设计了很好的Make 系统,基本了解一下Android的Make系统即可,依样画瓢。
  PerL and other Script:Optional

  通用知识面基石

  XML:必要
  OS Basic Concept:such as Process, Thread, RPC, IPC, etc
  Linux OS/Programming Basic Concept:Such as Linux File/IPC/Thread/etc  Mechanism and API:Android源码中大量调用了Linux API。
  Design Pattern: MVC/Factory Pattern/Observer Pattern/Etc: 必要: 对于理解Framework中很多组件的设计和使用有帮助
  Data Base: SQL Query Language: 必要

  Android特有重要机制基石

  BinderIPC:包括Java和Native层,只有掌握了BinderIPC,才能在阅读代码时,当发生RPC调用时,能够跨进程阅读真正调用到的代码
  Looper/Handler/Etc:因为Android中封装了Java的Thread机制,所以,只有掌握Android中新的Thread机制,才能在阅读代码中,清楚的了解当前代码运行的线程。

  专业领域基石

  如网络,图像,安全等:Optional: 这部分和Android本身没有关系,任何平台上涉及专业领域的内容,肯定必须要求阅读者掌握相关领域的知识才能阅读。所以,这部分仅仅针对有这方面需要的人。

  阅读代码时时刻掌握Context(运行上下文)

  由于Android中涉及了线程,进程,以及不同的代码空间。所以,在阅读代码时,应该时刻关注以下几点:
  1. 时刻关注当前代码运行的进程,线程(MainUI 线程,Binder线程,或者其他线程)以及代码空间(Java,Native)
  2. 时刻关注进程,线程,代码空间的边界, 如线程的创建/终止/切换, 进程的创建/终止/切换,Java代码与Native代码空间的切换

(责任编辑:捉蛋网-刷机)
............................................................................................... ...............................................................................................

 

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------