美文网首页
疫情之下,这真是一份完美的程序员宅家指南

疫情之下,这真是一份完美的程序员宅家指南

作者: Android阿南 | 来源:发表于2021-02-02 22:05 被阅读0次

    前言

    2021年的春节假期即将临近,但是最近国内又出现了疫情反复的情况,很多省市都发出了隔离政策,这不禁让我们又开始担心2020年春节宅家一个月的场景会不会再次上演。

    作为一名技术宅,虽说疫情对我的影响可以忽略不计,不过我还是疫情能够早日结束的。毕竟我们每个人都是社交动物,隔离14天真的是太让人绝望了。再说我们绝大多数人的春节假期也不过7天,这一口气直接隔离14天,简直是不给人活路嘛...

    未来,我们无法预计疫情到底什么时候可以结束,我们能够做的就是适应它,做好长期抗疫的准备。

    假如因为疫情被再次要求居家隔离的话,你会怎么做呢?难道你准备一直打游戏,看视频或者刷抖音吗?难度你就准备这样一直虚度光阴下去吗?

    适度的娱乐可以是精神调味剂,但是过度的娱乐可能就是精神鸦片了。

    如果你还希望自己能够有所提升,做一些有价值有意义的事情的话,这里我给出我的五点建议供大家参考,有备无患:

    • 阅读一本好书
    • 学习一项新技能
    • 尝试做一个项目
    • 培养一项兴趣
    • 总结经验

    下面,我将以一名技术人的视角来具体阐述我们应该怎么做,才能更好地宅在家里,提升自己。

    image

    阅读一本好书

    阅读一本好书,那种能够引发你思考的书,是一件非常享受的事情。

    无论什么时候,阅读一本好书都是没有错的。

    尽管现在是信息化时代,我们获取知识和信息的途径有很多,但是书籍是永远不可以被替代的。因为我们从网络上获取到的知识和信息,绝大多数都是碎片化的,很少有人有能力去将它们组织起来。

    这个时候,一本好书的价值就能充分体现出来了:它能够将碎片化的知识和信息整合成一套体系,由简入深,层层递进,能够引起你的思考,激发你的灵感。这类书的作者一般都是行业内比较知名的大咖,阅读他们写的书籍可以让我们少走很多弯路。

    所以,如果你想快速地提升自己的知识面的话,阅读一本好书吧!

    学习一项新技能

    学习一项新技能,提升自己的竞争力,这样在未来你就能有更多选择的机会。

    学习一项新技能的目的,并不是要求你能立马将它运用到你的工作或者生活中去,这样功利性太强反而有可能误入歧途。

    学习一项新技能,可以是和你工作相关的技能:

    • 如果你是一名Java程序员,你可以尝试去学习一下JavaScript语言;
    • 如果你是一名后台服务开发者,你可以尝试去学习一下前端开发技术,例如Android或者Html5页面开发技术。
    • 如果你是一名移动原生开发者,你可以尝试去学习一下跨平台开发技术,例如flutter或者React-Native技术。

    学习一项新技术,可以拓宽我们的知识面,这样在未来我们思考问题的时候,就不会那么的片面和绝对。

    当然,你也可以学习与自己工作无关的技能:

    • 尝试学习理财,让钱生钱。
    • 尝试学习摄影、视频剪辑。
    • 尝试学习烹饪。
    • 尝试学习一门舞蹈、一项乐器。
    • 尝试考一个专业技能证。

    学习一项新技能,虽不能立竿见影地改善我们的生活,让我们获得更高的收入,但是作为一种知识储备,它能让我们在未来有更多选择的机会。

    俗话说,机会总是留给有准备的人。当机会来临的时候,你再去学习的话,那肯定是来不及的了。

    image

    尝试做一个项目

    尝试做一个项目,在实践中检验真理,重构知识体系。

    《实践是检验真理的唯一标准》,这是1978年《光明日报》特约评论员胡福明撰写的,由此改变了一代人的思想,为后来中国伟大的改革开放扫平了障碍。

    早在明朝时期,著名的大思想家王守仁就提出过"知行合一"的理念:知而不行,那么就是不知。

    我们在大学学习的时候,有一个教学环节是我们在大学之前从来都没有的,那就是课程设计。尤其是像我们计算机专业的课程,基本上每门课都有相对应的课程设计。很多时候学期期末的考试并不能准确检验我们掌握知识的程度,那么课程设计就是另一种检验的方式。

    在我们实践的时候,很多平时学习忽略掉的细节可能就显得尤为重要,这个时候我们有可能需要重头再学习一遍,实践的过程同时也是学习和加深理解,重构知识体系的过程。

    尝试做一个项目,可大可小,关键是要贴近生活,能够解决工作或者生活中遇到的一些问题。

    • 如果你是一名Android开发者,你可以写一款App能够方便大家的生活。
    • 如果你是一名后端服务开发者,你可以尝试写一个框架或者工具提升大家的开发效率。
    • 如果你是一名算法工程师,你可以尝试改进一项算法或者用算法改进一项技术。
    • 如果你是一名测试工程师,你可以尝试写一个自动化测试的脚本。
    • 如果你是一名设计师,你可以尝试为某个主题设计一套logo或者宣传海报。

    很多时候我们不要因为简单事小而懒得去做,很多事情并不是你想象中的那样,只有真正去做了才知道其中的价值。

    image

    培养一项兴趣

    培养一项兴趣,丰富自己的业余生活,增添生活的乐趣!

    培养一项兴趣可能和上面的学习一项新技能有些类似,不过目的完全不同。

    兴趣并不一定做得好,做得好的也不一定是兴趣。那么如何去界定什么是兴趣呢?

    所谓兴趣,就是一件长期以往你一直愿意去做的事情。你可以不用做得很好,也不用一直去做,但只要你去做就能给你带来快乐。

    读书、写作、歌唱、乐器、健身、体育运动、烹饪、摄影、绘画、舞蹈等,这些都是值得我们去培养的兴趣,我们只需结合自身情况,选择几个我们感兴趣的培养即可。

    没有兴趣的人生,生活是枯燥的,世界是单调的。所以,为了丰富自己的业余生活,增添生活的乐趣,赶紧着手培养一项兴趣吧!

    image

    总结经验

    学会思考,学会总结,这样你才能有所成长。

    纵观历史,我们可以发现许多伟人、名人或各行各业的佼佼者都有一个显著特点: 善于总结经验。

    俗话说失败乃成功之母,但如果每次失败你都不吸取教训,总结经验的话,可能失败就是真的失败了。

    著名的学习金字塔理论就曾告诉我们:最好的学习方式是教别人。

    image

    我们在总结经验的时候,同样也可以使用教别人的这种方式,这样可以让我们总结得更加全面和彻底。

    这里,作为技术人,我还是推荐大家有时间可以整理一下平时工作或者生活中积累的一些感悟或者心得,总结下来,并以文字(博客)或者视频的方式分享给大家,这样你即加深了印象同时也造福了大家,岂不是一举多得的事情嘛?

    最后

    说了这么多,相信此刻的你心中应该也有了份属于自己的假期宅家计划了吧。不过还是那句话--"知行合一",光知道没有用,你还得去付诸实践才行!

    学习路线与资料分享:
    我自己做Android开发已经是第5个年头了,在毕业后的第二年,有幸加入到字节跳动这个大家庭。在字节的4年,见证了太多人的来来去去,印象很深一个同事,跳槽阿里薪资直接double,但也看到很多人镀着“大厂”的金四处碰壁,终究还是倒在了技术上!

    我自己或许也算是个成功的例子,在4年的时间里从1-1做到了2-2,当然,这背后的“辛酸泪”就留到日后再说。总的来说,归功于自己不断地学习,复盘总结,提升技术!以下分享一下我4年来具体的学习路线及笔记文档,希望能帮助到有心提升技术的朋友!

    • 架构师筑基必备技能

    目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。

    知识要点:
    1、深入理解Java泛型
    2、注解深入浅出
    3、并发编程
    4、数据传输与序列化
    5、Java虚拟机原理
    6、高效IO

    架构师筑基必备技能
    • 设计思想解读开源框架

    随着互联网企业的不断发展,产品项目中的模块越来越多,用户体验要求也越来越高,想实现小步快跑、快速迭代的目的越来越难,插件化技术应用而生。如果没有插件化技术,美团、淘宝这些集成了大量“app”的应用,可能会有几个g那么大。

    所以,当今的Android移动开发,不会热修复、插件化、组件化,80%以上的面试都过不了。

    知识要点:
    1、热修复设计
    2、插件化框架设计
    3、组件化框架设计
    4、图片加载框架
    5、网络访问框架设计
    6、RXJava响应式编程框架设计

    设计思想解读开源框架
    • 360°全方位性能调优

    在不同层次的开发工程师手里,因为技术水平的参差不齐,即使很多手机在跑分软件性能非常高,打开应用依然存在卡顿现象。

    另外,随着产品内容迭代,功能越来越复杂,UI页面也越来越丰富,也成为流畅运行的一种阻碍。综上所述,对APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。

    1、设计思想与代码质量优化

    2、程序性能优化

    • 启动速度与执行效率优化
    • 布局检测与优化
    • 内存优化
    • 耗电优化
    • 网络传输与数据储存优化
    • APK大小优化

    3、开发效率优化

    • 分布式版本控制系统Git
    • 自动化构建系统Gradle

    4、项目实战

    • 启动速度
    • 流畅度
    • 抖音在APK包大小资源优化的实践
    • 优酷响应式布局技术全解析
    • 网络优化
    • 手机淘宝双十一性能优化项目揭秘
    • 高德APP全链路源码依赖分析
    • 彻底干掉OOM的实战经验分享
    • 微信Android终端内存优化实践
    360°全方位性能调优
    • Android框架体系架构

    Android框架体系架构(高级UI+FrameWork源码) 这块知识是现今使用者最多的,我们称之Android2013~2016年的技术。

    Android开发者也往往因为网上Copy代码习惯了而导致对这块经常“使用”的代码熟悉而又陌生:熟悉的是几乎天天在和它们打交道, 天天在复制这些代码 ;陌生的是虽然天天和这些代码打交道,但是并没有深入研究过这些代码的原理,代码深处的内涵。

    本篇知识要点:
    1、高级UI晋升
    2、Android内核组件
    3、大型项目必备IPC
    4、数据持久与序列化
    5、Framework内核解析

    Android框架体系架构
    • NDK模块开发(音视频系列)

    NDK(Native Development Kit缩写)一种基于原生程序接口的软件开发工具包,可以让您在 Android 应用中利用 C 和 C++ 代码的工具。通过此工具开发的程序直接在本地运行,而不是虚拟机。

    在Android中,NDK是一系列工具的集合,主要用于扩展Android SDK。NDK提供了一系列的工具可以帮助开发者快速的开发C或C++的动态库,并能自动将so和Java应用一起打包成apk。

    本篇知识要点:
    1、NDK开发之C/C++入门
    2、JNI模块开发
    3、Linux编程
    4、底层图片处理
    5、音视频开发
    6、机器学习

    NDK模块开发
    • Flutter学习进阶

    2019 年无疑是 Flutter 技术如火如荼发展的一年。

    每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。

    本篇知识要点:
    1、Flutter跨平台开发概述
    2、Windows中Flutter开发环境搭建
    3、编写你的第一个Flutter APP
    4、Flutter Dart语言系统入门

    Flutter学习
    • 微信小程序开发

    微信小程序作为现在比较火的编程开发应用场景之一,深受市场的青睐,这让不少开发者眼馋不已。但是对于初学者来说,就完全摸不着头脑了,不知道微信小程序开发制作需要学习那些知识,有需要的朋友可以参考本篇。

    本篇知识要点:
    1、小程序概述及入门
    2、小程序UI开发
    3、API操作
    4、购物商场项目实战

    微信小程序开发
    • Android相关源码解读
      只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
    Android相关源码解读 Android相关源码解读部分内容

    由于篇幅原因,以上完整学习笔记pdf如有需要,可以点赞+评论支持下小弟,点击这里免费自取

    更多Android架构相关资料可以点此处免费获取

    相关文章

      网友评论

          本文标题:疫情之下,这真是一份完美的程序员宅家指南

          本文链接:https://www.haomeiwen.com/subject/dasutltx.html