Android步伐员架构之路该怎样继续学习?资深架构师分享学习经验及总结 ...

打印 上一主题 下一主题

主题 793|帖子 793|积分 2379

###官方文档扯完了,我们接着来聊聊怎样进阶学习
首先要说的是,技术的学习是个日积月累,由量变到质变的过程,没有任何的办法能够让你在短时间内成为大牛,所谓的一步登天,是留给那些传说中的天才的,但天才毕竟只是极少的一部分人。
大部分大牛还是靠着持之以恒的毅力,冠以精确的学习方法,通过不停积极,不停学习,花费了大量的精神才到达了他们现在的成就。
所以,当你通读完官方文档的时候,你实际上只是迈出了一小步,要成为真正的大牛,还需要在之后的学习中不停积极。
那我们怎样来举行下一步的学习呢?
那就得说到项目实战了
我们学习一门技术的最终目的就是将其运用到实际项目中,一门技术不管多锋利,假如没有办法运用到实际项目中,那它的意义跟价值就非常有限了。
而且人脑不比计算机,是会遗忘的,假如不通过大量的项目实战,许多知识点你很快便会忘记,至少我是如许的(谁能告诉我,影象力不好怎么才能被救济!!)。
所以读完官方文档后,我们是肯定要通过大量的项目实战来不停巩固我们的知识点的,此时的你许多知识点其实是不能完全理解的,只有通过项目的历练,在踩坑中分析,在解决题目中成长,才能从本质上理解一些技术的概念。
有经验的开发人员应该多多少少有如许的履历,就是有些概念一开始并不是很理解,但是在一次次的项目过程中,你会发现竟然不知不觉地明白了此中的原理,是的,就是这种感觉!
对于项目实战,我其实没有太多的本领,还是一句话,就是干,但是这个过程中你肯定要去多思考,为什么这么写,为什么这么做,学着去相识原理,去关注本质。
再来聊聊读技术文章
在如许一个信息大爆炸的时代,要从网上找到某一门技术的干货文章是非常轻易的一件事,各类的技术平台(csdn,cnblogs,oschina,安卓巴士,segmentfault等等等),各类的微信平台公众号,都是很好的获取干货信息的途径。
虽说官方文档很神奇,但是还是有许多知识点我们可能还没发现,由于他们每每隐藏在更深的API文档之中,而大量的API也导致我们很难将所有的API文档都通读,更多的还是将其作为一个查阅工具来使用。
在我的观念里,不主动去关注各种技术平台获取技术信息的步伐员不是一名合格的步伐员,
所以每天早晨我都会花至少一个小时在关注的各类技术平台上获取有用的信息


  • 一方面查找相关技术的干货文章,通过对这些文章的阅读对自己的知识点举行巩固和查漏补缺,毕竟技术的学习不仅仅是文档上那些最原始的技术点,还包罗各种架构的设计、工具的使用、功能的实现及解决方案的应用等,通过这些平台上的各种文章,可以让自己的知识体系更加地完满。
  • 另一方面,作为一名开发人员,我们需要通过这些平台相识最新的技术动态,关注技术的发展趋势,毕竟现在技术的更新速度非常之快,技术生态圈的转换随时会导致某项技术的镌汰(作为一个俗人,我是来赚钱的,所以根据技术趋势做好技术储备对我来说是必不可少的)
    话说回来,步伐员真是一群爱分享的小同伴,所以现在的技术文章真的是太多太多了,多到眼花缭乱。
我们不得不根据自己的情况来举行得当的筛选和阅读,来进步学习效率。
就我来说,我根据自己的理解将技术类文章分为了四类:


  • 知识点讲解类:一般针对某个技术的特定知识点举行介绍。
  • 功能实现\解决方案类:针对性比较强,一般都是某个特定功能或是特定场景下的功能实现或是方案应用包括Bug的解决方案等,文章一般会带有肯定的思路分析,以及详细代码实现。
  • 源码\框架原理分析类:针对各个技术点或是框架举行源码拆解、分析和讲解。
  • 学习方法/经验总结类:主要是介绍一些学习方法,以及对项目开发中碰到的题目举行总结分析。
