程序员编程的 7 + 1 条小贴士

这篇文章我已经构思了几个星期了,现在决定发表出来。请享用!

1.编码之前想一想

用10分钟,20分钟甚至30分钟的时间来想想你需要什么,想想什么样的设计模式(如果有的话)适合你将要编码的东西。真的要好好想想,你会很庆幸“浪费”了那几分钟,当你不得不更改或添加东西到代码中,而这只花费了你30分钟的时间而不是5小时。

2.注释你的代码

说真的,没有什么比两个月后检查自己的代码,却不记得它用来干什么更糟糕的了。注释所有重要的内容,当然那些显而易见的就免了吧。

3.写干净的代码

错落有致。使用空格。根据功能模块化你的代码。阅读Robert C. Martin写的《Clean Code》,非常有帮助。此外,遵循代码约定/标准(如Java Code Conventions),尤其如果是共享的代码。

4.重构

没有人喜欢用那些超级长的方法。这通常(几乎总是)意味着你混杂了功能。用更易于管理的方法分离代码。还能使得代码更可重用。

5.不要复制粘贴代码

如果你有两个或两个以上相同的代码块,那么你可能做错了什么。阅读第4条。

6.使用有意义的名称

虽然命名int变量为“elligent”或char为“mander”是很好笑;但是,这样的名称并不能说明变量是用来做什么的。

7.测试代码

测试,测试,测试,还是测试。测试你的代码。不要等到已经做完程序之后再来测试,否则当你发现一个巨大的bug,却不知道它来自于哪里来的时候,你会追悔莫及。

7b.自动化测试通常都是有价值的。它还有助于节省大量重测试和回归测试的时间。

7+1.学会调试

在我的第一年,我习惯于管理事情而不知道如何去做,并且每次遇到问题的时候就println。大错特错。有时候,我甚至找不到bug,而且检查“丢失的”println浪费时间。

原文发布于微信公众号 - java一日一条(mjx_java)

原文发表时间:2016-06-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏魏琼东

AgileEAS.NET SOA中间件平台更新日志 2015-04-28

     AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平...

1030
来自专栏睿哥杂货铺

Linux 性能诊断:快速检查单(Netflix版)

快速检查单(Quick Reference Handbook,QRH)是飞行员在飞行过程中依赖的重要指导性文件。

4147
来自专栏腾讯Bugly的专栏

《iOS APP 性能检测》

| 导语 最近组里在做性能优化,既然要优化,就首先要有指标来描述性能水平,并且可以检测到这些指标,通过指标值的变化来看优化效果,于是笔者调研了iOS APP性能...

1.6K5
来自专栏企鹅号快讯

如何与深度学习服务器优雅的交互?

有没有想到小夕今天会发文章呢?( ̄∇ ̄)有木有超级想小夕呢( ̄∇ ̄) 小夕在前面写了一堆纯理论和半理论的文章,不要怕,这次来一篇纯工程的tricks集合! 如果...

3729
来自专栏FreeBuf

挖洞经验 | 如何参加众测项目发现美国国防部网站各类高危漏洞

美国国防部(DoD)于2016年11月21日首次与HackerOne合作,开展了“Hack the Pentagon”的漏洞众测项目,这将允许安全研究人员通过背...

3006
来自专栏小特工作室

WinFom中经典小游戏(含源码)

  最近整理了若干经典的小游戏,无聊时可以打发时间。程序本身不大,练手非常不错,主要是GDI编程,主界面地址如下图所示 ? 源码下载方式 1,关注微信公众号:小...

2495
来自专栏嵌入式程序猿

C8051F060单片机在数字电源控制器中的应用

引言 随着科技的发展,数字控制系统的应用越来越广泛。以前的模拟电源控制系统线路复杂,控制精度低,故障率高。因此开发全数字电源控制系统越来越重要。微控制器,微处理...

3176
来自专栏极客编程

8个写完以后就可以让你成为顶尖开发者的有趣应用程序

只有不断的努力才能成为伟大的开发人员。想象一下 ——你不能通过阅读大量关于健身,成为一个身体健康的人。你实际上需要去健身房,把时间和汗水放进去!同样的概念也适...

3431
来自专栏玉树芝兰

如何用R和API免费获取Web数据?

API是获得Web数据的重要途径之一。想不想了解如何用R调用API,提取和整理你需要的免费Web数据呢?本文一步步为你详尽展示操作流程。

1332
来自专栏程序人生

思考,快与慢

吐槽:GitBook editor 有个二B的设计-当它莫名检测出文件被外星人修改后,会弹个无法取消的对话框-检测出外部修改,ignore? discard? ...

3047

扫码关注云+社区

领取腾讯云代金券