开头

无论你是在校的大学生,还是职场人,这篇文章都适合你
文章末附带资深架构师必须掌握的技能

1. 我们生活的每天都面临着很严重的挑战

虽然目前看起来我们都在做着自己的事情,一切在顺利的进行着,但是,实则不然,我们每个人的身边或是自身已充满着“危机”,这里说的危机是指你的自身价值可替代性。

不管你做什么,自己的不可替代性是最重要的。那么如何解释这点呢?细心想想,不难。
从技术方面来讲
你的个人技术深度在你的职业生涯前期是很占据优势的,如果你能在前3年做到技术出众,在深度上比同行的造诣更深一层的话,那么你是很有优势的,凭借这点可以给你带来很多优势和资源。

反之,如果你没有占据上位,那么你所面临的挑战就会大很多,这对你的后续发展空间就会造成很大的挑战。

正文

很多人对成长有误解,在他们眼中,随着工作年限的提高,成长是理所当然的事情,这其实是一个误区。两个程序员同时工作3年,难道他们两个的成长就完全一样吗?其实是不一样的。很多岗位在招聘的时候都要求3年以上工作经验,这个3年工作经验是指持续成长的三年,而不是指浑浑噩噩混日子的三年。下面举个通俗易懂的例子,大家一定能理解。

这里拿盖大楼举例,比如某大公司发布了如下一个招聘需求,招聘资深建筑工程师,提供具有行业竞争力的薪酬,要求如下:

  • 5年房屋建设工作经验;
  • 对房屋建设的各个阶段有深刻了解;
  • 熟悉各种类型的砖头、钢筋、水泥等原材料的使用方式;
  • 要求持有国家二级以上建造师证书;
  • 吃苦耐劳优先。

看到这个jd后,只要是有5年经验的建造师都跃跃欲试,都觉得自己可以。

其实这个岗位是干什么的呢?这家大公司想盖一栋50层的高端商业写字楼,需要招一个资深工程师来完成整个高楼的地基、框架和外形的设计,还需要考虑容灾和抗震等级。

而来应聘的一大部分建筑工程师,他们虽然工作了5年,可是他们平时都在做什么呢?大概是这样的:

  • 搬砖、和水泥、砌墙等;
  • 建过的房子不超过6层;
  • 从来没有考虑过地基的搭建、框架和外形的设计,因为他们不需要考虑,只要按照已有的方案来干就行。

就这样工作了5年,在自己的工作领域(搬砖、和水泥、砌墙)驾轻就熟,觉得建房子不就这么简单嘛,觉得自己已经精通了建房子。

但事实上,他们真的能够胜任50层高楼的建筑工作吗?很显然,不能!

什么样的人能够胜任这类工作呢?他们也工作了5年,他们平时所做的事情大概是这样的:

  • 第一年:搬砖、和水泥、砌墙等,参与建造一些6层小楼;
  • 第二年:搬砖、和水泥、砌墙等,同时研究各种砖头、水泥、钢筋等原材料的特性,知道不同原材料的适用场景,可以独立建造6层小楼了;
  • 第三年:跑到另一个建筑队,建造10-20层的普通住宅,开始跟着工头一起参与地基、框架和外形的设计,业余时间阅读一些建筑书籍,了解一些国内外知名建筑的设计思想和理念,并时常在建筑论坛发表自己对建筑设计的理解;
  • 第四年:开始独立负责10-20层普通住宅的建造了,在业余时间开始研究30-40层商业建筑的设计和建造,考虑设计理念、建筑容灾等问题,一心想自己设计一栋更高的大楼;
  • 第五年:一个合适的契机,加入这家大公司,主导50层高端商业写字楼的设计和建造。

到这里,我想大家都明白了。搬5年砖也还只是一个搬砖的,无论如何也设计不了摩天大楼。

对于程序员来说,待在同一个岗位重复着搬砖的工作,是无法有很大成长的,只有不断地挑战自我才是正确的成长姿势。 有人就会问,到底怎么做,才能不被淘汰,不会止步不前,怎样学习呢?下面的图,是一个程序员进阶所需要学习的内容,也是一份知识图谱,我耗费3个月零13天做出来的。

最后说一下我的学习路线

其实很简单就下面这张图,含概了Android所有需要学的知识点,一共8大板块:

  1. 架构师筑基必备技能
  2. Android框架体系架构(高级UI+FrameWork源码)
  3. 360°Androidapp全方位性能调优
  4. 设计思想解读开源框架
  5. NDK模块开发
  6. 移动架构师专题项目实战环节
  7. 移动架构师不可不学习微信小程序
  8. 混合开发的flutter

Android学习的资料

我呢,把上面八大板块的分支都系统的做了一份学习系统的资料和视频,大概就下面这些,我就不全部写出来了,不然太长了影响大家的阅读。需要的小伙伴可以私信我【进阶】我免费分享给大家,或者直接点击下面链接领取,谢谢大家这么久以来的支持。

Android学习PDF+架构视频+面试文档+源码笔记

如果你有其他需要的话,也可以在GitHub上查看,下面的资料也会陆续上传到Github

330页PDF Android学习核心笔记(内含上面8大板块)

Android学习的系统对应视频

总结

