新手总是有很多不好的代码习惯. 最常见的一个是不使用临时变量.例如
for(int i=0;i<myList.size();i++){
otherList.get(i).getSomeVar().getName();
otherList.get(i).getSomeVar().getValue();
}
这种做法有如下后果:
1. 代码冗长, 容易出错, 例如循环体中的某个i写成了j
2. 函数调用终究是要耗费时间的, 在一个循环体中的调用往往对性能有可见的影响. 特别是当函数动态装载数据的时候, 例如每次调用该函数都查询数据库, 这种不使用临时变量的方法将会为系统留下性能隐患.
3. 一条很长的语句如果不是为流式调用而设计的, 则这种调用方式会影响到我们的调试工作. 例如
当某个中间步骤返回空指针时, 程序会抛出NullPointerException异常, 而我们得到的信息只是某一行存在空指针异常,
但是无法定位到具体是哪个步骤. 当某个中间步骤返回的值不是null但也不是我们所期望的值的时候, 我们同样难以诊断出具体出错的步骤.
使用临时变量将会为调试提供便利
int i,n=myList.size();
for(i=0;i<n;i++){
MyVar var = otherList.get(i);
var.getName();
var.getValue();
...
}
在需要的时候我们可以在出错语句处加上断点, 或者直接输出可疑的变量值.
4. 长语句不利于抽象出子函数. 例如在第二种方式中我们抽象出子函数的难度比第一种方式小
void processVar(MyVar var){
var.getName();
var.getValue();
}
造成这些习惯的原因很耐人寻味, 我猜想缺乏抽象能力似乎是最基本的原因, 毕竟为变量起一个名字也是最简单的抽象步骤之一.
分享到:
相关推荐
要想成为一个良好的程序员,必须具备好的思维,好的习惯,好的素质,那么就从小事做起吧,我们一起成长,看看大牛是怎么样养成的。
jdk8后代码举例,交流学习,互相进步,互相督促。 欢迎指正。
代码审查可以帮助提高代码质量,避免由于代码习惯而造成的bug。下面列出的这些要点因该可以作为大部分代码审查的指导,如果是Java应用的话,这些建议应该被视作最佳实践。 代码审查可以帮助提高代码质量,避免由于...
四个有害的Java编码习惯 程序中的编码风格让我们的编程工作变得轻松,特别是程序维护员,他们要经常阅读其他人编写的程序编码,这一点尤其突出。编码规范从根本上解决了程序维护员的难题;规范的编码阅读和理解起来...
我在2022年12月时上传过国赛C题省一的获奖论文,具体链接如下https://download.csdn.net/download/weixin_65191557/87281510?spm=1001.2014.3001.5501。...我当时的代码习惯不是特别好,希望大家见谅。
几个写代码的好习惯,对写好代码很用帮助,我希望对大家有点帮助吧,(转载的)
习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码习惯打卡小程序源码...
良好的写代码习惯是应该在代码中加入注释,以便以后维护更新系统的时候容易让人读懂,这个缺陷的产生是因为开发时偏重速度导致的。 本系统主体上可以分为两个子模块:公共用户模块和管理者模块。 ASP提供一些内建...
代码规范整理;可作为项目规范范本,在此基础上修改,适应本公司的代码习惯
代码大全全新讲义和良好编程习惯
我总结的编程习惯,想要写出优雅代码的可以下载参考一下~
有关C#的代码编写规范,?????????????????
一本相当不错的一本书 可以改善大家的代码习惯
微信小程序中JavaScript代码书写习惯与命名规范建议
PMD:用于根据源代码分析查找不良的编程习惯
项目名称:通用电子商务系统 开发环境:Linux 开发工具:MyEclipse、MySQL、Tomcat 技术实现:Struts2、JSP、MySQL、Jquery、Javascript、Ajax 、Json、JUnit ...通过大量编写代码,养成了更加规范的代码习惯。
C语言源代码模版 带你养成良好的编程习惯 C语言 源代码 模版 编程习惯 注释
idea原生代码片段管理插件Live Templates无法可视化管理,个人已习惯MyEclipse的Snippets插件,无耐idea无提供相关插件,开发人员在开发过程中大部分时间都是拷贝代码,如果能有相关插件来维护常用的代码片段,可以...
大二实训课在老师指导下写的实训项目,书店管理系统,纯后台代码,优点是逻辑清晰,代码简单易懂,适合新手下载练习帮助自己培养好的代码习惯