1、程序员在做业务时,如果在一个问题上卡壳了,卡了30分钟没有解决。那么这个时候,最好的方法是放弃!绕过这个问题,换一种解决思路,即书上说的,花10分钟想其他方法,再用一个钟头尝试最可行的办法。
2、变量命名:
i)为变量命名时,最佳实践是:该变量能完全、准确的描述出该变量代表的事物。变量的平均长度在10到16个字符之间。ii)我们在写循环时,下标一般约定俗成为i、j、k,但是,当循环体很大时,就有必要为下标定义一个能够准确表达它是什么的名字。比如teamIndex、appleIndex等。这样做可以避免“串话”,即想用j的时候写成了i,想用i的时候写成了j。iii)常见的布尔变量名:done、error、found、success或者ok。
变量应该包含以下3类信息:i)变量的内容 ii)变量的种类:具名常量、简单变量、用户自定义类型或者类。iii)变量的作用域:私用的、类的、包的或者全局的作用域。
如果表达其内容的变量太长,可以使用一些缩写准则来缩短其长度:如去掉非前置元音等。
不好的名字:1)避免使用令人误解的名字或者缩写 2)避免使用具有相似含义的名字 3)避免使用具有不同含义但却有相似名字的变量 4)避免使用发音相近的名字 5)避免在名字中使用数字 6)避免在名字中拼错单词 7)避免使用英语中常常拼错的单词
总结:看看你定义的变量名好吗??
3、代码大全第8章-防御式编程
防御式编程是指 防止一切进来程序的非法数据。防御式编程分为以下几个方法:1、使用断言:用断言来处理永远不可能发生的情况 2、针对程序中预料发生的错误,可以利用以下方法处理:返回中立值。
4、代码大全第18章 表驱动法
能用if else处理的逻辑,都可以用表驱动法解决。即想要执行的逻辑查表的方式获取。所以,问题演变为我们如何构建这张表。例如,如果想要查询每月的天数,与其添加12个if判断,不如将天数放入一位数组里,用数组索引代替某个月。进而用查表的方式获得给定月的天数。
从表里拿数据有3种方法:直接访问,索引访问,阶梯访问。