前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >致敬达叔|一名Android程序员的自我修养

致敬达叔|一名Android程序员的自我修养

作者头像
xuexiangjys
发布2022-04-18 13:30:27
3800
发布2022-04-18 13:30:27
举报

前言

"没有小角色,只有小演员",这是出自周星驰电影《喜剧之王》中周星驰扮演的尹天仇随身携带的书--《演员的自我修养》。

最近达叔的离世,让我感慨万千。作为在中国土生土长的90后,也算是看着达叔的电影长大的,尤其是他和周星驰合作拍摄的电影,给我带来了很多的快乐。

这段时间我又重新温习了一遍《喜剧之王》,在了解了达叔的人生经历之后,回头再细细品味达叔的作品,让我不得不敬佩达叔的职业素养:即使常年只演配角,没有多少戏份,却依然不忘磨练自己的演技,把每场戏都当作主角来演。只凭借出演配角和小角色就能出名的,相信唯有达叔一人了。

想到这儿,我不禁想起了我之前读过的一篇文章,文章的内容大概是说:一个人的修养决定了一个人的发展上限。达叔只凭借演配角就能在群星璀璨的演艺圈留下浓墨重彩的一笔,可见他的演员修养是极高的。

这里我再举一个我们身边的例子:我们很多人从大学毕业出来找工作后,当时大家的差距还是非常小的。可是为什么随着时间的推移,大家之间的差距会变得越来越大呢?而那些最出众的,也不一定是那些最聪明或者在学校成绩优异的那帮人?这是因为学校里的那套评判标准,是无法去衡量一个人的价值乃至修养的,而真正能衡量这一切的是社会。

说了这么多,我们言归正传,作为一名Android程序员,我们如何才能提高我们的自我修养呢?

如何提高自我修养

通过不断提高我们自身的修养,才能不断突破我们的职业天花板,让我们的未来充满无限可能。

如何才能提高我们的自身的自我修养呢?因为我是从事Android开发,这里我就以Android程序员的视角,来阐述我们提高自我修养的六大要素。

保持对技术的热情

对技术保持持续性的热爱是提高自身修养的先决条件。

俗话说,兴趣是最好的老师。由于信息技术日新月异的变化,这就要求我们从业者必须具备极强的自学能力,而保持对技术的热情可以为我们自学提供无穷的能量。

对技术的热爱是程序员的灵魂,一个没有了灵魂的程序员注定会沦为一台没有感情的搬砖机器。 很难想象一个已经对技术失去热情的人,还能够在技术的道路上走多远。

那么如何才能保持对技术的热情呢?

  • 保持对新技术的好奇心。只要保持一颗好奇心,我们才会不断地学习,不断地尝试新技术。
  • 保持技术的成就感。多做有挑战性的技术或者事情,这样才能获得技术上的成就。如果每天做的都是千篇一律的事情,获得不了技术上的成就,那么热情逐渐冷淡是必然的。
  • 保持旺盛的精力。很难想象一个终日无精打采的人能对技术有什么热情。

其实,热情这东西是虚的。并不是我们有了热情就能做成每件事的,而是我们做成了每件事获得相应的成就后,才能产生热情的。然后热情又会推动我们更加努力地做去每件事,从而形成一个正向的反馈。

掌握扎实的基本功

优秀的程序员,拒绝花里胡哨。

做技术切勿盲目追新追异

在这个信息爆发的时代,技术的更新迭代是日新月异的。可能你前脚刚捂热的新技术,后脚就凉了...

就拿我们移动端的混合开发技术来说吧,两年前我还在使用react-native来写跨平台应用,可两年后我就转用flutter来写了。谁能晓得N年后我在用什么技术来写这些应用,说不定N年后都已经没有移动端的概念了。

其实无论混合开发的技术变成啥样,只要你搭载的操作系统还是那个Android或者IOS,对我们来说就是换汤不换药,没有本质上的区别。只要你把原生开发技术掌握扎实,换什么技术不能做?

