大多数技术人,一般会有以下方向。
-
第一:成为技术大神,比如架构师,及技术专家等。
-
第二:技术管理,比如技术总监等。
-
第三:技术转型,如转项目管理,产品等,你牛逼的话,说不定下一个张小龙就是你(哥们,想多了,那有这么容易)。
-
第四:自主创业,做自媒体等
我目前来说,可能会选择第一条路吧,成为一名技术专家。
在技术的路上,或许会很累,很难,可那又怎样呢
35 岁中年职业危机,很多职业都有,不仅仅局限于程序员。
从本质上面说,自身竞争力下降占很大原因。毕竟,优秀的人才从来不缺少机会。
既然选择了,便只顾风雨兼程。
为了未来有更多的选择,从现在开始,朝着自己的目标努力奋斗吧,书写属于自己的人生。
Android 学习路线
============
下面,说一下 Android 的学习路线,不会很具体,主要是从大的方面来说,感兴趣的可以看一下。
搭建基本的开发环境,敲下 Hello world
首先你配置好电脑开发环境。首先需要配置 Java,AndroidStudio 的开发环境。
现在的 IDE 对比几年前的,真的是方便多了,可以自动帮我们配置好环境变量。还记得当年刚开始配环境的时候,折腾了两三天。在配置变量的时候,有时候英文的逗号输成中文的,在 cmd 窗口输入 Java,一直提醒没有这个命令,一把鼻涕一行泪。
依稀还记得,当配置完环境之后,敲下第一段程序 Hello world 时的那份喜悦。
掌握基本的语法和常用的数据结构
第一:你要先掌握基本的语法,可以从一些书籍开始学起。跟着书本慢慢敲,从第一个程序 Hello World 慢慢敲起,万丈高楼平地起。
由于 Android 是用 java 或者 kotlin 语言开发的,建议优先掌握 java 语言。这里推荐两本书籍。
-
java 编程思想,一本很经典的 java 书籍
-
java 剑指 offer,面试神器。校招的时候,有很多面试题目,里面都有涉及到。
第二:掌握基本的语法之后,常用的数据结构,数组,链表,队列,栈。这些基本的概念和语法要知道。还有线程,文件 IO 操作,网络操作。
学完这些之后,Java 的基本知识你大概掌握了,这时候建议你动手写一些小项目或者 Demo,比如坦克大战,计算器等,这些网上都有代码。想跟着视频一起学的话,推荐马士兵的视频,可以在我的微信公众号 程序员徐公 回复”Java“,会将教程发给你
Android 学习入门
掌握这些之后,你可以去看一些 Android 入门的书籍或者一些视频。
书籍我推荐郭霖的第一行代码,目前出了第三版了,写得真不错。
视频的话,我推荐你可以看黑马的 Android 视频,里面会从一些基本语法讲起,接着是项目实战,会手把手教你实现简单的新闻客户端,360 手机卫士等等。
想获取黑马视频资料的话,可以去我的微信公众号程序员徐公回复"黑马"两字,会将教程发给你。
Android 进阶
学习完基本的知识之后,可以去看看任玉刚的 Android 开发艺术探索,虽然是几年前出版的,但真的是精华。
接着,可以关注一些架构,性能优化方面的。
-
MVC, MVP, MVVN
-
内存泄露怎么检测,常见的内存泄露有哪些
-
怎么检测 ANR,有哪些手段呢,优缺点是什么
-
怎么捕获 Crash,Java Crash 和 native crash 有哪些不同呢
-
Android 检测启动时间,启动优化怎么做,常见的 Android 启动优化手段有哪些
-
Android gradle,是怎样打包的,怎样提高编译速度
这里推荐几篇不错的文章。
Android 启动优化(二) - 拓扑排序的原理以及解题思路
Android 启动优化(三)- AnchorTask 开源了
Android 启动优化(四)- AnchorTask 是怎么实现的
Android 启
动优化(五)- AnchorTask 1.0.0 版本正式发布了
关注前沿技术
关注前沿技术,可以去一些论坛,公众号上面逛逛。
论坛的话,推荐掘金,CSDN
Android 技术公众号的话,推荐鸿洋,郭霖的公众号,当然还有我的公众号程序员徐公。文章的质量算是比较高的。
最后,有空的时候多去 github 或者 google 官网 看看,有什么新技术,一般第一时间会更新。
如何进入大厂
======
面试是一个双向选择的过程,我们要保持足够的自信。
在我看来,要进入大厂,有 4 点最重要。
-
编程能力,包括常用技术以及常用技术的原理,毕竟招人,是来干活的,不是来当爹的。
-
技术深度,在大厂,分工越来越越明确,职责越来越细。很多时候,需要的是某一个技术领域的人才,而不是什么都懂一点的全才。
-
算法。
-
软技能,沟通能力等
如何学习算法
如何进入大厂
======
面试是一个双向选择的过程,我们要保持足够的自信。
在我看来,要进入大厂,有 4 点最重要。
-
编程能力,包括常用技术以及常用技术的原理,毕竟招人,是来干活的,不是来当爹的。
-
技术深度,在大厂,分工越来越越明确,职责越来越细。很多时候,需要的是某一个技术领域的人才,而不是什么都懂一点的全才。
-
算法。
-
软技能,沟通能力等
如何学习算法