安全攻防与底层交互大纲

安全攻防与底层交互

《安全攻防与底层交互》教学大纲

第1单元 SVN以及SVN China,以及组件化 10
第2单元 arouter,calces的使用 11
第3单元 mvp架构,dagger2,butterknife的使用 12
第4单元 rxjava,rxandroid,retrofit的使用 12
第5单元 rxpermissions,rxlifecycle的使用 14
第6单元 补间动画以及帧动画使用 14
第7单元 属性动画以及差值器以及svg动画 15
第8单元 自定义view,自定义属性以及view绘制流程,touch事件分发 15
第9单元 抽屉菜单以及上下拉刷新framelayout实现 16
第10单元 matrix,photoview的基本使用 17
第11单元 pickerview,autolayout的基本使用 18
第12单元 eventbus以及design的使用 18
第13单元 zxing,leaks的使用 19
第14单元 支付宝,加密以及token的使用 20
第15单元 junit以及云测试平台使用的使用 21
第16单元 百度地图,七牛云平台使用 22
第17单元 原生环信SDK接入 23
第18单元 仿马蜂窝客户端用户模块编写 23
第19单元 仿马蜂窝商城模块编写以及支付流程实现 24
第20单元 仿马蜂窝项目完结 25

一、 课程教学目标

(一)知识目标(学什么知识)
1.SVN以及SVN China,以及组件化
2.掌握arouter,calces的使用
3.mvp架构,dagger2,butterknife的使用
4.rxjava,rxandroid,retrofit的使用
5.rxpermissions,rxlifecycle的使用
6.补间动画以及帧动画使用
7.属性动画以及差值器以及svg动画
8.自定义view,自定义属性以及view绘制流程,touch事件分发
9.抽屉菜单以及上下拉刷新framelayout实现
10.matrix,photoview的基本使用
11.pickerview,autolayout的基本使用
12.eventbus以及design的使用
13.zxing,leaks的使用
14.支付宝,加密以及token的使用
15.junit以及云测试平台使用的使用
16.百度地图,七牛云平台使用
17.原生环信SDK接入
18.仿马蜂窝客户端编写

(二)能力目标(学完知识后能做什么)

  1. 能够使用svn版本控制工具。
  2. 能够使用MVP架构
  3. 能够使用RX全家桶
  4. 能够进行基本自定义View
  5. 能够熟练使用补间动画帧动画,属性动画,svg动画
  6. 能够熟练使用Design 材料包
  7. 能够使用dagger2,butterknife注解类框架。
  8. 能够进行组件化开发。
  9. 能够使用加密算法解决网络通信中的数据安全问题。
  10. 能够使用支付宝支付。
  11. 能够使用IM通信。
  12. 能够播放短视频。
  13. 能够独立编写完成仿马蜂窝客户端。

(三)速度目标(做到什么程度,又快又好)
整体考核目标:一周时间单独完成一个十个案例,其中包括:需求分析、表设计、流程图、代码实现。功能包括:欢迎页面、影评、美文、美图、我的、等模块

细化考核目标:
1. 一小时内完成UI布局。
2. 两小时内完成获取数据功能。
3.一小时内完成欢迎页面和首页框架搭建。
4.五小时内完成 “影评”功能。
5.三小时内完成 “美文”功能。
6.一小时内完成 “美图”功能。
7.三个小时内完成 “我的”功能
效果图如下:

二、 课程教学内容

(一)教学内容及考核要求

第1单元 SVN以及SVN China,以及组件化
【单元目标】
1.1 SVN介绍以及SVN China介绍
1.2 SVN插件安装,SVN China账号创建
1.3 SVN提交同步,冲突解决
1.4 SVN回滚,组件化配置
【考核标准】
理论目标:

  1. 用Xmind画出SVN的相关操作
  2. 熟悉SVN常见操作
  3. 熟悉企业级开发版本管理流程
  4. 使熟悉SVN版本冲突处理
    技能目标:
    1.熟悉SVN常见操作
    2.熟悉企业级开发版本管理流程
    3.使熟悉SVN版本冲突处理