所以,盲目地去追捧或者是学习新技术其实是不太理智的。

何为基本功

所谓的基本功,也就是基础知识,是那些亘古不变的真理。 任何技术都有其基础知识,计算机也不例外。掌握了它们我们就能够融会贯通,这也是科班出来的程序员比半路出家的程序员的优势所在。

这里我就以Android技术为例子,其基本功主要有:计算机组成原理、操作系统(Linux)、计算机网络、数据库、数字电路、Java语言基础和设计模式等。

千万不要认为你会写几个界面、几个App,能在Android设备上跑了,就是掌握Android这门技术了...其实这些在我看来,都是一些皮毛而已。不掌握这些基本功,你是永远无法提升自己的技术水平的。

为什么要掌握扎实的基本功

记得以前看过《倚天屠龙记》里面的一个片段:张三丰教张无忌太极拳的时候,张无忌只学习了一遍就学会了。为什么张无忌能够学得这么快?这是因为他学会了九阳神功,内功大增,基础够扎实,像太极拳这种招式当然就一学就会啦。这里内功就好比我说的基本功,太极拳这一类的招式就好比我说的某一项技术。

所以,掌握扎实的基本功,是为了我们能够更加快速地学习一门新的技术,这样我们就能在日新月异的技术迭代中立于不败之地。

追本溯源探寻本质

学习一门技术, 掌握如何去使用只是你迈出去的第一步,后面更重要的是要追本溯源,深究其底层实现原理。说到底,很多技术原本就是相通的,你对技术掌握的深度,决定了你在这条道路上能够走多远。

我们在学习任何技术的时候,要做到知其然并且知其所以然,切忌只停留在使用的层面。

试想一下,你作为一名Android开发,每天都在和Activity或者Fragment打交道,如果突然有一天有人问你Activity是如何启动的,而你却答不上来,岂不是很尴尬?

做了这么多年的Android,我总结出一条规律:在解决问题没有任何思路的情况下,看源码理解其实现原理,往往能够提供非常好的解决思路。

那么怎样才能帮助我们掌握一门技术的实现原理呢?

  • 1.养成阅读源码的好习惯。优秀的源码不仅可以帮助我们理解其实现原理,还可以帮助我们快速提升技术水平。
  • 2.熟练掌握设计模式。掌握了设计模式,我们就可以极大地提升我们阅读源码的速度,加速我们理解其实现原理。
  • 3.多尝试一些复杂/核心/难度性较高的工作。因为只有涉及到一些复杂的业务或者功能的时候,我们才会涉及到技术的部分实现原理。 4.多思考多总结。毕竟我们不可能一下子就能掌握一门技术的实现原理,这就要求我们需要进行日积月累的学习和反思,并不断进行总结,这样才能真正掌握这门技术。

严于律己宽以待人

成功的人往往也是最自律的那波人,这在做技术领域也同样适用。

那么在技术领域,我们要怎样才能做到严于律己宽以待人呢?

  • 1.养成良好的编码规范。你写的代码就可以直接代表你的水平,良好的编码风格可以为你赢得同事的信任。
  • 2.培养阅读文档和编写文档的能力。阅读文档是作为一名研发人员的基本功,而编写文档则更考验一个人对技术的理解,属于更高层次的能力。
  • 3.严格遵从行业内标准和团队标准。任何标准都是为了提高效率,降低(沟通)成本。违反标准,尤其是团队标准,是不可原谅的。
  • 4.对自己要有明确的认识和职业规划。只有真正认识自己,知道自己的优势和不足,才能制定适合自己的职业规划,才能不断提升自己的技术实力。
  • 5.严格的时间观念和时间管理。今日事今日毕,拒绝拖延,这将会为你赢得更多的机会。
  • 6.不轻易依赖他人。自己的事情要由自己掌控,对于那些实在不可控,需要依赖他人的,也要做好两手准备。
  • 7.不轻易评价他人。团队中的每个人都是独特的个体,不可以将自己的标准强加于他人。当然对于一些达成共识的标准(如团队准则),可以在适当的场合委婉地提出。

