年难留,时易损,2020年已经过去,2021年已经到来,我在这里祝大家新年快乐!今天是2021年的第一天,在此我打算写一篇文章来总结一下自己在2020年一年时光里的历程,同时还在对2021年做一个计划。总结过往,展望未来。
1. 总结2020
2020年注定是不平凡的一年,疫情影响了每个人的生活。我也不例外,年初的时候,在家办公了一个月,同时还在家吃了一个多月的泡面,关键是那个时候,口味好的泡面根本就买不到,想想那个时候怪可怜的。
(1). 2020年的学习
瞎扯了几句无关主题的话,我还是直奔主题吧。我在去年的年度总结给自己列了4件事,分别是:
- 完成mvvm框架,维护Blade,并且深入学习jetpack。
- 深入学习Android 相关知识,比如说Java 虚拟机,Android虚拟机以及应用层相关知识。
- 坚持对算法和英语的学习。
- 阅读1 ~ 2本文学名著。
说句实话,有计划是真的好。在2020年里面,我也是照着计划来安排自己的事情,每件事都满满当当的达到目标。
首先,我说一下完成mvvm框架,维护Blade,并且深入学习jetpack这个计划。mvvm框架起步较为早,我是从2019年国庆节开始的,当时主要是系统性的学习kotlin和jetpack,这一步完成之后,才正式进入mvvm框架的设计和开发,前前后后大概花了4个月时间完成框架的开发,到3月初才算是正式开发完,在那时我还特地的写了一篇文章来记录当时激动的时刻:mvvm - mvvm框架的入门使用。在这个框架中,我学到了很多东西,首先是熟练的掌握kotlin语言,其次对jetpack各个组件理解的更加深入和透彻。不过,对于框架,我有一个遗憾,就是没有很好的维护它,更新它,其次感觉设计出来并没有用武之地,就是一个玩具,所以为了弥补这个遗憾,在2021年制定的计划里面,会有一项计划会去完善这个框架,这项计划也是我未来三年需要持之以恒完成的事。话说回来,在完成mvvm框架之后,我就开始啃jetpack 4大组件的源码,分别是:Lifecycle,LiveData,ViewModel,Paging。啃过程的也是特别艰辛,在阅读源码期间,我感觉我都要把官方文档和相关资料翻烂了,最后辛辛苦苦的写下了4篇文章:
这其中,Paging那篇文章花了我最多的时间,差不多2个月才写完。这个过程其实非常的坎坷,我有几次都想放弃,主要是有如下几点:
- Paging库本身特别的复杂,涉及到的源码也特别多。
- Paging在架构设计上感觉有点不友好,代码阅读起来特别的费力,理解起来特别的艰难。
- 其他时间上的原因。
基于众多的原因,导致我写Paging那篇文章差不多花了1个月的时间,我也完全没有想到这篇文章会成为我自写作以来写的最长的一篇文章,总字数超过了1w字。
其次,第二个计划是学习Android相关知识。这个其实没有特定的完成,主要是利用了工作之便学习了很多的东西,主要分为如下几个部分:
- 更加深入的理解RecyclerView源码实现,基于此,我写了两篇关于RecyclerView 的文章:RecyclerView扩展(六) - RecyclerView平滑滑动的实现原理,RecyclerView扩展(七) - ConcatAdapter源码分析。这些都是在工作中学到新知识。
- 对嵌套滑动理解更加深入,并且得以手撸一个嵌套滑动的处理框架,借公司之便,还申请了一个专利。这个专利也算是我人生中的第一个专利,虽然没啥技术含量,但是收获感十足。
- 对Jetpack Compose 摸索且入门学习,这个也是借工作之便完成的。Compose 是在Google今年在Jetpack新增的一个组件,大概是今年9,10月份才推出alpah版本,所以国内的资料少的可怜,最后我花了一周多的时间,学习官方文档,研究Demo,阅读源码,总算是对Compse入了一个门。对于Compse的后续安排,我暂时没有下一步的计划,因为Compse 实现的特殊性,推广起来会有很大的阻碍,所以不确定是否可以流行起来,只能伺机而动。不管怎么说,Google推出的东西不会有错,前景可期!
上面,我只介绍了比较大块的知识,还学到了很多零零碎碎的知识,这些没法一一列举。总的来说就是一句话,只有不断的学习才能不被时代淘汰。就比如说,Google今年在jetpack里面新增加三个组件,分别是:hilt,DataStore,Paging3。除了Paging3正在学习,其他的还没有来得及学习。
然后,就是对算法和英语的学习,这个计划没有落下,一直在进行,且学习的模式不定。就如说算法,有时候会去网站上刷一会题,有时候会看特定的算法书或博客,用来提升自身算法的能力。其中一件事值得说说,前段时间,我在极客时间上买的一个算法课程,在这之前已经学习完了。在这个课程中,既把大学里面学到的东西复习一遍,同时又学到了很多额外的知识,就比如说数据结构,学到了跳表;过滤器学到了BitMap和布隆过滤器等,真的是收获满满。关于英语的学习,也是没有特定的计划执行,平时学习的时候看的都是英文文档,英语理解能力在一定程度上有提升,同时我还发现现在我阅读英文文档基本没有什么障碍。
最后,就是阅读一些文学名著。今年一共看完了3本书,分别是:《活着》,《许三观卖血记》,《天龙八部》,现在正在看《射雕英雄传》。之所以要求自己看一些课外书,一个是陶冶情操,平时工作压力大,看书可以适当的放松心情;其次是提升自己软实力,比如说语言表达能力和处事待人能力,这些都可以通过看书逐渐的学到一些。通过这事,我也悟到了一个道理,一定要多看无用之书,多做无用之事,看似无用,实则大用。
(2). 2020年的生活
2020年在生活上相比上一年并没有多大的改变,自己依然是孑然一身,没有女朋友。可能说的出口就是在2020年里面,搬进了新家,包括去年过年也是在新家里面过的,其次就是把买房欠下的钱还清了,经济算是轻松了一些吧。说到了经济,感觉自己要在新的一年里面好好规划一下,本来给自己设置了月开销的最大限度,但是几乎每个月都超上限,感觉就是因为自己没有严格执行,从而导致今年的存款没有达到预期。
在这里,也随便说说工作吧。工作上主要是两个变动:
- 今年5月1号开始,公司开始实行大小周,这个导致我的自由时间减少了,从而导致我学习没有那么多的努力,大家可能从我今年写的博客就可以看出来,几乎几个月才一更。哎,没有办法,大小周真的累死人。
- 自己工作内容有变动。以前主要是完成产品的业务需求,事多但是不复杂;现在主要是做技术架构。说句实话,这么变动才开始的时候还不太适应,因为技术架构全靠自驱,你可以一周摸鱼没人管,也可以学习新技术等,同时代码也没有以前那么好写了,以前写代码完成业务就行,稍微考虑一下扩展性就很好了;现在搞技术架构,写代码要不断的考虑抽象,高内聚低耦合。哎,实力还不太够,所以执行起来还有点费力。基于此,我在2021年的计划里面,会对其进行特定的学习和提升。
关于工作,还有一件蛮开心的事,就是今年一共进行了两次涨薪,一次晋升。
(3). 2020年的不足
一个字,懒!今年博客输出的少,一个原因是大小周,时间少了;还有一个原因就是,变得更懒了。有的时候,周末在家,就懒得动,在床上躺一天,或者打一天游戏,看一天的剧,导致很多计划都delay完成。
感觉【懒】这个坏毛病很难改掉,但愿在2021年里面这个毛病可以有所改善吧。
2. 展望2021
新年新气象,我应该也要有新的计划。
- 学习python。做技术架构之后,发现自动化工具和脚本真的非常重要,所以特定的学习python,以辅助工作。
- 学习程序设计原则的课程,以及学习框架设计的经验。
- 深耕Android,不断的学习Android的技术。
- 完善mvvm框架,利用现有最新的技术开发一个系统性的项目,时间周期为3年。
- 继续学习算法和英语。
- 阅读 1 ~ 2本文学名著。
- 制定一个经济开销的计划,且严格执行。
网友评论