PHP程序员常见的40个陋习,你中了几个?


Posted in PHP onNovember 20, 2014

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不太适合,毕竟不是基于操作系统的开发)
 
37、错误的使用命名空间,使用大家都普遍使用的单词作为前缀.(这样以后别人使用会造成冲突.,例如自己定义一个function 叫 array_push())
 
38、使用数据库时不使用表前缀(这个很重要...)
 
39、不使用或者使用一个陌生的模板引擎(方便团队开发,大家要使用常见的模板)
 
40、不去看PHP的框架(大多数框架中都包含优秀的代码和先进的概念.值得我们学习)

小编自己几乎所有的条目都中了,中了30条以下的就别留言刺激我了~

PHP 相关文章推荐
apache2.2.4+mysql5.0.77+php5.2.8安装精简
Apr 29 PHP
php htmlspecialchars加强版
Feb 16 PHP
PHP下对数组进行排序的函数
Aug 08 PHP
php重定向的三种方法分享
Feb 22 PHP
php异常处理技术,顶级异常处理器
Jun 13 PHP
新手菜鸟必读:session与cookie的区别
Aug 22 PHP
php中AES加密解密的例子小结
Feb 18 PHP
ThinkPHP让分页保持搜索状态的方法
Jul 02 PHP
php生成无限栏目树
Mar 16 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 PHP
6个常见的 PHP 安全性攻击实例和阻止方法
Dec 16 PHP
php目录遍历函数opendir用法实例
Nov 20 #PHP
php中base_convert()进制数字转换函数实例
Nov 20 #PHP
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
Nov 20 #PHP
PDO预处理语句PDOStatement对象使用总结
Nov 20 #PHP
php中ob_get_length缓冲与获取缓冲长度实例
Nov 20 #PHP
PHP中UNIX时间戳和日期间的转换与计算实例
Nov 19 #PHP
PHP中上传多个文件的表单设计例子
Nov 19 #PHP
You might like
咖啡界又出新概念,无需咖啡豆的分子咖啡
2021/03/03 咖啡文化
php实现文件下载代码分享
2014/08/19 PHP
PHP实现执行外部程序的方法详解
2017/08/17 PHP
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
写的htc的数据表格
2007/01/20 Javascript
getElementsByTagName vs selectNodes效率 及兼容的selectNodes实现
2010/02/26 Javascript
javascript sudoku 数独智力游戏生成代码
2010/03/27 Javascript
js客户端快捷键管理类的较完整实现和应用
2010/06/08 Javascript
扩展easyui.datagrid,添加数据loading遮罩效果代码
2010/11/02 Javascript
基于jquery的多功能软键盘插件
2012/07/25 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
JavaScript 限制文本框不可输入英文单双引号的方法
2016/12/20 Javascript
Bootstrap3下拉菜单的实现
2017/02/22 Javascript
jQuery 防止相同的事件快速重复触发方法
2018/02/08 jQuery
vue iview实现动态路由和权限验证功能
2018/04/17 Javascript
解决axios发送post请求返回400状态码的问题
2018/08/11 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
2013/11/15 Python
利用Python实现网络测试的脚本分享
2017/05/26 Python
python爬虫系列Selenium定向爬取虎扑篮球图片详解
2017/11/15 Python
Python格式化日期时间操作示例
2018/06/28 Python
Python使用pyserial进行串口通信的实例
2019/07/02 Python
python 字典有序并写入json文件过程解析
2019/09/30 Python
python编写猜数字小游戏
2019/10/06 Python
python分别打包出32位和64位应用程序
2020/02/18 Python
Pytorch十九种损失函数的使用详解
2020/04/29 Python
Django自带的用户验证系统实现
2020/12/18 Python
人事助理岗位职责
2013/11/18 职场文书
自我鉴定书
2014/03/24 职场文书
房产继承公证书
2014/04/09 职场文书
物理课外活动总结
2014/08/27 职场文书
详解Python为什么不用设计模式
2021/06/24 Python
利用Python读取微信朋友圈的多种方法总结
2021/08/23 Python
Linux在两个服务器直接传文件的操作方法
2022/08/05 Servers