您的位置:首页 > 移动开发 > Android开发

一个Android开发者的知识体系

2018-01-11 09:59 218 查看
开始写博客啦!!!
从事Android开发两年多以来,一直在忙着业务上的问题,很多知识慢慢淡出了我的视野。但是偶尔在和其他项目参与者进行沟通的时候,还是能感觉到自己在很多方面的不足。所以我希望给自己列一个知识结构,或者说是一些需要学习到或者需要了解到的内容。一方面可以让自己随时翻阅,回顾,同时也可以给需要的朋友们一点参考。
作为一个安卓开发者,我在工作中接触的大多都是Android的知识,又因为项目中可能使用了大量的第三方框架,导致我对基础知识掌握的不够深入。比如我使用retrofit+okhttp进行项目中网络请求的操作,确实很方便,后果也是很明显的,网络五层结构,Http,Socket,TCP/IP,这些内容我都知道,但是你要让我深入,要我直接使用socket进行通讯,对不起我真的不会。这就会大大限制我的可能性,我不想只是做一个API Player。
下面的知识是都需要的,重要性会有点区别,还是要立身于本。

重建自身知识体系:

操作系统

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