2024-11-08 08:24:20
程序员8种进阶途拒当小白
1.时刻提醒自己: 学习
学习某件事的第一步是承认你不知道。这听起来很正常,但经验丰富的程序员还记得要真正让自己承认这一点需要花多长时间。
很多计算机科学专业的学生毕业的时候,都有一种很傲慢的态度,就是“我知道最好的”,但其实这只是一种虚张声势,他们不知道从哪里来的自信,就好像他们什么都知道,并且需要向每一位新同事强烈的证明这一点。
换句话说:你所谓的“我知道我在做什么!”这种态度会妨碍你学习新的东西。
2.不要试图证明自己是正确的
要想成为优秀的人,你必须学会吃一堑长一智。但是干万小心,经验也可能教会我们重复一些不良行为,甚至也教会我们养成一些不好的习惯。
为了避免这种综合症,看看你做的每一种事情,然后问自己:“我怎样才能让它变得更好?”
新手(以及很多经验丰富的开发人员)会看着他们自己写的代码,欣赏它的奇妙。他们编写测试来证明他们写的代码是可以运行的,而不是试图让它运行失败。
真正优秀的程序员会积极地寻找他们的错误在哪里因为他们知道最终用户会发现这些遗漏的bug。
3.“代码可以运行了”这个目标不是终点,而是起点
是的,你的第一步总是想写出质量很高的代码,而且代码上面都写满了注释。但是一般的程序员在这一点上就退出,然后继续下一件事。
但是一旦“完成”就停止了这种思想就像是拍一张快照,然后期待它是一件艺术品一样。伟大的程序员都知道第一次迭代只是一次迭代。它运行起来了,恭喜你!
其实这个过程就是在定义“更好”的含义。让它变得更快能有什么价值吗?可重用更高有什么好处?更可靠吗?
答案随着每个应用程序的不同而不同,但是过程都是一样的。
4.写三次代码
好的程序员目标是写出可以运行的软件就可以了。伟大的程序员写出来的软件目标是运行得非常好。通过一次编写这种情况几平不可能发生。
最好的软件通常被写三次:
首先,编写软件以向你自己(或客户)证明解决方案是可行的。其他人可能没有意识到这只是一个概念验证,但你确实这么做了。
第二次可以让它正常地运行。
第三次你能够让它平稳的运行。
5.阅读大量的代码
你可能希望我能够引导这个建议,实际上,这也是提高编程技能的最常见和最有价值的建议。阅读他人代码的原因也很重要,只是不是很明显而已
当阅读其他人的代码时,你会看到其他人是如何解决编程问题的。但不要把它当成是文学作品,而是把它当成一种教训和一种挑战。想要变得更好,问问自己:
我学到了什么?我如何将这种技术应用到我过去编写的代码中?(“我从来没有想过可以使用递归下降处理那块的逻辑”)。
6.不要把编写代码仅仅看作是任务
从事个人编程项目有很多优势。首先,它为你提供了一种学习工具以及学习技术的方法,而这些工具和技术在你当前的工作中是用不到的,但是这将使你在下一份工作中更有市场。
无论你是为开源项目做贡献,还是为当地社区组织做公益工作,你都能获得技术技能和自信。(此外,你的个人项目向潜在雇主证明,你是一个从不停止学习的人。)
编写代码的另一个好处是它强迫你自己去解决问题。你不能把这些难啃的问题留给别人,所以它会让你过早地寻求帮助。
7.尽一切可能做到与其他开发人员面对面的工作
倾听别人的意见是很有帮助的。这可能意味着结对编程,或者参加黑客马拉松,或者加入一个编程用户组。
当你为一个开源项目做贡献时,要关注一下你从用户和其他开发者得到的反馈意见。你在他们的批评中看到了什么共同点?
这样做你可能会很幸运地认识了一位可以完全信任的导师,无论是编码技术还是职业决策,所以不要浪费这些机会。
8.你是在学习技术,而不是在学如何使用工具
编程语言、工具和方法这些都只是一时的。这就是为什么需要你在这么多的语言和框架中尽可能多的获得经。
重点关注编程基础,因为基础永远不会改变;更关注体系结构而不是如何编程。如果你觉得做某件事只有一种正确的方式,那可能是时候进行现实核查了。条条框框的限制会妨碍你学习新事物的能力,也会使你很难适应变化。
我可以继续前进,但自我提升的关键原则是知道何时停止。