方法对了,你做1年Android开发能顶别人做10年
前几天后台有读者问我这样的问题。他在一家互联网公司工作3年了,每天都很忙,事情又多又杂。
本想着学习多一些东西也不是坏事,可到头来一无所获,什么都没学会,满腔的热情也被消磨得差不多。
三天两头动辞职的念头,但又不知道自己还能做什么,甚至开始后悔:
如果当初选择另一个行业,是不是就会好一点呢…
想到后面的路,完全不知道下一步该怎么走,只有「迷茫」二字横在心头。
其实这样的问题,几乎每 10 个人里就有 7 个人会问。
有研究表明,在职场中,至少 40% 的人在迷茫期,50% 的人在自我怀疑期,10% 的人在无计划期:
迷茫期:没有目标,不喜欢自己的工作,没有动力
自我怀疑期:觉得自己能力不行,想提升自己但不知道应该学什么
无计划期:有明确的目标,但是不知道该具体怎么去做
不管你中了以上哪一点,其实都在说明一个问题:找不到目标,没有时间,没有方法。
因为没有系统成长的方法,很多人只能毫无目的的努力,接着迷茫、辞职、跳槽,陷入恶性循环。
如果此刻我们及时做好个人发展计划,不再被事情「推着走」,当然能在正确的道路上一路开冲,实现爆发式成长。
工作迷茫的时候,最应该干些什么?
做好个人发展计划,找到学习的方向。通过一份专属的职业规划,和可执行的方法,实现自己的职场目标。
简单说,就是你清楚知道自己要去哪里,利用地图路线和先进的交通工具,你当然可以安全、快速抵达目的地。
所需的技能,我整理成了一个学习思维脑图,还有相关的PDF资料,没有学习方向,或者需要建立自己知识体系的,都可以在我的GitHub里获取一下!
遇到瓶颈怎么突破进阶
之前不少人都问我同一个问题,就是我学习Android有两三年了,但是遇到瓶颈了,感觉没什么进步,到底怎么才能进阶呢?
我相信有不少人遇到这样的困扰,那么今天我就以一个过来人的身份给大家解答这个问题。
1.看一些进阶的书籍
看书是每个阶段进步必备的过程,但是这个阶段你需要看的是一些进阶类的书籍了,不管是关于Java还是关于Android,你需要看一下以下书籍:
「Thinking In Java」
也许之前你看过,但是我相信对于一些高深的知识你肯定没理解,这个时候再回头看一下这本书,估计又是一番收获。
「Effective Java」
这本书堪称Java进阶必备,里面教你一些你不知道的Java技巧,以及一些常用的设计模式与原则,真正教你如何优雅的写Java。
「Android开发艺术探索」
这本书是面向Android中高级工程师,里面讲到的一些知识点与技能很不错,Android进阶必备。
2.阅读Android源码,理解一些高级概念
Java语言进阶了,同样关于Android你也需要进阶,并不能停留在一些基本api的使用上,应该往更深层次的方向去研究,比如activity、view的内部运行机制,比如Android内存优化,比如aidl,比如JNI等,并不仅仅停留在会用,而要通过阅读源码,理解其实现原理。
我整理了一份《Android开发相关源码精编解析》,需要的朋友都可以在我的GitHub里获取一下,无偿分享。
3.坚持写博客
中级工程师不只是一味的去做事、学习,其实更多的需要对知识的总结与归纳,而写博客是最好的手段,坚持写博客其实就是对你知识体系的回顾与总结,很多时候你对某块领域自认为掌握了,但是能写出来,并且能让别人看懂,那才是真正的熟练掌握呢,不说别的,就说一些IT界业内的大牛一般都有自己的博客,那些博客文章才是你知识沉淀的最好见证。
4.在GitHub上参与开源项目
我曾无数次提醒大家GitHub堪称程序员必备,聚集了全球各个领域的程序员,在上面你可以直接阅读Google、Facebook顶级公司的开源项目,可以一睹顶尖工程师的风采,在这里你绝对打开了另一扇世界大门,你可以阅读大牛源码,并试着贡献自己的代码,走出第一步,多参与,多交流,那句话怎么说来着:「与优秀的人接触,自己才会变得优秀。」同样的道理,阅读大牛们的代码多了,自己不知不觉中就会成长进步。GitHub并不仅是一个名片,更是进阶必备神器!
最后
本文梳理了Android 开发者进阶过程的学习思路和一些我个人的建议。要详细学习这些知识点还需自己去看书、看博客、查资料等。当然了,本文所列出的知识点还不完全,要比较系统的学习。
我这边整理了一套全网最全的Android开发核心知识笔记,需要的可以去我的GitHub里获取一下,无偿分享,只需要大家点赞支持一下。
方法对了,你做1年Android开发能顶别人做10年的更多相关文章
- Android开发人员必须掌握的10 个开发工具+应该深入学习的10个开源应用项目
一.Android开发人员必须掌握的10 个开发工具 Android SDK 本身包含很多帮助开发人员设计.开发.测试和发布 Android 应用的工具,在本文中,我们将讨论 10 个最常用的工具. ...
- Android 开发人员必须掌握的 10 个开发工具
Android 开发人员必须掌握的 10 个开发工具 Android SDK 本身包含很多帮助开发人员设计.开发.测试和发布 Android 应用的工具,在本文中,我们将讨论 10 个最常用的工具. ...
- Android开发中用友盟做分享的一些坑
仅限于用5.1.4版本的 按照友盟分享的API在自己的代码中修改: 1.微信分享需要打包APK文件,数字签名与微信开发申请的要一致 2.此name中属性不能修改 value为友盟的申请的appkey ...
- java生成四位随机数,包含数字和字母 区分大小写,特别适合做验证码,android开发
private String generateWord() { String[] beforeShuffle = new String[] { "2", "3" ...
- Android开发必须知道SERVICE的10件事
这些年我在和其他安卓攻城狮交流时经常谈到的一个话题就是Service组件被开发者错误地理解,不管是新手还是老司机.这篇文章就是交流的成果. 这篇文章不会讲解Service的使用方法,这个要去看官方的( ...
- 在android开发中使用multdex的方法-IT蓝豹为你整理
Android系统在安装应用时,往往需要优化Dex,而由于处理工具DexOpt对id数目的限制,导致其处理的数目不能超过65536个,因此在Android开发中,需要使用到MultiDex来解决这个问 ...
- Android开发权威指南(第2版)新书发布
<Android 开发权威指南(第二版)>是畅销书<Android开发权威指南>的升级版,内容更新超过80%,是一本全面介绍Android应用开发的专著,拥有45 章精彩内容供 ...
- Android开发学习总结(一)——搭建最新版本的Android开发环境
Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...
- android 开发环境搭建 (转)
最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是一直没有搭建开发环 境去学习,Android的更新速度比较快了,Android1 ...
随机推荐
- 9.5、zabbix高级操作(2)
4.zabbix的分布式监控: 使用zabbix-proxy主动方式(被动也可),使用zabbix-agent的主动方式(被动也可): Zabbix Server <- Zabbix Proxy ...
- python3 依赖倒置原则示例
场景 针对园区停车信息,需要对各个公司提供的停车数据进行整合并录入自家公司的大数据平台 数据的录入无外乎就是对数据的增删改查 下面上一个常规的写法(未符合依赖倒置),整合来自 长安和丰田 的停车数据 ...
- 使用.net6 WebApplication打造最小API
.net6在preview4时给我们带来了一个新的API:WebApplication,通过这个API我们可以打造更小的轻量级API服务.今天我们来尝试一下如何使用WebApplication设计一个 ...
- JPA事务中的异常最后不也抛出了,为什么没被catch到而导致回滚?
上周,我们通过这篇文章<为什么catch了异常,但事务还是回滚了?>来解释了,之前test4为什么会回滚的原因. 但还是收到了很多没有理解的反馈,主要是根据前文给出的线索去跟踪,是获得到了 ...
- 大数据 | 分布式文件系统 HDFS
HDFS全称Hadoop Distributed File System,看名字就知道是Hadoop生态的一个组件,它是一个分布式文件系统. 它的出现解决了独立机器存储大数据集的压力,它将数据集进行切 ...
- Postgresql常见操作命令
安装Postgresql 请查看我的另一篇博文: 博文连接:https://www.cnblogs.com/cndevops/p/14962745.html 连接Postgresql数据库 服务端连接 ...
- 160crackme002
一.查壳 结果:vb写的,并且无壳 二.运行程序 发现了这个程度调用了vb调用窗口的api.这时有两种方式: 1.再重新调试,运行到有窗口的时候,F12暂停,按ctrl+K,查看dll调用,再数据窗口 ...
- DHCP工作原理
DHCP:Dynamic Host Configurtion Protocol DHCP的工作原理(UDP) 1.客户端:首先会发送给一个dhcp discovery(广播)报文,报文中的2层和3层都 ...
- Java基础00-内部类23
1. 内部类 内部类 1.1 内部类概述 代码示例: 1.2 成员内部类 代码示例: 创建一个成员内部类:定义时没有小括号是因为类是没有形参的.在类的成员位置,就是成员内部类了 创建测试类:这里发现不 ...
- 分别在Update和FixedUpdate使用GetKeyDown
测试目的 探究分别在Update和FixedUpdate使用GetKeyDown执行次数,会不同的 测试开始 在Update测试 我们先在Update测试,很正常是一帧重置一下状态,以防止点击一下执行 ...