对于知识讲解类的文章,假如你已经学会了阅读官方文档,那很轻易就能够判断它是否只是文档的搬运工,假如是文档的搬运工,我会快速略过,重点关注作者是否加入了自己的分析和观点。假如是作者原创的,那我会仔细阅读一遍,看看自己对于某个知识点的理解是否有毛病,是否有遗漏。
功能实现\解决方案这类的文章,场景众多,我重点关注的是它的实现和分析思路,以便在雷同的场景中举行闻一知十,对于一些常用功能或方案,我会仔细阅读和研究他们的代码,剩下的则主要举行标记和收藏,在大脑中留个印象,建立个索引,在需要的时候再去举行查阅,像我如许的渣影象,不常用场景的实现一段时间后就只记得标题了。
源码\框架原理分析类的文章我会反复阅读,同时结合源码做验证,并且定期做一下复习或是总结,在大脑里不停加深印象,由于对于原理的理解能够帮助我在碰到项目难题时更快更好地找出最佳的解决方案。
学习方法/经验总结类的文章,数量上相比其他范例的文章并不会太多,一般我会很仔细的阅读,正所谓前人栽树后人纳凉,学习他们的经验可以让我们少走不少弯路,当然这类文章主观意识会比较强,需要我们自己来举行辨别哪些是真的有用。
有人可能要问了,每天花一小时阅读技术文章,文章读得会很缭乱吧。。。
确实是如许的题目,我们大脑的容量毕竟有限的,就像我们的LRUCache缓存策略,最常用信息的总是会保留在大脑中,但是时间太久了不关注的内容很快就会抛弃遗忘(传说世界上有那么一群“超忆症”患者,没有遗忘的能力。能把自己切身履历的事变,记得一清二楚,能详细到任何一个细节,好倾心有木有!)。
对于遗忘的题目,我们能做的就是做好收藏工作,但是技术平台太多,将文章收藏在各个平台中当需要查找的时候会发现记不清收藏在哪个平台了,这时一个平台一个平台的搜寻效率肯定是低下的。
所以我们可以使用云条记大概github,将那些你以为优秀的需要收藏的文章整理到一个地点去,按照自己对文章的分类,建立差别的链接索引,给每个索引的标题起个你认为紧张的关键词,在每次添加新的文章的时候可都回顾下收藏的索引,如许在你想要查找某篇文章时便能用最快的方式查找到。
####我会读文档了,又阅读了这么多技术博客,是不是就不用其他方式再学习了?
答案肯定是不可以!!!
固然博客的干货文章非常的多,但是大部分情况下知识体系都是相对比较零星的,相比书籍,它没有那么系统化,相比视频教程,它又没有那么的直观,所以抛开文档跟博客的学习,我们还需要根据自己的情况额外地举行书籍或是视频教程的学习
有人以为自己总是静不下心来看书,我的方法是,阅读某本书的时候给自己定一个小目标,比如每天阅读该书至少20页内容,如许每天学习的内容不会太多,不轻易让人变得焦躁,当然,你可以根据自己的情况订定每天的阅读量,假如按照20页每天的阅读量来算,一本500页的书,不到一个月就读完了。
有人以为看视频教程时间太久,实际上也确实如此,有的博客十多分钟能够读完的内容,放到视频中去讲常常需要1个小时,但是视频教程的上风就是你可以看到实时的利用跟讲解画面,一些概念更直观,更轻易让人理解。
当然假如你播放的是本地视频,可以使用诸如potPlayer如许的支持加速播放视频,同时视频声音又不会改变的播放器来加速视频的观看。
   这里我放上我一起学习网络整理出来的Android高阶学习视频,有需要的同伴可以给我【简信】大概加后文中的【技术群】免费获取~
  

