一个老鸟发的公司内部整理的 Android 学习路线图
- 基础工具部分: 中文手册,我猜测是Maven中文手册,可是我并没有找到这样的资源,欢迎知道的朋友告诉我;
- Android部分有 『第三方库集合』,我没能找到资源地址;
- 书籍我大多是给的豆瓣链接,如果觉得不合适可以替换一下;
程序设计
一、java
(a)基本语法(如继承、异常、引用、泛型等)
- Java核心技术 卷I(适合入门)
- 进阶
- Effective Java中文版(如何写好的Java代码)
- Java解惑 (介绍烂Java代码是什么样的)
(b)多线程、并发
- Java并发编程实战 (系统全面的介绍了Java的并发,如何设计支持并发的数据结构)
(c)Java 7
- Java程序员修炼之道 (详细的介绍Java 7 的新特性)
(d)Java 8
(e)Java虚拟机
- 深入理解Java虚拟机 (并不是那么难,Java程序员都该看看)
(f)性能优化
- Java性能优化权威指南 (后面的章节好像用处不大,前面有些部分还是值得看)
二、算法与数据结构
- 算法时间复杂度、空间复杂度的基本认知
- 熟悉常用数据结构:链表、队列、散列表、树等;
- 递归、分支等基本思想;
- 常用算法应用:排序、查找、比较等
三、操作系统
- 对Linux/OS的基本认知
- Linux的常用命令
- 鸟哥的Linux私房菜
- Linux内核设计与实现(原书第3版) (很精炼的语言描述清楚了内核算法)
四、网络
- Http/Https
- TCP/IP
五、Android
- 四大组件(服务、广播、ContentProvider、页面容器)
- 基础UI组件(ListView、ViewPager)
- 异步任务机制(AsyncTask、Handler、线程池)
- 布局优化(层级、绘制、碎片化处理)
- 图片加载(Bitmap、缓冲区)
- UniversalMusicePlayer (通过学习一个音乐播放器的代码能很快了解四大组件)
- Android Training官方课程
- Android一些重要知识点解析整理
- Android UI/UX库(各类常用组件及扩展组件的集合)
- Picasso 、 Glide (两个图片加载库)
- The Google I/O 2015 Android App (Google大会官方的App,适合学习各类实现)
- Android开发技术前线 (定期翻译、发布国内外Android优质的技术、开源库、软件架构设计、测试等文章)
- 进阶
- 第三方库集合 (列举了常见的各方向第三方库)
软件工程
一、基础工具
IDE、Git、Maven
二、软件质量
- 代码整洁
- 码质量
- 码重构
- 编写可读代码的艺术 (来自Google工程师,专注于代码可读性)
- 代码整洁之道(使用面向对象+敏捷开发原则编写清晰可维护的代码)
- 重构-改善既有代码的设计 (学习改善已有代码)
- 重构手册 (改善代码的实际操作)
三、设计模式
23种常见设计模式
- 大话设计模式
- Head First设计模式(两本入门级的设计模式书籍)
- 进阶
- 设计模式-可复用面向对象软件的基础(设计模式在实际中的应用)
四、敏捷开发
五、专业开发
- 序员职业素养
- 更高效、更实效
六、思考人生
- 黑客与画家 (硅谷创业之父Paul Craham 的文集,主要介绍黑客及优秀程序员的爱好和动机)
转发来源 :https://www.cnblogs.com/yishaochu/p/5436094.html
一个老鸟发的公司内部整理的 Android 学习路线图的更多相关文章
- 一个老鸟发的公司内部整理的 Android 学习路线图 Markdown 版本
jixiaohua发了一篇一个老鸟也发了一份他给公司内部小伙伴整理的路线图.另一份 Android 开发学习路线图.可惜不是MarkDown格式的,所以jixiaohua直接上传的截图,在jixiao ...
- 在程序内部跳转到下一个页面 和 向另一个servlet发起跳转
request.getRequestDispatcher("/success.html").forward(request,response); request.getReques ...
- .NET持续集成与自动化部署之路第二篇——使用NuGet.Server搭建公司内部的Nuget(包)管理器
使用NuGet.Server搭建公司内部的Nuget(包)管理器 前言 Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基 ...
- 关于公司内部的Nuget服务
简介 公司内部搭建的Nuget服务,私有安全,局域网,速度快. 使用方法 VS -> 工具 -> 库程序包管理器 -> 程序包管理器设置 -> 程序包源 -> 新增以下配 ...
- 公司内部搭建git服务器
前言 因为gitHub上的项目是公开的,不适合公司内部项目放在上面,而私人的需要收费,这绝非是我们愿意的.所以找了个跟gitHub很相似,但是又免费的gitLab.现在将搭建gitLab过程记录一下留 ...
- Rafy 领域实体框架 - 公司内部培训视频
本月给公司内部一个项目做架构重构,其中使用到了 Rafy 框架.所以我培训了 Rafy 领域实体框架的使用方法,过程中录制了视频,方便其他同事查看.现在把视频放到园里来分享下,有兴趣的朋友可以看看,有 ...
- 搭建公司内部的NuGet Server
随着公司业务慢慢的拓展,项目便会越来越来多,很多项目会依赖其他项目DLL,比如一些底层的技术框架DLL引用,还有各业务系统的也有可能会有引用的可能. 项目多,交叉引用多,如果要是有一个DLL更新,那就 ...
- 公司内部培训SQL Server传统索引结构PPT分享
公司内部培训SQL Server传统索引结构PPT分享 下载地址 http://files.cnblogs.com/files/lyhabc/SQLServer%E4%BC%A0%E7%BB%9F%E ...
- 使用mvvm框架avalon开发公司内部运营管理系统的一些心得
接触avalon差不多有一年时间了,当时是看前端大牛司徒正美的博客才了解到还有这么一个高大上的玩意,然后就加入了avalon的讨论群.从群里零零散散的了解了avalon的一些特性,感觉很强大,感觉思想 ...
随机推荐
- NOIP 2018 大翻车记
都9102年了我才想起来写游记啊 Day -1 肚子里翻江倒海,一天去了七次厕所.吃了PPA把病压下去.安慰一下自己,说这样会涨人品. Loli讲述学长们的翻车笔记.我大概像是玩笑一样听过去了.(伏笔 ...
- Python函数的装饰器修复技术(@wraps)
@wraps 函数的装饰器修复技术,可使被装饰的函数在增加了新功能的前提下,不改变原函数名称,还继续使用原函数的注释内容: 方便了上下文环境中不去更改原来使用的函数地方的函数名: 使用方法 from ...
- vue 相关
1.vue v-for 循环一个数组,key值报错,但是数据是正常显示的 报错: v-for使用key,需要在key前加上:key;srcList是个数组,key值绑定不能是数据类型Object的it ...
- dataTables 插件学习整理
在项目中使用了dataTables 插件,学习整理一下. dataTables 的官方中文网站 http://www.datatables.club 引入文件: 所有的都要引入 jq文件 1. dat ...
- 【tool】部署前端工具
一.部署前端工具如下: nodejsnpmwebpackvue 二.安装nodejs 1. 下载稳当版本nodejs 2. 配置环境变量 NODE_HOME=D:\soft\nodejs\ path= ...
- Vs2015 当前不会命中断点,没有与此关联的可执行代码
在学习Civil 3D本地化包程序的过程中, 使用.Net Reflector调试本地化包的主程序CountryKits.dll, .Net Reflector创建了相应的pdb文件等, 在我反编译并 ...
- oracle wm_concat 函数无法使用的情况下,使用LISTAGG()函数
http://dacoolbaby.iteye.com/blog/1698957 --20180327 重写wm_concat函数,解决行数超过上限问题 /*执行前请将APPS替换为当前登录用户*/ ...
- 为知笔记Linux版编译使用记录
本文档长期不定时更新,根据使用情况进行反馈. 目录 编译 Error creating SSL context 无法输入中文 如何打包使用 桌面图标 Markdown Windows 版本差异 常用快 ...
- Codeforces Round #522 (Div. 2, based on Technocup 2019 Elimination Round 3) C. Playing Piano
题意:给出一个数列 a1 a2......an 让你构造一个序列(该序列取值(1-5)) 如果a(i+1)>a(i) b(i+1)>b(i) 如果a(i+1)<a(i) 那么b( ...
- php 两个数组,若键相同,则值合并
<?php $arr1 = array('9' => '4.08', '10' => '0.10', '11' => '4.08', '12' => '0.01'); $ ...