想成为更优秀的程序员?这8个方法帮你忙

想成为更优秀的程序员?这8个方法帮你忙程序员

如今是时候认真考虑提升你的编程技能了!

这是给本身设定的一个简单的职业生涯提高目标,可是“成为一个高薪程序员”不是一个简单的目标。一方面,“我要变得更优秀”意味着你知道“更优秀”是什么样的。另外一方面,太多立志改善的人殊不知道怎么作。编程

想成为更优秀的程序员?这8个方法帮你忙

下面我要分享8个可操做的,可提升编程技能的行为准则。框架

一、提醒本身得学习编程语言

学习的第一步是要认识到,你不懂。由于不懂,因此才须要学习。这听上去很明显,但有经验的程序员确定记得本身用了多长时间才能作好这个心理建设。太多的计算机科学学生带着一种傲慢毕业:“我懂得最多”,自觉得是地认为他们知道一切,而且有一种想要证实给每个新同事看的强烈欲望。换句话说:这样一种“我知道我懂我了解!”的态度会成为阻碍你学习新东西的拦路虎。工具

想成为更优秀的程序员?这8个方法帮你忙

二、不要竭力证实本身是对的学习

要成就伟大——而不仅是优秀——你必须从经验中学习。但要当心,经验会让咱们重复错误的行为,养成坏习惯。咱们都遇到过有着8年经验的程序员……不断说本身的经验丰富,倚老卖老。为了不一叶障目,你应该回顾本身所作的一切,问问本身,“怎样才能作得更好?”测试

新手软件开发人员(以及不少有经验的开发人员)观看他们本身的代码是为了欣赏它的精彩。他们编写测试是为了证实其代码可工做,而不是为了让它失败。真正伟大的程序员会积极寻找他们错误的地方——由于他们知道,最终用户必将会发现他们遗漏的缺陷。编码

三、“代码可工做”不是你止步的标志,而是你开始的地方spa

是的,第一步是写出高质量的软件,知足规格说明。普通的程序员每每在这里就放弃了,直接跳到下一件事。.net

可是就此看成是“已经完成”而止步,就像是拍了张照片就但愿它成为一件艺术品同样荒诞好笑。伟大的程序员知道第一次迭代就只是第一次迭代而已。能够工做——那么恭喜你!——可是这不是结束。你还须要让代码变得更好。

一些流程定义了何为“更好”。有没有价值使其更快?文档更简单?更可重用?更可靠?对于不一样的应用程序,这些问题的答案也各不相同,可是这个流程是不变的。

四、写三遍

好的程序员编写可工做的软件。而那些伟大的程序员编写的软件运行起来极为出色。这不多是可以一蹴而就的。最好的软件一般要写三次:

首先,你写软件是为了证实给本身(或客户)看该解决方案是可能的。其余人可能不会意识到这仅仅是一个证实型的概念,可是你知道。

第二,让它工做起来。

第三,让它正确工做。

这种程度的工做可能并不明显,若是你去看那些最佳开发人员的工做的话。他们作的一切都显得如此才华横溢,但你没有看到的是,即便是明星开发者,在将本身的软件展现给别人看以前,可能也扔掉过第一次和第二次的版本。抛弃代码从新开始是一个能将“力求完美”归入我的工做流程的好方法。

若是不出意外,“写三遍”会告诉你不少解决问题的方法。它能够避免你陷入困境。

五、阅读代码,阅读不少代码

你可能已经听过这个建议,实际上这是提升编程技巧最多见也是最有价值的建议。可是不少人不知道阅读别人的代码之因此如此重要的缘由。

想成为更优秀的程序员?这8个方法帮你忙

当你阅读别人的代码时,你要去看别人是如何解决问题的。但不要把它看成文学来看;把它当作一个教训,一个挑战。为了变得更好,你得问本身:

我会怎么写那样的代码块?在你看到另外一种解决方法以后,你有什么不一样的作法?

我学到了什么?怎么应用那个技术到我之前写的代码?(“我历来没有想过在那里使用递归降低……”)。

我要如何改进这个代码?若是它是一个开源项目,并且你相信本身有一个更好的解决方案,那么就去作!

用做者的风格写代码。练习这个能够帮助你了解写软件的那我的的思惟。

不要光想不作。写下你的答案,不管是在我的日记,博客,代码审查过程当中,仍是在开发者社区论坛上。就像给朋友解释问题能够帮助你理清解决方案,写下并分享你的分析也能够帮助你了解为何你对别人的代码会有这样一种既定方式的反应。这就是我前面提到的自省,自省能够帮助你冷静地判断本身的长处和短处。

警告:阅读大量的代码很容易,但要凭此就成为一个伟大的程序员未免异想天开。许多开发人员会经过开源代码或其余软件来“找寻答案”,而大多数人的作法是,复制和粘贴恰巧出现的可解决相似问题的代码。这样作其实是在让你变成一个更差的程序员,由于你只是盲目地接受别人的智慧,而没有消化吸取。

六、写代码,而不只仅是做为分配的任务

工做于我的编程项目有不少优点。首先,它提供了一个学习工具和技术的途径,而这些工具和技术在你当前的工做中是学不到的,可是这能让你在找下一份工做时更有竞争力。不管你是致力于开源项目,仍是为当地的社区组织提供无偿的劳动,均可以让你增长技术技能和自信。

为了好玩而写代码的另外一个优势是,它迫使你靠本身去搞清楚这些事情。你不能将难的那部分留给别人去作,因此它能够避免你太快地向别人寻求帮助。

小贴士:不要选择那些你永远不会失败的我的项目。你须要失败!但你不会但愿在工做中失败,或者当项目有时间期限的时候。

七、尽量一对一地和其余开发人员合做

这有助于仔细倾听别人的思路和想法。方法能够是结对编程,能够是去参加编程马拉松,也能够是加入一个编程用户群。当你致力于一个开源项目时,要注意你从用户和其余开发人员那里获得的反馈。在他们的批评建议中有没有什么共同点?

你或许会很幸运地找到一个能够信任的我的导师,他会指导你从编码技术到职业决定的全部东西。不要浪费这些机会。

想成为更优秀的程序员?这8个方法帮你忙

八、学习技术,而不是工具

编程语言、工具和方法变化不定。这就是为何咱们要积累尽量多的经验,使用尽量多的语言和框架。专一于编程基础,由于基础知识永远不会改变:要更注重结构,而不是编程。若是你以为只有一种作事的正确方法,那么多是时候实战检验了。教条会阻碍你学习新事物的能力,同时要试着让本身慢慢适应变化。

还有不少,可是自我提升的一个关键原则是知道什么时候中止。

相关文章
相关标签/搜索