####到了验证进阶学习成果的时候了
什么,你读过的博客都忘了?
哎呀,我刚看过的书跟视频的内容好多也记不清了呢!
Oh,NO,几个月前项目实战中碰到题目时的解决方案也忘了!
所以说,人的影象力是非常有限的,随着时间的流逝,许多东西会天然而然被遗忘!
那么,在技术学习或项目开发中,我们应该怎么做来尽量淘汰我们的遗忘率呢?
我的做法是预备好条记类工具,可以是云条记,可以是博客,也可以是github,总之,能够方便我们使用和随时随地检察的工具都可以。
当我们在技术学习或项目开发的过程中,碰到紧张的题目或知识点时,我们可以随手打开工具举行整理,大概简单记录一下,比及学习或项目功能完成后,再同一归纳总结并重新整理。
如许,我们的知识便整理了成了自己持久化的文档,当你以后有需要的时候,就可以随时打开他们举行知识巩固跟复习了。
假如你乐意,还可以随时将他们分享到博客平台上,当你的分享不停地收获到赞赏,当关注你的用户越来越多时,我想你的成就感肯定是不问可知的,与此同时也能给你的学习工作带来更大的动力。
当你的归纳总结能力越来越强,你的分享越来越优秀时,会有工作机会找上门,也会有供应商找你做项目,更有甚者会有出版商找你出书,可以说,这也是一个自我营销不错的方式!
说了这么多,这里我给各人强烈保举一个非常适适用来做归纳总结和记录的工具 GitBook,它的功能非常强大:


  • 支持markdown编辑器,现在许多博客(csdn、简书、安卓巴士)都支持markdown编辑器,如许你自己的记录假如想发布到其他平台上的话只需要复制黏贴就可以了。
  • 支持绑定github账号,能够文章存储到github堆栈中,举行版本管理和维护,可以让大伙一起来写文章哦,同时还能主动绑定到github的博客系统上。
  • 支持章节分类,主动天生各章节目录,可以在线阅读并天生pdf等格式的电子书
####技术学习光靠一个人是不可的,所以我们还需要多跟别人探讨技术题目,可以是四周的同事跟朋友,也可以是技术群
说到技术群,我加了不少的技术群,闲暇时我会在群里跟各人讨论讨论技术或是唠嗑。
当然我们加技术群的目的绝不只是为了唠嗑。
这里就来聊聊技术群可以给我们带来的帮助吧:


  • 对大部分人而言,技术群给我们的好处之一就是不懂的技术题目可以进去寻求帮助,当然,提问的条件最好是你已经百度,Google跟stackoverflow过了,并且没能找到合适的答案。
  • 群里都是来自五湖四海的小同伴,他们来自于差别的公司,而差别的公司可能采用差别的技术或架构,通过对群里聊天内容的筛选,我们经常能在各人沟通的过程中看到一些新的技术框架或名词,我会将这些名词跟框架记录下来,然后到网上去举行相识和学习,可以说,这在肯定水平,帮助我拓展了视野。
  • 这是我最喜欢干的事,就是帮助别人解决技术题目,有人可能会疑惑为什么我会喜欢帮助别人解决技术题目
首先呢,帮助别人解决技术题目能给我带来肯定的成就感
其次呢,你在帮助别人解决某个技术题目时,你需要对这个题目的产生及相关概念有比较透彻的熟悉,同时还需要组织好自己的语言,用最通俗易懂的方式来让对方理解,这个过程无形中就帮助你巩固了知识点,同时也进步了自己的笔墨表达能力;
假如碰到没有碰到过的题目,那解决这个题目的过程,不仅可以提升自己解决题目的能力,同时还能帮助我们学到新的知识。
   这里我放上我自己创建的一个技术交流学习群:887084983,里面有来自五湖四海的步伐猿们,每天热聊技术,互相学习讨论,偶尔也聊聊娱乐小段子放松放松,最紧张的是!!!群里不定期免费分享Android高阶学习资料,此中不限于高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小步伐、Flutter等全方面的Android进阶实践技术
  ####是时候开始更高阶的学习了
