PHP程序员的40点陋习 - 马永占 译
时间:2009-08-16 来源:hkebao
2不使用可以提高生产效率的IDE工具
3不使用版本控制
4不按照编程规范写代码
5不使用统一的方法
6编码前不去思考和计划
7在执行sql前不执行编码和安全检测
8不使用测试驱动开发
9编码时不打开自动报错(error_reporting)
10不使用一种好的调试工具
11不重构你的代码(refactor)
12不采用MVC这样的分层结构
13不知道以下等等概念:KISS,DRY,MVC,OOP,REST
14在函数或者类里直接用print或者echo输出东西而不是返回(return)
15不使用也不去了解单元测试
16返回HTMl而不是data,strings,objects等类型
17糟糕的代码和配置参数(hard code messages and configuration parameters)
18不优化sql查询
19不使用__autoload
20不支持自动错误操作(应该是智能纠错)
21使用$_GET替代$_POST去进行危险的参数传递(记得这40条都是错误的东西)
22不知道怎样使用正则表达式
23从未听说过sql注入和跨站脚本(安全方面,应该了解下这两个东西的英文:sql injection,cross-site scripting)
24不支持简单配置,传递参数给类的构造函数,set/get方法,定义常量
25不能理解OOP的优缺点
26无论要做的东西有多小,都使用OOP
27认为做可复用的软件就是OOP
28不使用缺省值(don't choose intelligent defaults)
29不使用单一配置文件
30不想让别人看到代码,却使用.inc替换掉.php
31不使用数据库抽象层(持久层)
32开发时不DRY(Dont repeat yourself). (就是总开发重复的东西)
33不开发可以重复使用的类或者方法.
34不使用抽象类或者接口类,继承,多态,封装.
35不使用已有的设计模式优化你的程序.
36不允许使用者定义基础目录(这点好象PHP不太适合,毕竟不是基于操作系统的开发)
37错误的使用命名空间,使用大家都普遍使用的单词作为前缀.(这样以后别人使用会造成冲突.,例如自己定义一个function 叫 array_push())
38使用数据库时不使用表前缀(这个很重要...)
39不使用或者使用一个陌生的模板引擎(方便团队开发,大家要使用常见的模板)
40不去看PHP的框架(大多数框架中都包含优秀的代码和先进的概念.值得我们学习)
其中译者还有很多做不到的,还需要努力!