1不寫注釋
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/index.html>php/index.html>php/index.html>php/index.html>php/index.html>php不太適合,畢竟不是基於操作系統的開發)
37錯誤的使用命名空間,使用大家都普遍使用的單詞作為前綴.(這樣以後別人使用會造成沖突.,例如自己定義一個function 叫 array_push())
38使用數據庫時不使用表前綴(這個很重要...)
39不使用或者使用一個陌生的模板引擎(方便團隊開發,大家要使用常見的模板)