7个有益的编程习惯

我最近一直在阅读关于“如何培养习惯”的书籍。阅读并消化之后,我不禁开始思考,目前我有哪些习惯。其中一些是生活方面的,另一些则完全关于工作。这其中有不少习惯是和编程密切相关的,这也是我接下来觉得值得和大家分享的内容。

不受控制的自动保存 – 这个习惯已经伴随着我多年了。即使如今许多 IDE 甚至不需要用户(主动)保存文件,但我任然乐此不疲地按着“Ctrl + S”这个组合键。如果没记错的话,我每次停止打字时都会无所事事,于是会不受控制地做着这样的举动。

有些开发人员喜欢将自己“处在状态”比喻成“涅槃重生”或者是到达了“瓦尔哈拉殿堂”。在我看来,这更像是一种“暴走模式”。显而易见,这是生产效率非常惊人的一段时间,但之后你应该休息片刻来调整恢复(你体内的激素水平)。就像
F1 方程式赛车一样,短时间的爆发冲刺将直接影响最终成绩,但是更重要的是要确保“ 定期的进站(休息/恢复)
”。长时间亢奋反而会让大脑麻木,从而导致更容易陷入困境。

确保隔绝所有干扰源 – 当我正在着手于非常重要的事项时,我会直接关闭手机,避免一切社交应用或者媒体的打扰。当然如果你有小孩子,那把他们锁在地下室里可能并不是一个很好的解决方案 :)。

着手工作前先想清楚预期结果 – 可视化可度量是至关重要的。它有助于我明确今天的目标清单,并且在一天结束时能减少自己“碌碌无为”而产生的沮丧和失望。所以对于任何时候你在做的事情,都先明确你预期要获得的收益。这听起来十分浅显,但实际上我们经常会遗漏这一点。

对我来说,另一个好习惯是“ 保持定期训练 ”。比如,坚持去健身就是一个非常好的习惯。我非常喜欢时不时得做一些编程练习,这可以让我时刻保持自己的锯子锋利无比。请记住,坚持这个习惯,虽然它现在不会给你带来报酬,但它一定会在未来给你巨大的收益。

“ 测试先行 ” – 这与前面提到的一点类似,先来组织并构建测试用例可以帮助我在开始之前就看到我的目的地。同时,它也能有助于设计和文档化这两个过程。但实际情况来看,很少有开发人员认同并实践这个观点。

避免过度的“ 面向未来编程 ”。之前我每次着手编程时,我总是第一天就力求完美,设计和实现上都尝试覆盖所有可能的特殊情况(edge cases)。随着时间的推移,我意识到这样常常会导致过度复杂的设计和代码实现,同时消耗更多的时间。

所以,希望你们可以有所借鉴,这些都是我在职业生涯里慢慢形成的同时非常有用的习惯。培养和建立一个好习惯的最好也是唯一途径就是开始实践它。

最后,别忘了给我也分享一些你们的好习惯!你内部人……Rr^

作者:高可用架构

来源:51CTO

时间: 2024-09-18 09:42:35

7个有益的编程习惯的相关文章

JavaScript教程:几种比较熟悉的编程习惯

