学习思维脑图
对应脑图学习笔记
Android 开发分成 :
1. "开发" 一般的开发技能
2. "移动应用开发" 移动应用开发相关概念思想
3. "Android 开发" 特指与 Android 开发直接相关知识技能
正如你可能所想的那样,这样的问题不像1 + 1等于2那样,有一个简单确切的答案.真正答案因人而异. 下面我以自己几年的Android 开发经验,与你分享一二,就按我上面所分解的几个方面来说一说:
一: 开发技能
你可以看成是一般的编程技能,这方面你可以从:
-
编程语言的熟练掌握
-
面向过程编程思想
-
面向对象的思想
-
函数式编程思想
-
设计模式
-
算法与数据结构
-
网络编程,TCP/IP 协议
-
重构
-
版本管理(Git 等)
-
等方面的检查和提高自己
二: 移动应用开发
你可以看成是 App 开发,估计这可能是你更感兴趣的,这方面你可以从: MVC 这成三个方面来对照检查下
M: 数据层
- 移动应用数据结构特点
- 数据存储 :SQLite数据库,文件存储
- 数据格式: XML 格式,JSON格式 序列化与反序列化
- 数据查询: 移动应用一般数据库主要是 用SQLite
- (说回来,单是 SQLite 数据库,就可以花不少时间来深入学习下,
- 因为对一个应用来说,数据基本是核心)
V: 视图层
- 移动应用界面特点
- 移动应用构建界面常用方法
- 移动应用交互特点
- 移动应用动画
- 系统 UI 系统特点,优点,缺点及局限
C: 控制层
- 移动应用控制层特点
- 控制层的生命周期
- 多线程,UI 线程,后台线程
E: 事件层
- 事件处理,触控事件,手势,事件响应链
三: Android 开发
工具篇 - 工欲善其事,必先利其器
- Android Studio 掌握用得怎么样了?
- Adb 及相关工具会用吗?
- Gradle 构建系统呢?
- 文档篇 - 看 Android 官方是怎么定义开发各种技能的.
相信常看 Android 开发者官方网站,你会收益良多,我下面写的也不必看了.
系统篇
- Android 多线程编程,异步编程特点 - Loop,Handler,IntentService,Broadcast,MessageQueue
- Android UI 框架特点,优势和不足
然后你再按 MVC 将 Android 各部分再分析分析,总结总结.
总结
写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个关于Flutter的学习思路及方向,从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。
由于内容较多就只放上一个大概的大纲,需要更及详细的学习思维导图的
还有高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter全方面的Android进阶实践技术资料,并且还有技术大牛一起讨论交流解决问题。