记住一点,你有多自律,就有多自由

勤于思考善于总结

勤于思考,善于总结,这几乎是每个成功人士必备的基本素质。

为什么要思考

人之所以为人,是因为我们拥有了思考的能力。现代的科学、科技,哪一样不是人类思考的结晶?思考帮助我们提高了效率,节省了时间,降低了成本。

如果一件事情,你做过一遍又一遍,但每次只是重复上一次的操作,不进行任何思考的话,那么这件事情即使你是干上一千遍,也不会有多大的进步。

初级程序员只会使用框架,中级程序员会修改框架,而高级程序员则会创造框架,这其中的区别就在于思考的频率以及深度

俗话说,一个人的成长往往伴随着痛苦。这是因为只有去穿越和反思痛苦,才能得到远高于常人的思想深度。一个做任何事情都一帆风顺的人,是很难有所成长的。

总结的好处

只会思考,而不善于总结的话,那么思考的成果将会大打折扣。这是因为一个人的经验和能力,需要经过实践->思考->总结这三个过程而来,而总结在其中则起到了至关重要的作用。

那么经常总结可以为我们带来哪些好处呢?

  • 1.同样的错误不会再犯第二次。善于总结,可以帮助我们规避很多重复的错误。
  • 2.提炼思考的成果,加深印象和理解。总结的核心在于将复杂的事情简单化,这样更易于理解和记忆。 3.建立自己的认知体系。总结的最终目的就是将实践中产生的经验和知识,转化为自己的认知,从而建立起自己的认知体系。

勇于尝试乐于分享

无论你是做前端还是后端,无论你是纯做技术还是硬怼业务,我们都要勇于尝试,勇于探索,尝试成功的话也要乐于分享其中的收获。

勇于尝试

做技术要讲情怀,每天重复去做某件事情或者某项工作,都会极大地消耗我们对技术的热情。这就好比你在打通关游戏,如果你每关遇到的boss都是同一个,技能和难度都是一样的,那打起来是多么无聊?

所以在条件允许的情况下,我们一定要勇于尝试,不怕失败。因为只要你做成了一件事情,其带来的成就感一定会远远大于你做普通工作所带来的成就感,而这些都将使你脱颖而出,成就不凡。

那么我们可以尝试哪些内容呢?

  • 尝试承担更高难度的任务。
  • 尝试优化和重构现有代码或者业务。
  • 尝试学习并实践新技术。

当然勇于尝试不等于无所畏惧地冒风险。在尝试之前一定要进行风险评估,做有把握的尝试,这样即使尝试失败了,也不至于有什么大的损失。

乐于分享

这里可能会有人问道:

  • "我幸幸苦苦进行的尝试,获得的经验为什么要分享给别人?"
  • "如果我把经验和技术分享给别人了,那我岂不是没有存在的价值了?"

其实不然,分享可能为我们带来很多好处:

  • 最直接的,你不分享出来,谁能知道你尝试的成果?
  • 分享的过程,也是加深理解的过程,可以帮助你掌握得更加牢靠。
  • 分享成果,树立自己在该领域的领先地位/权威。

最后

无论我们从事何种职业,我们首先都要热爱它,并把提升自我修养作为一项重要的事情去做,这样才能帮助我们在未来的道路上越走越远。

我是xuexiangjys,一枚热爱学习,爱好编程,勤于思考,致力于Android架构研究以及开源项目经验分享的技术up主。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 我的Android开源之旅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 如何提高自我修养
    • 保持对技术的热情
      • 做技术切勿盲目追新追异
      • 何为基本功
      • 为什么要掌握扎实的基本功
    • 追本溯源探寻本质
      • 严于律己宽以待人
        • 勤于思考善于总结
          • 为什么要思考
          • 总结的好处
        • 勇于尝试乐于分享
          • 勇于尝试
          • 乐于分享
      • 最后
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档