到昨天为止, 做程序员, 已经整整六年. 最近半年来, 我时常思考我走过这六年, 反思我的职业工作, 反思我的生活, 我选择错了很多, 也做错了很多. 有些道理, 到最近才幡然醒悟, 遂决定谈谈我个人对软件工作的看法, 以及一些生活的感悟.
苦苦攒钱的年轻人
我还在苦苦地攒钱, 也许有人不信, 我当初一万二的税后收入, 每个月能存一万. 我花钱不多, 也有些克制自己的欲望, 但这就导致我很多想做的事情不敢去做.
想学吉他, 想报健身班, 想去进修课程, 想有段长时间的旅游等等. 都没有去做, 并不是没有钱去做, 而是怕尝试太费钱, 万一我只是三分钟热度呢?
可是就是这种心理, 丢失了太多的可能性, 看到的风光太过狭隘, 一直过着一种平庸的生活. 我总觉得, 以后要买房买车娶媳妇, 这钱还远远不够呢.
到这几个月, 我才醒悟, 我根本没有为自己而活, 我把自己困在牢笼中, 望着我想尝试的东西, 即便是那些可能不需费多少钱. 我这种行为, 限制自己的心, 也限制自己成长. 明明心心念念且合理的需求, 却不去做, 苦苦攒钱至今, 实在是太愚蠢了, 以至于到如今, 我没有一件值得纪念的事情.
年轻时, 对自己投资太重要了, 磨刀都还不误砍柴工.
技术能力的格局
很多人做 Android 开发 2,3 年后, 都会感觉自己遇到瓶颈. 什么都会又什么都不会, 如何改变困境? 很多人写了 7,8 年代码却还只是一个码农. 如何突破自我?
大部分程序员会有一个苦恼, 工作了很久, 在公司一味的 C+V, 得不到技术的提高, 无缘底层代码, 只会用却不知其原理!
针对以上这些情况我总结出一个 Android 程序员 2-5 年及以上的成长路线图. 这些也是目前互联网企业比较常用的技术, 那么来详细看看.(图片可以保存)
Java 语言进阶与 Android 相关技术内核
为什么要学习 JAVA ? 因为 Android 应用是由 Java 语言进行开发的, SDK 也是由 Java 语言编写, 所以我们要学习 java 语言. 另外, 虽说 kotlin 语言得到了 Android 官方的热推, 但是 kotlin 也是编译成了 java 语言再运行的. 对于 Android 来说, 只要 SDK 没有用 kotlin 重写, 那么 Java 语言是都需要学习的. 而且 Android apk 的后台服务器程序大概率是 java 语言构建, 所以学习 java 也是一种必然.
App 开发框架知识体系(App 亦对象)
这块知识是现今使用者最多的, 我们称之为 Android 2013~2016 年的技术, 但是, 即使是这样的技术, Android 开发者也往往因为网上 Copy 代码习惯了而导致对这块经常 "使用" 的代码熟悉而又陌生: 熟悉的是几乎天天在和它们打交道, 天天在复制这些代码; 陌生的是虽然天天和这些代码打交道, 但是并没有深入研究过这些代码的原理, 代码深处的内涵. 所以我们需要从新的角度去分析这些知识点, 深入研究他们, 要学习源码, 模仿源码, 然后再 hook 源码, 这样才能说自己懂这块的知识. 这些都是做 Android 开发, 做高级工程师的基础.
360° Android App 全方位性能调优
一个 App 的性能好不好我们需要从两个层面努力. 第一个层面: 从写代码的时候就需要注意, 让自己的代码是高性能高可用的代码, 这个过程是书写高性能代码; 第二个层面: 对已经成型的代码通过工具检查代码的问题, 通过检查到的问题来指导我们进行代码的删改, 这个过程被称为调优.
Android 前沿技术
现在去很多公司面试, 除了你具备基本的能够写一个高性能 App 的能力后, 一般都会在自己的 App 里面加一些现有的相对较 666 的技术, 这些技术我们称之为前沿技术. 他们一般包含热升级, 热修复, App Instant, 强制更新, 组件化路由架构 Arouter,RxJava,IoC 架构方法, Hook 技术等等, 当然, 这些技术你不能只会用, 你需要知道他的原理, 有时候, 你还需要知道如何对这些架构进行改进.
NDK 模块开发
音视频 / 高清大图片 / 人工智能 / 直播 / 抖音等等这年与用户最紧密, 与我们生活最相关的技术一直都在寻找最终的技术落地平台, 以前是 Windows 系统, 而现在则是移动系统了, 移动系统中又是以 Android 占比绝大部分为前提, 所以 Android NDK 技术已经是我们必备技能了.
移动架构师
架构师不是天生的, 是在项目中磨练起来的, 所以, 我们学了技术就需要结合项目进行实战训练, 那么在 Android 里面最常用的架构无外乎 MVC,MVP,MVVM, 但是这些思想如果和模块化, 层次化, 组件化混和在一起, 那就不是一件那么简单的事了, 我们需要一个真正身经百战的架构师才能讲解透彻其中蕴含的深理.
微信小程序
Hybrid 混合开发
有了路线解析图, 有没有免费资料? 有没有志同道合的小伙伴共同进步?
小编把文章中提到的知识思维导图的技术点都有在群里分享, 有录制成视频的供大家免费下载, 希望能够帮助一些在, 所以我在这免费分享一些架构资料给大家. 希望在这些资料中都有你需要的内容. 这个行业发展迷茫的有需要的朋友, 在网上博客论坛等地方少花些时间找资料, 把有限的时间, 真正花在学习上
领取方式: 加群 Android 架构设计 (185873940) 找管理员免费获取即可!
以上, 就是精选的干货知识点, 学习大方面的知识必要一步一个脚印的经历, 不涉及具体语言代码, 但是思路都是相通的, 希望对你有帮助!
好了~ 如果你看到了这里, 觉得文章写得不错就给个赞呗? 如果你觉得那里值得改进的, 请给我留言. 一定会认真查询, 修正不足. 谢谢.
为什么某些人会一直比你优秀, 是因为他本身就很优秀还一直在持续努力变得更优秀, 而你是不是还在满足于现状内心在窃喜! 希望读到这的您能点个小赞和关注下我, 以后还会更新技术干货, 谢谢您的支持!
来源: http://www.jianshu.com/p/86a494c4252f