第2单元 arouter,calces的使用
【单元目标】
2.1 Gradle文件配置说明介绍
2.1.1 compile,api,implementation的使用
2.1.2apply plugin: 'com.android.application’与apply plugin: 'com.android.library’的使用以及判断
2.2 Calces原理介绍以及组件化配置
2.2.1 Calces原理
2.2.2 Calces的配置
2.3 Arouter框架配置以及应用内跳转
2.3.1Arouter框架配置
2.3.2Arouter组件内跳转以及传参
2.3.3Arouter 控制反转
2.4 Arouter框架组件间跳转以及IProvider 使用
2.4.1Arouter组件间跳转
2.4.2Arouter组件间Fragment获取
2.4.3Arouter 组件间工具类调用
【考核标准】
理论目标:

  1. 用Xmind画出Gradle基本语法以及配置
  2. 补间动画的使用
    技能目标:
    1.30分钟实现将一组图片, 通过帧动画播放出来
    2.1小时实现补间动画的移动,缩放,旋转,透明度,以及动画合集 的小案例

第3单元 mvp架构,dagger2,butterknife的使用
【单元目标】
3.1 mvp架构模式原理
3.1.1 mvp架构图
3.1.2 mvp与mvc区别
3.2.3 企业级项目如何架构mvp
3.2 butterknife查找控件,设置监听使用
3.2.1 butterknife基本使用
3.2.2 butterknife在Fragment中使用
3.3 dagger2框架的基本使用
3.3.1dagger2基本配置以及使用
3.3.2 @Inject @Singleton @Module complete的使用
3.4 mvp框架中dagger2以及butterknife框架的使用
【考核标准】
理论目标:

  1. 用Xmind画出MVP架构
  2. 用Xmind划出MVP相互数据对象传递过程
  3. Butterknife执行过程
  4. Dagger 构建过程
    技能目标:
    1.搭建马蜂窝mvp手机客户端框架

第4单元 rxjava,rxandroid,retrofit的使用
【单元目标】
4.1 Retrofit框架的基本使用
4.1.1 Retrofit 基本配置以及使用
4.1.1 retrofit GET POST 请求以及上传下载
4.2 Retrofit框架封装配置
4.2.1 retrofit+okhttp+gson 封装以及使用
4.3 Rxjava基本使用与操作符
4.3.1 RxJava 配置以及使用
4.3.2 RxJava just flatmap merge等操作符使用
4.4 Rx全家桶的配置以及使用
4.4.1 retrofit+okhttp+gson+RxJava 封装以及使用
4.4.2 Okhttp拦截器,超时,baseUrl,封装设置

【考核标准】
理论目标:

  1. 用Xmind画出Rx全家桶请求过程
  2. 用Xmlind画出rx全家桶二次封装
  3. Okhttp拦截器拦截过程

技能目标:

  1. 马蜂窝项目网路请求框架二次封装
  2. svn 代码仓库创建初次提交
  3. 测试get post 以及上传功能

第5单元 rxpermissions,rxlifecycle的使用

