zoukankan      html  css  js  c++  java
  • Android读书计划

    人最怕的是,没有方向!

    1.楔子:

    本人接触Andrjoid开发也有一年多了,期间在一家外包公司独立开发了五六个项目。虽谈不上大牛,但自认小有所成。平时没什么爱好,就喜欢看看技术博客,试验各种开源代码,写写学习笔记。

    最近感觉有点陷入瓶颈了,进步甚慢,却又不知该如何进一步提升自己。对于开发中遇到的很多问题,虽有所领悟,然不够系统,一些小知识点,也常有遗漏。觉得是时候系统的反思一下自己的知识体系了,于是决定制定一个回顾计划,综合自己看的博客、书籍,以及自己的开发实践,对一些常用的知识点进行整理。

    其实以前也常写点笔记,分享到技术交流群,不过,觉得博客比笔记,更能激起自己的写作兴趣一些。拥有一个好的技术博客,我想,对于自己以后换工作啥的,也可以加点分吧。有时翻看自己以前的笔记,看着那一两百篇的笔记,真是满满的成就感。不过当时写笔记太随意了些,这次回顾,就是在过去笔记的基础上,查漏补缺,去粗取精,合并同类,以臻完美!

    看博客多了,就会发现,博客太碎片了。零敲碎打,只能缝缝补补,却难以做为建立个人知识体系的主要渠道,于是回顾计划以看书为主,博客为辅,同时,对每个知识点,都必须在代码中测试一边,因为之前的阅读经验告诉我:如果只是泛泛而看,不去实践感受一下,也不及时做下笔记,很快就忘了,到时候真要用了,还得回过头来再重新看一遍。

    2.书单:

    第一阶段:疯狂Java讲义、疯狂Android讲义 目标:查漏补缺,温故知新 期限:2月
    第二阶段:Android群英传、Andrjoid开发艺术探索 目标:把握Android重难点技术,深挖吃透 期限:2月
    第三阶段:Think in Java、Effective Java 目标:健壮高效,提升Java功力 期限:2月
    第四阶段:设计模式之禅、Android源码设计模式解析与实战 目标:拥抱变化,理解设计模式 期限:2月 
    第五阶段:Git权威指南、Gradle User Guide 目标:学会版本管理,提升编译效率 期限:2月
    第六阶段:算法导论、数据库系统基础教程、计算机网络、鸟哥的Linux私房菜、计算机组成原理 目标:全方位补基础 期限:5月

    整理要求:每回顾/学习完一个知识点,就写一个Demo,并写一篇博文,源码托管到Git@Osc,博文发布到博客园
    整体期限:1年3月

    3.第一阶段规划:基础

    《疯狂Java讲义 》
    第1章 Java概述
    第2章 理解面向对象
    第3章 数据类型和运算符
    第4章 流程控制和数组
    第5章 面向对象(上)
    第6章 面向对象(下)
    第7章 Java集合
    第8章 泛型
    第9章 与运行环境交互
    第10章 异常处理
    第11章 AWT编程
    第12章 Swing编程
    第13章 JDBC编程
    第14章 Annotation(注释)
    第15章 输入/输出
    第16章 多线程
    第17章 网络编程
    第18章 类加载和反射

    《疯狂Android讲义》
    第1章 Android应用与开发环境
    第2章 Android应用的界面编程
    第3章 事件处理
    第4章 深入理解Activity
    第6章 Android应用的资源
    第7章 图形与图像处理
    第8章 Android的数据存储和IO
    第9章 使用ContentProvider实现数据共享
    第10章 Service与BroadcastReceiver
    第11章 多媒体应用开发
    第12章 OpenGL与3D应用开发
    第13章 Android的网络应用
    第14章 管理Android手机桌面
    第15章 传感器应用开发
    第16章 GPS应用开发
    第17章 使用Google Map服务
    第18章 疯狂连连看
    第19章 电子拍卖系统

    4.第二阶段规划:进阶

    《Android群英传》
    第1章 Android体系与系统架构
    第2章 Android开发工具新接触
    第3章 Android控件架构与自定义控件详解
    第4章 ListView使用技巧
    第5章 Android Scroll分析
    第6章 Android绘图机制与处理技巧
    第7章 Android动画机制与使用技巧
    第8章 Activity与Activity调用栈分析
    第9章 Android系统信息与安全机制
    第10章 Android性能优化
    第12章 Android 5.X新特性详解
    第13章 Android实例提高

    《Android开发艺术探索》
    第1章 Activity的生命周期和启动模式
    第2章 IPC机制
    第3章 View的事件体系
    第4章 View的工作原理
    第5章 理解RemoteViews
    第6章 Android的Drawable
    第7章 Android动画深入分析
    第8章 理解Window和WindowManager
    第9章 四大组件的工作过程
    第10章 Android的消息机制
    第11章 Android的线程和线程池
    第12章 Bitmap的加载和Cache
    第13章 综合技术
    第14章 JNI和NDK编程
    第15章 Android性能优化



    5.第三阶段规划:思想

    《Think in Java》
    第1章 对象导论
    第2章 一切都是对象
    第3章 操作符
    第4章 控制执行流程
    第5章 初始化与清理
    第6章 访问权限控制
    第7章 复用类
    第8章 多态
    第9章 接口
    第10章 内部类
    第11章 持有对象
    第12章 通过异常处理错误
    第13章 字符串
    第14章 类型信息
    第15章 泛型
    第16章 数组
    第17章 容器深入研究
    第18章 Java I/O系统
    第19章 枚举类型
    第20章 注解
    第21章 并发
    第22章 图形化用户界面

    《Effective Java》
    第1章 引言
    第2章 创建和销毁对象
    第3章 对于所有对象都通用的方法
    第4章 类和接口
    第5章 泛型
    第6章 枚举和注解
    第7章 方法
    第8章 通用程序设计
    第9章 异常
    第10章 并发
    第11章 序列化


    6.第四阶段规划:模式

    《设计模式之禅》
    第1章 单一职责原则
    第2章 里氏替换原则
    第3章 依赖倒置原则
    第4章 接口隔离原则
    第5章 迪米特法则
    第6章 开闭原则
    第7章 单例模式
    第8章 工厂方法模式
    第9章 抽象工厂模式
    第10章 模板方法模式
    第11章 建造者模式
    第12章 代理模式
    第13章 原型模式
    第14章 中介者模式
    第15章 命令模式
    第16章 责任链模式
    第17章 装饰模式
    第18章 策略模式
    第19章 适配器模式
    第20章 迭代器模式
    第21章 组合模式
    第22章 观察者模式
    第23章 门面模式
    第24章 备忘录模式
    第25章 访问者模式
    第26章 状态模式
    第27章 解释器模式
    第28章 享元模式
    第29章 桥梁模式
    第30章 创建类模式大PK
    第31章 结构类模式大PK
    第32章 行为类模式大PK
    第33章 跨战区PK
    第34章 命令模式+责任链模式
    第35章 工厂方法模式+策略模式
    第36章 观察者模式+中介者模式
    第37章 MVC框架
    第38章 新模式(规格+对象池+雇工+黑板+空对象)

    《Android源码设计模式解析与实战》
    第1章 走向灵活软件之路——面向对象的六大原则
    第2章 应用最广的模式——单例模式
    第3章 自由扩展你的项目——Builder模式
    第4章 使程序运行更高效——原型模式
    第5章 应用最广泛的模式——工厂方法模式
    第6章 创建型设计模式——抽象工厂模式
    第7章 时势造英雄——策略模式
    第8章 随遇而安——状态模式
    第9章 使编程更有灵活性——责任链模式
    第10章 化繁为简的翻译机——解释器模式
    第11章 让程序畅通执行——命令模式
    第12章 解决、解耦的钥匙——观察者模式
    第13章 编程中的“后悔药”——备忘录模式
    第14章 解决问题的“第三者”——迭代器模式
    第15章 抓住问题核心——模板方法模式
    第16章 访问者模式
    第17章 “和事佬”——中介者模式
    第18章 编程好帮手——代理模式
    第19章 物以类聚——组合模式
    第20章 得心应手的“粘合剂”——适配器模式
    第21章 装饰模式
    第22章 对象共享,避免创建多对象——享元模式
    第23章 统一编程接口——外观模式
    第24章 连接两地的交通枢钮——桥接模式
    第25章 MVC的介绍与实战
    第26章 MVP应用架构模式

    7.第五阶段规划:工具

    《Git权威指南》
    第1章 版本控制的前世和今生
    第2章 爱上 Git 的理由
    第3章 Git的安装和使用
    第4章 Git 初始化
    第5章 Git 暂存区
    第6章 Git对象
    第7章 Git 重置
    第8章 Git 检出
    第9章 恢复进度
    第10章 Git 基本操作
    第11章 历史穿梭
    第12章 改变历史
    第13章 Git 克隆
    第14章 Git库管理
    第15章 Git协议与工作协同
    第16章 冲突解决
    第17章 Git 里程碑
    第18章 Git 分支
    第19章  远程版本库
    第20章 补丁文件交互
    第21章 经典Git协同模型
    第22章 Topgit 协同模型
    第23章 子模组协同模型
    第24章 子树合并
    第25章 Android 式多版本库协同
    第26章 Git 和 SVN 协同模型
    第27章 使用 HTTP 协议
    第28章 使用 Git 协议
    第29章 使用 SSH 协议
    第30章 Gitolite 服务架设
    第31章 Gitosis 服务架设
    第32章 Gerrit 代码审核服务器
    第33章 Git 版本库托管
    第34章 CVS版本库到Git的迁移
    第35章 更多版本控制系统的迁移
    第36章 etckeeper
    第37章 Gistore
    第38章 补丁中的二进制文件
    第39章 云存储
    第40章 跨平台操作 Git
    第41章 Git 的其他特性

    《Gradle User Guide》
    第1章 安装Gradle
    第2章 排除故障
    第3章 构建脚本基础
    第4章 Java构建入门
    第5章 依赖管理的基础知识
    第6章 Groovy快速入门
    第7章 网页应用快速入门
    第8章 使用Gradle命令行
    第9章 使用Gradle图形界面
    第10章 编写构建脚本
    第11章 深入了解Tasks
    第12章 编写构建脚本
    第13章 Working With Files
    第14章 Java插件
    第15章 War插件

    8.第六阶段规划:全面

    《算法导论》
    第1章 算法在计算中的作用
    第2章 算法基础
    第3章 函数的增长 
    第4章 分治策略 
    第5章 概率分析和随机算法 
    第6章 堆排序 
    第7章 快速排序 
    第8章 线性时间排序 
    第9章 中位数和顺序统计量 
    第10章 基本数据结构 129
    第11章 散列表 
    第12章 二叉搜索树 
    第13章 红黑树 
    第14章 数据结构的扩张 
    第15章 动态规划 
    第16章 贪心算法 
    第17章 摊还分析 
    第18章 B树 
    第19章 斐波那契堆 
    第20章 van Emde Boas树 
    第21章 用于不相交集合的数据结构 
    第22章 基本的图算法 
    第23章 最小生成树 
    第24章 单源最短路径 
    第25章 所有结点对的最短路径问题 
    第26章 最大流 
    第27章 多线程算法 
    第28章 矩阵运算 
    第29章 线性规划 
    第30章 多项式与快速傅里叶变换 
    第31章 数论算法 
    第32章 字符串匹配 
    第33章 计算几何学 
    第34章 NP完全性 
    第35章 近似算法 

    数据库系统基础教程
    第1章 数据库系统世界
    第2章 关系数据模型
    第3章 关系数据库设计理论
    第4章 高级数据库模型
    第5章 代数和逻辑查询语言
    第6章 数据库语言SQL
    第7章 约束与触发器
    第8章 视图与索引

    《计算机网络
    第1章 引言
    第2章 物理层
    第3章 数据链路层
    第4章 介质访问控制子层
    第5章 网络层
    第6章 传输层
    第7章 应用层
    第8章 网络安全
    第9章 阅读清单和参考书目

    《鸟哥的Linux私房菜》
    第0章 计算机概论
    第1章 Linux是什么 
    第2章 Linux如何学习 
    第3章 主机规划与磁盘分区 
    第4章 安装CentOS 5.x与多重引导小技巧 
    第5章 首次登录与在线求助man page 
    第6章 Linux的文件权限与目录配置 
    第7章 Linux文件与目录管理 
    第8章 Linux磁盘与文件系统管理 
    第9章 文件与文件系统的压缩与打包 
    第10章 vim程序编辑器 
    第11章 认识与学习bash

    《计算机组成原理》
    第1章 计算机系统概论
    第2章 计算机的发展及应用
    第3章 系统总线
    第4章 存储器
    第5章 输入输出系统
    第6章 计算机的运算方法
    第7章 指令系统
    第8章 CPU的结构和功能
    第9章 控制单元的功能
    第10章 控制单元的设计










  • 相关阅读:
    MyBatis入门案例
    springboot mybatis 后台框架平台 集成代码生成器 shiro 权限
    原谅这世界没那么美好
    十万的License只取决于一个连接
    Qt连接数据库的两种方法
    桃李春风一杯酒 江湖夜雨十年灯
    ERROR:Can't connect to local MySQL server through socket可能出现的情况
    MySQL忽略授权表方式<--skip-grant-tables>重置管理用户密码
    MySQL5.7和5.6初始化数据的区别
    Rsync同步过程中遇到的常见问题
  • 原文地址:https://www.cnblogs.com/yutianran/p/5040156.html
Copyright © 2011-2022 走看看