通过上面提到的各种方式的学习,在一段时间的积累后,你对技术的各个概念、知识点,都已经把握得非常不错了,这个时候,想要继续提升,阅读源码\分析原理是成了我们的不二选择。
那我们怎样来阅读源码呢?
对于面向对象语言相关的技术,我的发起是假如偶然间,肯定要把24种设计模式,6大设计原则学一遍。
优秀的项目大概框架,在应用架构的设计上都是非常优秀的,它们每每会应用各种设计模式来优化项目的架构,也因此会导致项目的结构异常复杂。
这类的源码只有当你对设计模式有了肯定的理解时,才不会被源码中的各种接口,继续,抽象类搞得晕头转向,才能充分理解为什么代码要这么写,这么写的作用和意义。
当然假如光靠读,你是很丢脸懂理解各个文件之间的关系的,我们需要预备一些辅助工具,比如UML图绘制工具,例如visio、rational rose等,我自己现在使用的是starUML,这个工具主要安装步伐够小,试用版的功能也足够我画大部分图了。
在阅读源码的过程中,我们就可以通过绘制工具将各个文件之间的关系绘制出来,同时绘制出大概的流程图,如许一轮代码读下来,基本就能理清代码的团体结构了,接下来就对代码细节的学习也就会变得相对轻易了。
最后,阅读源码后记得做好总结归纳,并记录下来,否则一段时间后,你肯定是会淡忘的,毕竟大部分人连自己的代码过几个月后都搞不清晰了,更何况是别人的代码呢
对于许多初中级Android工程师而言,想要提升技能,每每是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些架构技术盼望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不紧张,盼望读者们能服膺这一点。我这里放上一份Android开发的详细学习大纲给各人参考参考:

####最后的提升
就像我前面提到的,技术的学习是个日积月累,由量变到质变的过程,按照上述的方法,并且能够持之以恒地学习下去,颠末几年的历练,你已经可以超越大部分步伐员了。
但是要想成为一名不被镌汰的真正的大牛级步伐员,却还有很长的路要走。
想要不被镌汰意味着什么?意味着你写的东西需要足够核心,并且很难被年轻人替代,假如仅仅停顿在使用某门技术或是框架上,随着年事的增长,你的自身价值是会越来越低的(假如转管理,那就另说了)!
我们知道,越是核心越是深层次的技术,会涉及到越来越多的算法、数据结构、编程头脑等知识,不管现在的技术及框架更新速度有多快,底层的许多算法跟原理还是万变不离其宗的。
所以,最终我们还是需要在算法,数据结构,编程头脑,计算机原理等方向深耕!!
现在你能明白为什么有人会说算法、数据结构决定了步伐员的高度了吗?
【数据结构算法专题学习资料包】

有爱好的同学就指定自己的计划开始学习吧!
最后,假如大伙有什么好的学习方法或发起欢迎各人在批评中积极留言哈,盼望各人能够共同学习、共同积极、共同进步。
小编在这里祝小同伴们在未来的日子里都可以 升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生顶峰!!
   不论碰到什么困难,都不应该成为我们放弃的理由!
  许多人在刚接触这个行业的时候大概是在碰到瓶颈期的时候,总会碰到一些题目,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,需要一份小编整理出来的学习资料的关注我主页大概加技术群获取获取免费领取方式~
假如你看到了这里,以为文章写得不错就给个赞呗?假如你以为那里值得改进的,请给我留言,肯定会认真查询,修正不足,谢谢。
自我介绍一下,小编13年上海交大结业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里不停到现在。
深知大多数初中级Android工程师,想要提升技能,每每是自己摸索成长大概是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此网络整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是盼望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻各人的负担。





既有适合小白学习的零基础资料,也有适合3年以上经验的小同伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包罗大厂面经、学习条记、源码讲义、实战项目、讲解视频,并且会连续更新!
假如你以为这些内容对你有帮助,可以扫码获取!!(备注:Android)
最后

我这里整理了一份完整的学习思维以及Android开发知识大全PDF。

当然实践出真知,纵然有了学习线路也要注重实践,学习过的内容只有结合实操才算是真正的把握。
《互联网大厂口试真题剖析、进阶开发核心学习条记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
[外链图片转存中…(img-rhmZcMz2-1713272813975)]
当然实践出真知,纵然有了学习线路也要注重实践,学习过的内容只有结合实操才算是真正的把握。
《互联网大厂口试真题剖析、进阶开发核心学习条记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

小小小幸运

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表