【单元目标】
5.1 6.0动态权限使用
5.1.1 6.0动态权限汇总说明
5.1.2 6.0 动态权限申请获取
5.2 rxpermission的使用
5.2.1 rxpermission配置以及使用
5.3 rxlifecycle的使用
5.3.1 rxlifecycle的基本配置
5.3.2 rxlifecycle关联声明周期方法
5.4 mvp中使用rxpermission与rxlifecycle
5.4.1 presenter中配置rxlifecycle关联activity
【考核标准】
理论目标:
1.用Xmind画出动态权限申请过程
2.Rxpermission 使用过程
3.Rxlifecycle使用过程
技能目标:

  1. 配置项目中需申请的动态权限
  2. 配置网络框架下rxlifecycle
    第6单元 补间动画以及帧动画使用
    【单元目标】
    6.1Android中动画的使用
    6.2帧动画的使用
    6.2.1 XML 中生成帧动画以及使用
    6.2.2 java创建帧动画使用以及设置循环
    6.3补间动画xml中创建使用
    6.3.1 xml中创建 位移,旋转,渐变,缩放动画
    6.3.2 xml 中插值器使用以及循环,时间的设置
    6.4补间动画在java中创建使用
    6.4.1 java 中创建 位移,旋转,渐变,缩放动画
    6.4.2 差值器使用
    6.4.3 组合动画使用
    【考核标准】
    理论目标:
  3. 用Xmind画出动画的种类
  4. 用Xmind画出界面切换动画实现步骤
  5. 用Xmind画出下拉框动画实现步骤
    技能目标:
    1.编写马蜂窝下拉刷新动画,网络请求等待动画
    2.编写马蜂窝首页列表
    第7单元 属性动画以及差值器以及svg动画
    【单元目标】
    7.1 属性动画基本使用
    7.1.1 ValueAnimator使用
    7.1.2 ObjectAnimator使用
    7.2 插值器使用
    7.2.1 LinearInterpolator的使用
    7.2.2 AccelerateInterpolator的使用
    7.2.3 CycleInterpolator 的使用
    7.3 svg动画使用
    【考核标准】
    理论目标:
  6. 用Xmind画出属性动画插值器
  7. 用Xmind画出View动画和属性动画区别
    技能目标:
    1.马蜂窝北京列表编写
    第8单元 自定义View与Touch事件分发
    【单元目标】
    8.1 View的绘制流程
    8.1.1 onMeasure() onLayout() onDraw() 执行顺序以及View与ViewGroup绘制区别
    8.1.2 MeasureSpec 三种测量模式区别
    8.1.3 getMeasureWidth()与getWidth()区别
    8.2 自定义属性
    8.3 自定义view绘制基本图形
    8.3.1绘制文字,圆形,环形,线
    8.4 Touch事件分发
    8.4.1 Touch事件分发
    8.4.2 View与ViewGroup分发异同
    【考核标准】
    理论目标:
  8. 描述Android中View绘制流程
  9. 描述Android中Touch事件分发
    技能目标:
    1.手写歌词滚动特效。
    2.编写马蜂窝攻略列表页。

第9单元 抽屉菜单以及自定义上下拉刷新
【单元目标】
9.1 自定义抽屉菜单实现
9.2 自定义上下拉刷新framelayout实现
【考核标准】
理论目标:

  1. 描述抽屉菜单原理
  2. 描述listview上下拉刷新原理
    技能目标:
    1.手写抽屉菜单
    2.手写Pulltorefresh上下拉刷新特效
    3.完成攻略目录界面
    第10单元 matrix,photoview的基本使用
    【单元目标】
    10.1 matrix的基本使用
    10.1.1 Matrix缩放
    10.1.2 Matrix旋转
    10.1.3 Matrix位移
    10.1.4 Matrix倾斜
    10.2 图片倒影效果实现
    10.3 PhotoView效果实现
    【考核标准】
    理论目标:
  3. 描述图片倒影原理
  4. 描述双指方法原理
    技能目标:
    1.完成马蜂窝攻略详情界面
    2.手写双指放大特效

第11单元 pickerview,autolayout的基本使用
【单元目标】
11.1 pickerview的使用
11.2 autolayout的使用
【考核标准】
理论目标:

  1. 利用Xmind 说明pickerview原理
  2. 利用Xmind 说明 autolayout原理
    技能目标:
  3. 完成马蜂窝中定位功能
  4. 完成马蜂窝中所在地列表页
  5. 完成所在地列表页中短视频播放

第12单元 eventbus以及design的使用
【单元目标】
12.1 eventbus的基本使用
12.1.1 有序广播
12.1.2 粘滞广播
12.2 design的使用
12.2.1 FloatingActionButton 使用
12.2.2 NavigationView
12.2.3 CoordinatorLayout
12.2.4 CollapsingToolbarLayout
12.2.5 AppBarLayout
【考核标准】
理论目标:
1.利用Xmind说明eventbus的原理机制
2.说明design下常用控件以及效果以及使用情况
技能目标:

  1. 马蜂窝中集成eventbus通信模块
  2. 完成马蜂窝中定位所在地模块功能

