本文出自:http://blog.csdn.net/dt235201314/article/details/63252425
一丶概述
最近,领导和师傅在百忙之中抽出时间给我出了一份学习计划,甚是感激,正逢高考即将到临,心里也是慌慌的,得开启“第三轮复习”,“高考改变人生”。
二丶正文
学习计划1.0版
模块 | 分类 | 知识点 | |||
java基础 | |||||
1.开发规范系统学习 | 命名规范 | 1.包名定义规范 2.类命名名规范 3.参数命名规范 4.常量命名规范 |
|||
格式规范 | 1.换行 2.代码缩进 |
||||
注释规范 | 1.类,方法,属性注释 2.方法内部代码块注释 3.已有代码修改记录注释 |
||||
2.基础知识 | 常量和变量 | 1.认识java中的基础数据类型 2.类型自动转换和强制转换 3.属性变量,静态变量,构造方法内部变量初始化顺序 |
|||
流程控制 | 1.if else 条件运算 2.switch运算 3.do while运算 4.for 运算 5.循环跳转continue及break |
||||
封装 | 1.访问修饰符及关键字this 2.内部类学习 |
||||
继承和多态 | 1.继承初始化顺序及super使用 2.接口使用 |
||||
阶段性测试题一 | 以车为原型编写一个示例,完成小明一周五天不同的出行工具,要求体现以上知识点 | ||||
Java进阶 | 集合 | 1.了解集合原理,集合优化 2.List,Map,Tree等不同数组的优缺点及安全性 |
|||
枚举 | 1.枚举的原理及使用场景 2.Enum定义构造函数及参数 |
||||
泛型 | 1.泛型的定义及使用 2.泛型类、泛型接口、泛型方法的使用 |
||||
设计模式 | 常见设计模式学习,如工厂模式、单例模式、观察者模式,适配器模式等 | ||||
阶段性测试题二 | 1.冒泡排序,选择排序,快速排序对一组随机数进行排序 2.使用枚举初始化不同的类 |
||||
网络 | 1.tcp/udp原理分析 2.socket与http通讯对比分析 |
||||
线程 | 1.Thread Runnable区别 2.线程的不同状态 3.线程池分类 4.线程池和单线程对比分析 |
||||
IO流 | 1.IO流分类 2.输入流输出流 3.断点续传 |
||||
JSON/XML解析 | 1.xml不同解析方式对比 2.JSON解析get opt方式区别 3.JSON xml解析优缺点分析 |
||||
阶段性测试题三 | 1.分别用http和socket方式实线文件拷贝 2.分别用json/xml解析字符串成对应的对象 |
||||
Android | |||||
Android基础 | 基础组件 | 1.Activity启动模式、生命周期 2.Fragment生命周期及使用方式 3.广播注册方式及不同方式作用域 4.服务创建方式 5.contentprovider使用场景及原理分析 |
|||
UI控件 | 1.不同layout使用场景 2.listview 与RecyclerView 3.ActionBar, ToolBar标题栏 4.属性动画,帧动画 5.viewPager 6.include merge viewStub的使用 7.不同控件触摸点击监听事件 |
||||
阶段性测试题四 | 模仿微信首页,使用viewpager + fragment | ||||
文件存储 | 1.文件存储方式 2.数据库版本维护、字段新增 3.sqlite 常用语法 4.本地文件访问 5.联系人等信息访问 6.SharedPreferences使用场景 |
||||
通信 | 1.不同Activity跳转通信 2.进程间通信 3.Hander 使用原理分析 4.网络通信 5.子线程跟新UI方式 |
||||
阶段性测试题五 | 模仿聊天页面,输入聊天信息,显示到UI,并保存到数据库中 | ||||
Android进阶 | View绘制 | 1.View绘制原理 2.onMeasure, onLayout, onDraw 3.自定义View属性 |
|||
事件分发 | 1.点击屏幕到view捕捉事件流程 2.事件分发机制 3.事件拦截机制 4.事件冲突处理机制 |
||||
版本特性 | 1.不同SDK版本特性 2.权限申明 3.新增API |
||||
主题样式 | 1.Material Design 主题样式 2.主题切换 3.不同UI主题动态设置 |
||||
开源 | 1.常见网络开源库 2.常见图片处理开源库 3.常用工具开源,如Gson等 |
||||
性能优化 | 1.耗电优化 2.内存优化 3.网络优化 |
||||
架构设计 | 1.常见设计模式学习,MVP,MVVM等 2.搭建Android项目架构学习 |
||||
阶段性测试题六 | 开发一款新闻客户端 |
刚看到这张表,师傅用心良苦,兴奋,还有阶段测试耶, 好怕怕哦
师傅:有什么要加的自己加上,不懂就问。
......
领导:驳回,整得跟培训表格一样。重写
学习计划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都可能涉及到的知识点,在现有项目酷友数据中都有具体体现,学习过程中可参考学习,后续在项目中尝试使用。
终结考核版:
学习计划考核表 | |||||||
考核人 | 岗位 | Android初级开发工程师 | |||||
基础技能考核 | |||||||
考核主项 | 考核细项 | 学习时间 | 考核标准 | 考核结果 | 考核人 | ||
开发规范 | 开发规范 | 3.20-3.24 | 根据技能掌握程度, 以及在项目中的使用熟练度输出考核结果 掌握情况标准: A-完全掌握 B-掌握良好 C-基本掌握 D-掌握较差 |
||||
java基础学习 | OOP的深入理解 | 3.27-3.31 | |||||
集合、枚举、泛型 | 4.3-4.14 | ||||||
网络协议、IO流、文件解析 | 4.17-5.5 | ||||||
安卓 | UI层 | 5.15-5.26 | |||||
文件操作 | 5.22-5.26 | ||||||
通信模块 | 6.5-6.23 | ||||||
插件学习 | 以上学习中持续学习 | ||||||
附加技能考核 | |||||||
考核主项 | 考核细项 | 考核标准 | 考核结果 | 考核人 | |||
技能提升项 | 设计模式学习 | 作为附加技能提升,主要考核是否有相关了解,能否在后期项目中加以使用 A-掌握良好 B-基本理解 C-掌握较差 |
|||||
网络协议原理 | |||||||
事件分发与拦截 | |||||||
Vew绘制 | |||||||
性能优化 | |||||||
开源框架学习 | |||||||
最终考核结果: | |||||||
备注: |
考核版都出来,摆正态度,加油搞,挣拿A
严肃对待,基础确实没达到熟练。
学习前并并没经历过实战,想不明白如何把知识用在项目上
现在进入项目,做的工作是,通过任务,寻找demo,搬到项目上,似乎也没弄明白知识点是怎么回事
回归复习,博客定向输出总结(后面要做的事),demo呈现,组织自己的面试题答复语言。
雏鹰飞翔计划 Android版 奉上
飞得更高