注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Crayon

只想做自己

 
 
 

日志

 
 

学好Android开发的基石  

2011-08-06 01:22:17|  分类: 游戏 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

  编程语言基石

  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代码空间的切换

  评论这张
 
阅读(436)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017