- 有的人积极主动,什么都愿意做,做什么都津津有味,都能快速学习、迅速行动并做出符合预期的结果
- 有的人你每次安排任务给他,就算是他可以搞定的,他也推三阻四,不情不愿这就是动机差距。
当你一个人知道如何去做,但是却选择不做一件事时,往往是缺乏做这件事的动机;当你不想做一件事时,总是能够找到千万个理由来拒绝。
通常某个开发者不愿意做某件事,是因为:
- 他没有真正认同团队的目标
- 他觉得团队的目标没什么意义
- 焦虑或担忧,觉得这事儿做起来有难度,或者做了也不指定有好结果
- 心烦意乱,比如最近丈母娘催买房催得厉害
- 单纯的不想努力,就是要在这里混着
……
不管哪种原因,你不做一件事,就少一次磨练和收获的机会,久而久之,别人在行动中成长起来了,你还在原地踏步。
四、行动差异
两个人都在不断做事,结果仍然可能不同:有的人三年精通某个技术栈,成为团队内的核心骨干;而有人的,做开发五年还只能写写静态页面。
你是遵循一定的方法和流程来开发,比如先完成设计、编写测试代码、再编码、跑单元测试,还是拿到需求就立马开始编码、边写边发现代码不符合需求不断推倒重来……
你是每次都给自己设定目标,希望这次任务用到的知识和技术点不同于上次,希望这次的代码设计和上次不同,还是根本不管这些,先写,能 Run ,完成任务交差……
这都些做事方法上的差异,会让同一件事有不同的结果让做同样事情的人有不同的收获。
五、习惯差异
有的开发者每天早上都琢磨下今天要做的事情,每天晚上都回顾下今天完成了什么事情、什么事情没完成、什么事情还没开始做,早计划晚回顾;有的开发者每天到了单位,开机,刷新闻,来两把游戏,然后喝茶,找人聊天,下班了吃个饭,打两局游戏……
有的开发者,每周都回顾总结,写周报,发给直属上司;有的开发者,经理强调一百遍“每周五要发周报”也充耳不闻……
有的开发者,遇见测试提 Bug ,就高叫“不可能”;有的开发者,则会说“我看看”……
有的开发者,遇见困难的问题或者难搞的醒目,会说“让我试试”;有的开发者遇见难题,两手一摊,“这太难了,我搞不定”……
在做项目时,有的开发者会把自己手上的任务按重要性、优先级排序,先做优先级高的、难度大的;有的开发者会每次都挑难度低的事情先做……
积行成习,积习成性,积性成命。
好的习惯,大概率产生好的结果;不良习惯,大概率导致不如意的结果。
你的将来,由你的习惯决定。所以,请看看自己身上,有哪些习惯会让自己积累越来越多的能力,巩固它们;有哪些习惯会让自己越来越 low ,弱化它们,扬弃它们。
六、环境差异
环境会在某种程度上塑造人,你会成为你身边人的平均数。你在一个技术氛围浓厚、优秀开发者众多的团队里,就有大概率更快地成长。
环境是可以选择的:你不幸进了处于衰退期的行业,可以转身去朝阳行业;你进了无所事事的、靠关系拿订单的传统软件企业,可以考虑去互联网领域的快节奏单位;你所在的项目组没什么技术氛围,你可以离开,找一个崇尚技术的团队。
在职场上发展,我们该如何进阶和规划:
一、App开发框架知识体系(app亦对象)
**1.**面向Android中的一切实体
- Activity相关实体知识体系
- Fragment 内核
- Service 内核原理
**2.**实体间的通信方案
- 各实体之间通信原理与方法
- Apk之间通信方案原理总结
- 本地和远端服务器通信面试必备
**3.**实体中数据存储专题
- 应用的Data目录
- SDcard文件存储的原理与局限
- Preference
二、Android app全方位性能调优
**1.**代码框架结构优化
- 不可思议的OOM
- ANR暴露了我们程序的问题
- 网络请求API优化
- View过渡渲染层级优化
- Profiler
- 设计模式
- 数据结构
- 排序算法
- 查找算法
**2.**用户体验及资源消耗优化
- 启动速度优化
- 界面切换效果和速度优化
- 开机白屏用户体验优化
- 闪屏的原理和解决方案实战
- 图片库的选择
- 耗电优化
- apk打包流程以及安装包大小优化
- 网络优化
**3.**屏幕适配
- 布局适配
- 权限适配
- 相机适配
**4.**代码质量调优
- 代码风格静态检查CheckStyle
- Findbug自动化设备检查代码质量
- Lint
三、Android前沿技术
**1.**热升级
- Tinker源码解析与手写
**2.**热修复
- 阿里百川Sophix内核原理
**3.**App Instant
**4.**强制更新
**5.**组件化框架设计
- 组件化之集中式路
- 手写ARouter 组件化路
- 项目实战手写组件化式路
**6.**图片加载框架设计
- uimageLoader源码分析
- picaso源码分析
- glide
**7.**网络访问框架设计
- Volley网络框架源码层解析
- OkHttp网络框架源码层解析
- Retrofit网络框架源码层解析
- 手写高扩展的网络访问框架实战
**8.**RXJava响应式编程框架设计
- RXJava的内核机制及原理详解
- 手写RxJava框架设计
四、NDK 模块开发
**1.**基础开发流程
- C编程
- C++编程
- JNI开发
- NDK基础
- Linux编程
**2.**图像处理与热修复应用
**3.**音视频开发应用
- 编解码原理
- 流媒体协议
**4.**人工智能应用
五、提高开发效率的工具运用
**1.**Git
- 分支
**2.**Gradle
- Groovy
- Android build tool
- 插件开发
- 项目实战
**3.**抓包工具 stetho
- 网络抓包
- 数据库查看
- 布局层级查看
六、职业生涯规划
- Android系统的市场地位
- Android程序开发的技能成长经验
- Android程序员为什么需要学习Html5
- Android软件工程师为什么不会被前端替代
- 为什么小程序无法替代原生开发
- 为什么Html5无法取代NativeAPP
- Html5在Android中的应用场景
- 如何成为一名合格的高级Android程序员
【附】相关架构及资料
资料领取
关注我后台私信回复【干货分享】
最后
在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可获取!
roid复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
[外链图片转存中…(img-1GsR4zlw-1714991194604)]
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可获取!