我希望通过我自己的学习方法来帮助大家去提升技术:

  • 1、多看书、看源码和做项目,平时多种总结

  • 2、不能停留在一些基本api的使用上,应该往更深层次的方向去研究,比如activity、view的内部运行机制,比如Android内存优化,比如aidl,比如JNI等,并不仅仅停留在会用,而要通过阅读源码,理解其实现原理

  • 3、同时对架构是有一定要求的,架构是抽象的,但是设计模式是具体的,所以一定要加强下设计模式的学习

  • 4、android的方向也很多,高级UI,移动架构师,数据结构与算法和音视频FFMpeg解码,如果你对其中一项比较感兴趣,就大胆的进阶吧!

    进阶学习资料领取方式:GitHub

%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)**

希望大家多多点赞,转发,评论加关注,你们的支持就是我继续下去的动力!加油!

经典好文!手把手教你写Android项目文档,小白也能看明白相关推荐

  1. 程序员如何技术划水,手把手教你写Android项目文档,绝对干货

    安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...

  2. 手把手教你写Android项目文档,醍醐灌顶!

    前言 今天想停下代码,写点脑袋里不断浮现出来的一些看法. 也就是最近在微博和知乎上老看到"互联网寒冬"的说法.要么是看到啥公司薪水无法如期发放了,要么是看到别人说什么"裁 ...

  3. 真牛皮!手把手教你写Android项目文档,内含福利

    概述 想了很久怎么样可以让文章的标题不那么悲观,但是各种文案都在我脑海里面不断的被否定,要么是不那么抓眼球,要么是立意不匹配.最后想了想,这个标题是真的符合我最近的感悟. 希望看过文章,能有同感的朋友 ...

  4. 手把手教你写android项目@第一期项目——身份证查询创新

    序言 这是我第一次尝试讲解一些项目,希望多多提出宝贵意见. 项目的一些说明: 1.第一期项目针对于一些初学者,恩自已安卓开发环境搭键什么的请巴友在论坛自己搜贴. 2.第一期项目讲的会比较细致一些,目前 ...

  5. 开源android项目到jcenter,手把手教你将Android项目开源到JCenter两种方式以及挖坑和填坑(一)...

    - 前言 开发中,或多或少都会用到无私的程序猿分享的开源项目,Androidstudio中使用开源也很方便 例如家喻户晓的Rxjava,只需要一句话compile 'io.reactivex:rxja ...

  6. Android 开发之手把手教你写 ButterKnife 框架(三)

    系列文章目录导读: Android开发之手把手教你写ButterKnife框架(一) Android开发之手把手教你写ButterKnife框架(二) Android开发之手把手教你写ButterKn ...

  7. 网络编程懒人入门(八):手把手教你写基于TCP的Socket长连接

    转自即时通讯网:http://www.52im.net/ 本文原作者:"水晶虾饺",原文由"玉刚说"写作平台提供写作赞助,原文版权归"玉刚说" ...

  8. 手把手教你写Linux I2C设备驱动

    手把手教你写Linux I2C设备驱动 标签:Linux 设备 驱动 详解 i2c 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http:/ ...

  9. 手把手教你写DI_2_小白徒手撸构造函数注入

    在上一节:手把手教你写DI_1_DI框架有什么? 我们已经知道我们要撸哪些东西了 那么我们开始动工吧,这里呢,我们找小白同学来表演下 小白同学 :我们先定义一下我们的广告招聘纸有什么: 好,我们实现两 ...

最新文章

  1. matlab和python哪个运行快_MATLAB比Python更快吗?
  2. 查看oracle所有实例_Oracle目录结构与系统用户-数据库(3)
  3. CSS3笔记之定位篇(一)relative
  4. O-C相关-08-动态类型与静态类型
  5. Power Bi:零售数据可视化
  6. C Tricks(五)—— 比例和阈值的实现
  7. Javascript多线程引擎(二)
  8. 一个意想不到的CDO.Message 错误
  9. Java中try-catch-finally-return的执行顺序
  10. 西门子1200伺服步进FB块程序 含触摸屏程序,SCL写的FB块,中文注释详细
  11. c语言自学文档,自学c语言(全套资料)
  12. Allure测试报告定制化
  13. Redis锁,悲观锁和乐观锁
  14. 一套Java架构开发的电商系统要多少钱
  15. mac上Python版本不同时,给指定的版本安装库
  16. uniapp vue百度人脸实名认证(V4)接口
  17. Sprint(第二天11.15)
  18. 使用html制作个人主页
  19. 猫鸡米问题java_人猫鸡米渡河问题的数学模型.doc
  20. 四史教育自动答题思路讲解(附加Java代码)

热门文章

  1. 如何转换音频格式?建议收藏这几个方法
  2. 关于FIN_WAIT1---TCP四次挥手的状态
  3. 程序员一年工作经验之谈
  4. MOOS例程HelloWorld-详细注释
  5. java手电筒_android--超级手电筒的开发记录
  6. Swagger3 API接口文档规范课程(Java1234)(内含教学视频+源代码)
  7. 计算机电路试题及答案,计算机电路基础试题及答案.doc
  8. 美团点评-数据开发一面凉经
  9. 一、中英文对切基本公式
  10. L. Spicy Restaurant(bfs)