第13单元 ZXing Leaks使用
【单元目标】
13.1 Zxing的使用
13.2 Leaks的基本使用
【考核标准】
理论目标:

  1. 利用Xmind 说明Zxing的使用步骤
  2. 利用Xmind 说明Leaks的部署步骤
    技能目标:
    1.游记详情编写
    2.扫码流程,Leaks部署

第14单元 支付宝,加密以及token的使用
【单元目标】
14.1 base64作用
14.2 rsa加密以及公钥私钥生成(非对称加密)
14.3 md5加密(数字证书)
14.4 sign的生成以及原理
14.5 token的生成以及原理
14.6 支付宝sdk接入,沙箱环境支付
【考核标准】
理论目标:

  1. 利用Xmind 说明Sign Token 加密之间区别
  2. 利用Xmind 说明Sign使用流程
  3. 利用Xmind 说明Token使用流程
  4. 利用Xmind 说明支付流程
    技能目标:
    1.酒店模块编写

第15单元 Junit以及云测试平台使用的使用

【单元目标】
16.1 Junit测试用例编写:单元测试(逻辑、功能)
16.2 Monkey基本命令(压力测试)
16.3 Memory以及FindBus使用(内存、CPU使用)
16.4 百度云测试平台使用(兼容适配)
【考核标准】
理论目标:
1.利用Xmind描述monkey常用命令
2.用Xmind画出Junit测试用例
技能目标:

  1. 订酒店功能完成
    第16单元 百度地图七牛云
    【单元目标】
    16.1 百度地图接入
    16.1.1定位功能实现
    16.1.2 基本地图实现
    16.1.3 绘制所在位置
    16.1.4 反地理编码功能
    16.1.5 电子围栏功能实现
    16.2 七牛云接入
    16.2.1 短视频采集
    16.2.2 短视频播放
    16.2.3 直播推流
    16.2.4 直播拉流
    【考核标准】
    理论目标:
  2. 利用Xmind描述百度地图接入步骤
  3. 利用Xmind描述七牛云接入流程
  4. 利用Xmind描述视频推流拉流
    技能目标:
    1.完成旅行商城模块编写

第17单元 环信SDK接入以及使用
【单元目标】
16.1 环信SDK开发注册
16.2 环信SDK接入
16.3 环信SDK登录退出聊天功能实现
16.4 企业级开发使用环信SDK流程图
【考核标准】
理论目标:
1. 利用Xmind 说明环信SDK通信流程
2. 利用Xmind 说明环信接入步骤
3. 利用Xmind 说明IM通信过程
技能目标:

  1. 消息模块编写
    第18单元 马蜂窝客户端用户模块编写
    【单元目标】
    17.1 用户模块编写
    【考核标准】
    理论目标:
    技能目标:
  2. 用户模块编写

第19单元 马蜂窝商城模块编写以及支付流程实现
【单元目标】
18.1 购物模块实现
18.2 支付宝以及微信接入
18.3 企业级商城购物流程图
【考核标准】
理论目标:
1.使用Xmind 绘制支付流程
技能目标:

  1. 支付功能实现
    第20单元 马蜂窝项目完结
    【单元目标】
    20.1 项目各模块连接调试
    20.2 uml图绘制
    20.3 打渠道包
    20.4 墨刀流程图绘制
    【考核标准】
    理论目标:
    1.描述APK签名的步骤,15分钟内完成
    2.描述APK权限的获取方法,10分钟内完成
    3.描述非对称加密的过程,10分钟内完成
    4.描述公钥和私钥的加密过程,20分钟内完成
    5.用Xmind画出动态申请权限思维导图,10分钟内完成
    技能目标:
  2. 20分钟内完成给一个APK进行签名、混淆、打包的功能。

你可能感兴趣的:(大纲)