编程细节杂谈
本文采用PHP语言编写伪代码
1 if比较
if ($param = false) { // (大概率)错误:if中采用赋值,而非比较
// do something.
}
- 错误可能:极低
- 解决方案:(在团队规范允许的前提下)将常量置左
- 杂谈:不要认为这种错误你不可能犯。
- 满屏的代码 + 光标在不对的位置 + 手不小心碰到键盘
- (把
==
删成=
后,不会有语法报错)
2 for循环
foreach ($items as $item) { // $items是可迭代对象,$item是子元素
$this->do($items); // (大概率)错误:遍历操作父元素
}
- 错误可能:较低
- 解决方案:命名区分开来,不用仅用
s
来区分父子元素 - 杂谈:大家敲代码很少纯手打了,很多时候都是借助IDE的提示来完成编程的。敲得快一点,看不清也是也可能的。
3 SQL add column
// 建表语句
CREATE TABLE `user` (
`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`name` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '用户名称',
// ...
PRIMARY KEY (`id`)
) COMMENT '用户表'; // (小概率)错误:未指定字符集,可能与其他表不一致
- 错误可能:较低
- 解决方案:每新增一个字符串类型的字段,都要为其指定字符集
- 杂谈:数据库层面的问题比较麻烦,需要谨慎一些