由于JavaScript的灵活性,可以让每个人按照自己的习惯进行编写代码.有函数式的编程方式,也有现在用的较为广泛的对象字面量.由于面向对象的出现,JavaScript刚开始的函数编程也逐渐演化为类式编程方式.现在我对几种比较熟悉的编程习惯进行简单的说明: 1.对象字面量: var person = {    name:null,    setName:function(name){        this.name = name;        return this.name;    }, 

PHP编程习惯

题目:找出以下代码的错误之处: <? function baz($y $z) {     $x = new Array();     $x[sales] = 60;     $x[profit] = 20:     foreach($x as $key = $value) {         echo $key+" "+$value+"<BR>";     } } 你能找到几个呢? 如果你发现函数参数列表中少了逗号."new Array(

成功软件开发者的9种编程习惯

编程 好的原程序做出好的软件 有些人会想:只要程序运行结果好,就不管原程序编得怎样.但绝对不是这样的.软件不是一次性就作完的,有必要做修改,扩展等管理.所以原程序要尽量作成易看懂,管理方便. 这样做,第一是为了软件开发者方便,其次还会影响到软件的性能.管理不方便的程序不会作出好的软件. 希望通过这篇文章能学到好的编程习惯.要理解这文章的内容,你至少要懂得1个开发工具语言.这里举例说明的都是C语言,但你对C语言没有了解也不要担心.这里说明的是原理而不是特定的语言. 1. 语句要结束得彻底---(分

ASP.NET编程习惯

asp.net|编程 初学编程的朋友往往喜欢收集一些很"奇妙"的编程技巧,然而,技巧的积累往往并没有提高程序质量,反而引导一些编程者一味追求奇和新,忘记了基本编程习惯的培养,不利于团队的合作,可能,这也是中国并不缺少聪明的程序员,但是缺少聪明的开发团队的一个原因吧.在ASP.NET的开发中,可以学习的技巧不少,但是,一些基本的编程习惯我们一定要养成,这样不但能根本上提高程序质量和开发效率,而且,也利于程序的阅读和团队开发.如果自己写的程序只有自己可以看懂或者只有几个人可以看懂,即使程序

谈谈几个编程习惯

一个人的成功有时往往体现在细节上,而习惯往往是这些细节的具体表现形式,这里我也想总结几个不太好的编程习惯. 第一:int初始化的控制,对数据初始值的理解问题.下面的一段程序大概的意思就是,页面上有一个属性HighPrice,它最终会通过ViewState保存在页面中,如果ViewState为空,则设置属性HighPrice的值为-1,否则直接读取ViewState中的值.但实际情况并不是这样,程序在初始化时,HighPrice的初始值为0,所以下面的代码永远得不到-1. public int H

有助于面试的10条PHP编程习惯

过去的几周对我来说是一段相当复杂的经历.我们公司进行了大裁员,我是其中之一,但却体验到了其中的乐趣.我从来没有被开除过,所以很难不去想得太多.我开始浏览招聘板块,一个全职PHP程序员的职位很吸引人,所以我寄去了简历并获得了面试机会.在面试之间,我和其主要的程序员们在咨询电话中聊了聊,最后他们给我出了一套测试题,其中有一道很耐人寻味. 找出以下代码的错误之处: <?function baz($y $z) { $x = new Array(): $x[sales] = 60: $x[profit]

新手入门 最佳ASP.NET的编程习惯

初学编程的朋友往往喜欢收集一些很"奇妙"的编程技巧,然而,技巧的积累往往并没有提高程序质量,反而引导一些编程者一味追求奇和新,忘记了基本编程习惯的培养,不利于团队的合作,可能,这也是中国并不缺少聪明的程序员,但是缺少聪明的开发团队的一个原因吧.在ASP.NET的开发中,可以学习的技巧不少,但是,一些基本的编程习惯我们一定要养成,这样不但能根本上提高程序质量和开发效率,而且,也利于程序的阅读和团队开发.如果自己写的程序只有自己可以看懂或者只有几个人可以看懂,即使程序技巧神乎其技,对于程序

防御性编程习惯:求出链表中倒数第 m 个结点的值及其思想的总结

防御性编程习惯 程序员在编写代码的时候,预料有可能出现问题的地方或者点,然后为这些隐患提前制定预防方案或者措施,比如数据库发生异常之后的回滚,打开某些资源之前,判断图片是否存在,网络断开之后的重连次数或者是否连接备用网络,除法运算中的除数问题,函数或者类在接受数据的时候的过滤情况,比如如果输入一个指针参数,是否需要判断是不是空指针?输入一个字符串参数,是否需要判断字符串空否--总的来说就是防止出现不可预见的事情,设计出鲁棒性的代码. 看下面的例子 输入一个链表,输出链表中倒数第 m 个结点额内容

c-请大家看看这段代码怎么改进(我想养成好的编程习惯)。谢谢。

问题描述 请大家看看这段代码怎么改进(我想养成好的编程习惯).谢谢. 题目见图片. 下面是代码(这道题当然还有其他解法,我这里是刻意用链表做的) { #include #include typedef struct monkey{ int num; struct monkey * next; } M; void game(int, int, int); M create_list(M *,int ); int main(void) { int n; scanf("%d", &n