给大学老弟的几点建议

1,217 阅读5分钟

工作之后感觉时间过的飞快,今年姑姑家的老弟也上大学了,选了软件工程专业。姑姑让我这个10年老程序员给弟弟几点建议,以下是我在6个方面写了一点心得,希望对老弟有所帮助。同时也分享出来,如果能对更多的同学有一点点的帮助对我来说也是很开心的事情。文末有思维导图,方便大家回顾。

1 态度

先抛开具体学什么、怎么学的问题,我认为对于程序员来说一个好的学习态度是第一位的。每个人对新知识的接收能力是不一样的,有的人可能是10分钟学会,而有的可能需要1个小时甚至更多。如果把时间维度拉长其实最终结果是一样的,都是可以学会的,但对学习过程中是否有一种韧劲一定要弄懂,一定要研究明白的态度是最宝贵的。因为软件行业是一个持续不断进化的行业,知识更新的非常快,要一直不断的学习、深度的思考、不断精进自己才能走的更远。

如果说觉得没有做好这个准备,或感觉不符合自己的性格,可能软件这个行业并不适合自己,请三思后入坑。

2 习惯

想要作为一名合格的程序员一定要养成一个好习惯,养成一个良好的编程习惯和思考习惯才能避免自己成为一个野生程序员,我们要做一个无论到哪个公司都能出类拔萃的正规军。

编程习惯

要严格规范对待自己每一次编程,从细节养成一个好的习惯:

  • 命名规范

    随着时间的积累,会越来越发现这是个老生常谈的话题,话不多说严格按市面上大公司发布的标准执行绝对不会错,请参照阿里、谷歌编程规范手册。

  • 良好的注释

    如果命名足够好其实不需要太多的注释,注释不仅是方便他人也是方便自己快速了解和回顾代码的工具

  • 多读后自然会写

    很多新同学刚开始不知道怎么去写程序,不用怕!先读程序,看明白就去临摹程序,多读多写必然有所收货。

  • 会写后多多练习

    老话说孰能生巧、勤能补拙,在程序员的世界里体现的是淋漓尽致。互联网让资源变的异常丰富,多逛逛github 找自己感兴趣的项目,看看大佬是怎么做的,然后自己多加练习成为自己的一部分。

思考习惯

工作之后你会发现每天工作的内容都是全新的,没有一天是重复的。每天做的是增加一个又一个新的功能,解决一个又一个的问题。所以我们要学会独立的思考和解决问题的能力。

  • 独立思考

    • 功能需求:为什么要做这样的功能,背后的逻辑是什么
    • 分析问题:怎样方式会复现问题,什么原因产生了这个问题
    • 解决问题:通过什么方法可以规避掉问题
    • 自学能力:还需要获取怎样的能力

正确的提问

当遇到无法解决的问题时可以找其他人帮助的,如果提出一个好问题会激发起别人的兴趣,但是没有任何人喜欢去帮助一个没有经过思考的问题。如何正确的提问呢?总结了一下四点:

  • 想要达到什么目标
  • 需要在什么环境下执行
  • 自己做过怎样的努力
  • 出现了什么问题

其实很多时候还没等去提问,自己已经把问题解决掉了。

3 英语

单独把英语拿出来说,是因为英语真的是很重要,比如每一个变量、函数的命名、数据库的设计、官方文档的阅读、各种报错提示等等。几乎每一天都需要用到英语,如果英语不好直接影响到学习的效率和自身的成长速度。从长远看学习英语是一件很划算的事情,各位小伙伴一定要把英语提到日程上来,什么时候开始都不晚。推荐2个学习工具:

  • 百词斩:背单词
  • 开言英语:听力+口语

4 输入

上文也说过程序员的世界知识更新速度特别快,所以我们要做好终身学习的准备,多读读经典数据,在校大学生可以充分利用好图书馆。网上的学习资源也是非常丰富,该注册的账号赶紧都注册一遍,多了解技术的发展趋势,学校里的知识很可能都是落后的,多学先进知识与世界保持同步。常用的网站:

  • GitHub
  • 极客时间
  • 博客园
  • 掘金
  • 简书
  • CSDN
  • B站

5 输出

其实学习不是目的,能把学到的知识用起来才是有意义的。如何才能把知识用起来,最好的方法是定期进行总结,并通过分享把知识输入出去。输出的形式不重要,关键是输出的过程中会进行深度的思考,能让新知识融入到已有的知识体系中,成为自己的一部分。

  • 定期总结
  • 学会分享

6 大学

回想大学真是最开心的日子,没有生活的压力,时间完全自由,是一个完全由自己掌控的几年时光。给老弟的建议就是做时间的主人,不要荒废最宝贵的时间,去尝试各种可能,参加社团、参加比赛、找个女朋友等等。只要是有意义的事情就放手去做,做最好的自己。