TCL 雏鹰飞翔计划·Android篇
本文出自:http://blog.csdn.net/dt235201314/article/details/63252425
一丶概述
最近意识到一个严重的问题,工作两年,很多时候都是为了完成任务去学一些知识,而不是掌握技术本身。以至于在准备面试相关知识时发现很多知识点都不能用自己的语言表达。没完全弄懂的表现。回想起之前莫哥(移动组领导),健哥(Android组组长),杰哥(前辈)之前制定的Android学习计划,用心良苦。决定复习相关知识,重新整理相关文章分享给大家。
二丶正文
学习计划1.0版
image.pngimage.png
image.png
image.png
刚看到这张表,师傅用心良苦,兴奋,还有阶段测试耶, 好怕怕哦
师傅:有什么要加的自己加上,不懂就问。
......
领导:驳回,整得跟培训表格一样。重写
学习计划2.0版:
2017年3月15日
一.制定目的
为了初级开发人员有清晰的学习方向,快速的掌握基础技能,使其能在最短时间内能有快速的提升,同时提高产出,通过与其本人沟通、以及现行掌握技能评估,特有针对性的制定本学习计划
二.技术评级
技术处于1年初级开发阶段,对基础知识有一定掌握,能在团队配合下完成部分功能开发
三.学习计划
学习计划主要从规范、基础技能、提升几部分进行。
1.开发规范
Adnroid开发规范与Java类似,可参考阿里巴巴开发规范文档
学习周期:1周
2.Java基础学习
Android上层应用,使用java语言开发,Java基础是必须掌握的
(1).OOP
多态、继承、封装、抽象是开发的核心思想,需要全面掌握, 可参考酷友数据 Adpater实现
学习周期:1周
(2).集合、枚举、泛型
集合分类,每种集合优缺点,包括线程安全性;枚举的使用场景和泛型使用
学习周期: 2周
(3).网络协议、IO流、数据解析
http/socket协议,POST/GET等请求方式,IO流学习,JSON/XML 数据解析以 及差异性
学习周期:3周
3.Android基础学习
开发一款APP首先应该掌握UI、本地存取操作、网络处理等相关知识。
(1).UI层
常用布局学习,关键控件如RecyclerView,ViewPager, 动画[属性动画/帧动 画], ToolBar/ActionBar的系统学习;组件学习 ,Activity,Service不同的启动方式,广播注册等
学习周期:2周
(2).文件操作
数据库Sqlite相关操作,常用的文件存取方式,以及实用场景学习[主要学习Sqlite,SD卡文件操作,SharedPre]
学习周期:1周
(3).通信模块
单线程,多线程通信方式,Handler 与UI Thread的交互,Handler接合子线程的使用
学习周期:2周
4.插件学习
git,gradle的使用, 是现在Android开发工具Studio需要掌握的
以上为初级开发工程师到中级开发需要掌握的基本技能,掌握了以上技能知识后,达到中级开发工程师水平,在项目中能独立完成模块功能开发。总学习时长12周,3个月
四、技能拓展
掌握了学习计划里的基本技能知识后,可学习以下技术来提高技能水平
1.设计模式
设计模式如工厂模式、单例模式、观察者模式等,都是项目中会经常使用的,好的设计模式的使用可提高代码维护和后续扩展性
2.网络协议原理
tcp/udp的学习,掌握协议原理,重连机制,对设计移动端网络架构和选型很有用处
3.事件分发与拦截
View事件分发机制和拦截,理解View的整个事件传递流程以及拦截过程
4.Vew绘制
View绘制原理学习,自定义view学习,自定义View属性
5.性能优化
APP性能优化,包括耗电、内存消耗等的优化处理
6.开源框架学习
开源框架学习,图片加载框架、网络框架等
以上是作为一个具有独立开发产品能力锁必须具备的知识积累,也是中级开发成长高级开发需要掌握的技能。
上述知识点在每一个项目中都会涉及到,也是一款大众APP都可能涉及到的知识点,在现有项目酷友数据中都有具体体现,学习过程中可参考学习,后续在项目中尝试使用。
终结考核版:
三丶考核结果与输出
一个B其他的都是A,博客输出见:
相关代码见:
https://github.com/JinBoy23520/CoderToDeveloperByTCLer
四丶鸣谢
特此感谢莫哥,健哥,杰哥制定的学习方案和考核。用心良苦,好人一生平安。