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的框架(大多数框架中都包含优秀的代码和先进的概念.值得我们学习)

PHP程序员的40点陋习的更多相关文章

  1. PHP程序员的40点陋习,我几乎全部中枪

    1.不写注释 2.不使用可以提高生产效率的IDE工具 3.不使用版本控制 4.不按照编程规范写代码 5.不使用统一的方法 6.编码前不去思考和计划 7.在执行sql前不执行编码和安全检测 8.不使用测 ...

  2. 引领开发工具近40年的程序员Anders Hejlsberg

    有位神级程序员在近40年中一直创造引领潮流的开发工具(Turbo Pascal/Delphi/C#/TypeScript),他就是Anders Hejlsberg. 一. Anders并没有大学文凭, ...

  3. Java基础学习总结(40)——Java程序员最常用的8个Java日志框架

    作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用.WEB应用以及移动应用.然而日志系统是一个成熟Java应用所必不可少的,在开发和调试阶段,日志可以帮助我们更好更快地定位bug:在 ...

  4. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

  5. 【腾讯Bugly经验分享】程序员的成长离不开哪些软技能?

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57ce8068d4d44a246f72baf2 Dev Club 是一个交流移动 ...

  6. 从scheduler is shutted down看程序员的英文水平

    我有个windows服务程序,今天重点在测试系统逻辑.部署后,在看系统日志时,不经意看到一行:scheduler is shutted down. 2016-12-29 09:40:24.175 {& ...

  7. Java程序员应该掌握的10项技能

    这篇文章主要介绍了作为Java程序员应该掌握的10项技能,包括java的知识点与相关的技能,对于java的学习有不错的参考借鉴价值,需要的朋友可以参考下   1.语法:必须比较熟悉,在写代码的时候ID ...

  8. [No000096]程序员面试题集【上】

    对几家的面试题凭记忆做个总结,基本全部拿到offer,由于时间比较长,题目只写大体意思,然后给出自己当时的答案(不保证一定正确): abstract类不可以被实例化 蛋糕算法: 平面分割空间:(n-1 ...

  9. .NET程序员细数Oracle与众不同的那些奇葩点

    扯淡 距上次接触 Oracle 数据库已经是 N 年前的事了,Oracle 的工作方式以及某些点很特别,那会就感觉,这货就是一个奇葩!最近重拾记忆,一直在折腾 Oracle,因为 Oracle 与众不 ...

随机推荐

  1. php中使用linux命令四大步骤

    一.PHP中调用外部命令介绍在PHP中调用外部命令,可以用,1>调用专门函数.2>反引号.3>popen()函数打开进程,三种方法来实现: 方法一:用PHP提供的专门函数(四个):P ...

  2. HTTP 错误405.0 - Method Not Allowed

    在使用IIS发布网页的时候,出现下图这个问题 那么出现这个问题的原因可能有很多种,但是我目前是这么解决的,下面说一下我个人解决这个问题的方案,仅供参考. 首先,以管理员的身份启动cmd 如果电脑是64 ...

  3. 安装percona-toolkit提示的报错

    [root@hank-yoon export]# tar -xvf percona-toolkit_2.2.15-2.tar.gz [root@hank-yoon export]# cd percon ...

  4. UserLogin

    DAL: IUserDAL namespace Dal { /// <summary> /// This interface is defined for user functions. ...

  5. ASP.NET MVC +EasyUI 权限设计(一)开篇

    在前一段时间中,老魏的确非常的忙碌,Blog基本上没有更新了,非常的抱歉,那么在后面的时间中,老魏会尽量的抽时间来写的,可能时间上就不太富裕了.今天开始呢,老魏会和大家分享一下关于权限设计的有关文章, ...

  6. python学习小结8:I/O

    文件I/O是Python中最重要的技术之一,在Python中对文件进行I/O操作是非常简单的. 打印到屏幕上 >>> print "python is really a g ...

  7. 【经验】Angularjs 中使用 layDate 日期控件

    layDate 控件地址:http://laydate.layui.com/ 前情:原来系统中使用的日期控件是UI bootstrap(地址:https://angular-ui.github.io/ ...

  8. CSS去除Chrome浏览器的控件默认样式

    html的input输入框在Chrome浏览器里是有默认样式的,当它获得焦点时,即使你没有为它设置:focus时的样式,Chrome浏览器还是会给它加上蓝色的边框,今天百度找到有个方法可以去除该默认样 ...

  9. win7下Chrome有两个图标的解决方法

    摘抄自:http://www.sevenforums.com/browsers-mail/238406-windows-7-taskbar-creating-double-google-chrome- ...

  10. select()2

    只要接触过c/c++网路编程人都可能会知道select io 模式,网络书籍都说 fd_set {]} 有所限制,因为数组的长度只有64,那么超过64你就不能放,要么你就是用多线程分别实用select ...