Android开发进阶之路
不知觉中工作已过7载,项目闲暇之余,忽想给自己一个定位,看到大牛们对程序员的分类:初级程序员,中级程序员,高级程序员,技术专家,
CTO,想把自己定位为高级程序员,发现少了一些自信,定位为中级程序员又觉得丢人,于是乎临时抱佛脚的想法油然而生,梳理了一下Android开发的知识点准备进行恶补,关键在于知识的深度,知识广度在于平时游荡于各种论坛,人人都是产品经理之类,慢慢积累吧,知识的深度体现了作为一个技术人对技术的热爱程度,不爱编程的肯定对技术的深度有所欠缺,需要激情的,兄弟,要耐得住寂寞.....
什么时候废话这么多了,言归正传,以下提纲实为冲动所想,深入学习之后会有所调整,Android基础就不列出了,不会在偷偷恶补吧(怕丢人)。搞技术的是不是都很好面子?
1、进程之间的实例共享,单例,静态变量等。源于项目中的一个大大的错误,虽然没有报严重错误,但是感到羞耻,有必要深入研究;
2、Android多线程实现方式:
2.1. Android自身提供的方式
- Handler,Messager,Looper
- AsyncTask
- Activity.runOnUIThread(Runnable)
- View.post() View.PostDelay
- Loader
2.2. 第三方实现的框架
- RxJava/RxAndroid
3、Android进程间通信
3.1. Android自身提供的实现方式
- AIDL
- Binder
3.2. 第三方框架
- EventBus
- Hermes
- HermesEventBus
4、图片加载缓存
4.1. Android提供的实现方式
- LruCache
4.2. 第三方框架
- ImageLoader
- Glide
- Fresco
- Picasso
5、HTTP框架
- HTTPURLConnection
- HTTPClient
- OKHTTP
- Volley
- AsyncHttpClient
- Xutils
- Afinal
- Retrofit
6、Android动画原理
- Frame Animation
- Tween Animation
- Property Animation
- Activity切换动画
- ViewPager等页面切换动画
- ViewGroup子View加载动画LayoutAnimation
- 自定义View动画(github)
- openGL
- SurfaceView
7、自定义View方式
- 组合控件
- 自绘控件View.onDraw()
- 继承现有控件
8、内存优化回收
9、Android常用设计模式
- MVC
- MVP
- MVVC
10、Android Framework
- AMS
- PMS
- Camera框架
- Audio框架
11、开发工具
- Android Studio
- Eclipse
- IDEA
- Ant
- maven
- gradle
- svn
- git
12、Java
- Java容器,算法
- Java并发
- Effective Java
- Java虚拟机
- 常用设计模式
- 反射(利器)
13、web开发
- HTML
- AJAX
- CSS
- JavaScript
- Json(Gson什么鬼)
- xml
- Spring
- Apache
- Tomcat
- Jboss
- nginx
14、脚本开发
- python
15、JNI
16、Android apk相关知识
- 签名
- 打包
- apk压缩(图片,so,代码)
- 混淆
17、代码质量
18、IT基础知识
- 计算机网络
- 操作系统
- 数据加密(公钥加密,证书……)
- 数据库(sqlite,mysql)
19、再写就要转行了,以后再补充吧…….
不要重复造轮子,醒醒吧少年,你连高级程序员都没自信,研究透上面那些技术先。
不自信的程序员
2016-12-27