一个Android开发者的知识体系

开始写博客啦!!!

从事Android开发两年多以来,一直在忙着业务上的问题,很多知识慢慢淡出了我的视野。但是偶尔在和其他项目参与者进行沟通的时候,还是能感觉到自己在很多方面的不足。所以我希望给自己列一个知识结构,或者说是一些需要学习到或者需要了解到的内容。一方面可以让自己随时翻阅,回顾,同时也可以给需要的朋友们一点参考。

作为一个安卓开发者,我在工作中接触的大多都是Android的知识,又因为项目中可能使用了大量的第三方框架,导致我对基础知识掌握的不够深入。比如我使用retrofit+okhttp进行项目中网络请求的操作,确实很方便,后果也是很明显的,网络五层结构,Http,Socket,TCP/IP,这些内容我都知道,但是你要让我深入,要我直接使用socket进行通讯,对不起我真的不会。这就会大大限制我的可能性,我不想只是做一个API Player。

下面的知识是都需要的,重要性会有点区别,还是要立身于本。

重建自身知识体系:

  • 操作系统
  • 计算机网络
  1. 了解大概的OSI七层结构。
  2. 熟悉TCP/IP的四层结构,了解每一层的工作原理。
  3. 熟悉HTTP协议,了解TCP协议的基本内容,以及TCP连接的建立和释放过程,知道原因。
  4. 会使用Android提供的URLConnection进行常规的网络请求,如GET,POST(包括文件的上传)请求等。
  5. 了解Socket通讯,知道如何使用Socket进行通讯,如使用socket进行HTTP通讯。
  • 数据结构与算法
  • 数据库
  • 设计模式
  • java基础
  • Android基础:下面的每一块儿都包含有深层次的知识,可以根据需要和自己的能力步步为营,深入学习
  1. 了解四大组件,如Activity的生命周期、状态的保存、启动模式等等。Activity基础
  2. 了解常用布局,常用控件的使用。
  3. 了解网络基础,了解图片加载技术。
  4. 能进行简单的自定义View。
  5. 了解drawable,可以进行常用drawable的开发。
  6. 了解消息机制。
  7. 了解Android中的线程和线程池。
  8. 了解Android中的动画,能进行简单动画的开发。
  9. 了解数据存储,文件,SharedPreference,SQLite以及基本的数据库知识。
  10. 简单常用的性能优化知识
  11. 熟练使用第三方SDK进行开发,如Retrofit+okHttp,Glide,GreenDao,Gson,EventBus,RX系列,分享,支付,地图等等的使用
  12. 其他开发常用的可能比较零碎的知识或者特定领域的知识,如相机开发,传感器开发,手势控制等等。
  • Android进阶
  1. 四大组件的细节知识
  2. IPC机制
  3. View的原理,动画的原理
  4. WIndow,WindowManager,WindowManagerService等等
  5. JNI,NDK开发
  6. Android性能优化
  7. 学习源码,等等等等


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值