接触了几家公司的 PHP 代码,发现这些代码真的很丑陋

2015-12-18 16:44:12 +08:00
 szopen
我想大概是因为 PHP ,没有太多强制性规范,加上 PHPer 水平高低不同,以及项目管理人员水平限制,才出现了这么多丑陋的代码

另外大部分PHP程序员还处于或长被动处于改网页阶段,所以水平真的很低
7630 次点击
所在节点    PHP
39 条回复
ben548
2015-12-18 16:52:59 +08:00
确实如此,深有体会, php 没有什么强制性的规范,代码比较难以阅读和维护,不同程序员就连命名规范、代码风格都有很大的差别
odirus
2015-12-18 16:55:09 +08:00
无论哪种语言都会存在这个问题,根本原因是人、团队。
GuangXiN
2015-12-18 16:59:43 +08:00
语言把强制规范定得再完善,也挡不住 low b 写出烂代码
Scholer
2015-12-18 17:05:12 +08:00
看这里: http://0x1.im/blog/php/php-cs-fixer.html

约束不是没有 如何执行是问题。
simo
2015-12-18 17:09:14 +08:00
任何语言都有这个问题
你说的问题可能原因: php 门槛低、从业者基数大,被你捉到概率大。
Zzzzzzzzz
2015-12-18 17:13:38 +08:00
现在已经好很多了, 国内最早搞 php 的一批人很少有科班出身的.

"不要用 class, 因为 class 比 function 性能烂."

"copy+paste 改改比封装进函数性能好"

"不要用模板引擎, 这样性能烂."

"获取时间不要用 time(), 用$_SERVER['REQUEST_TIME']"

"别用新版本的语言特性, 部署的虚拟主机 php 版本比较旧"

能想象这是 10 多年前国内 php 社区的开发主流思想么?

再加上 php 官方的包管理 pear 没什么存在感, 当时代码托管地也就数 sf 了, 管理三方库基本靠去各开源程序官网下载, 或者去 phpclasses 和一些私人 blog copy+paste, 版本控制也很少有人用, 维护老代码基本就是噩梦.
knightdf
2015-12-18 17:23:27 +08:00
哈哈哈,哪个 php 代码不丑?
Jaylee
2015-12-18 17:28:06 +08:00
@Zzzzzzzzz 推动国内 php 开发者的水平靠你了
Pastsong
2015-12-18 17:28:59 +08:00
php 就是那种不用框架和设计模式,可以写得非常丑的语言
quix
2015-12-18 17:29:57 +08:00
哪有不丑的 php, 来个不丑的看看?
laucie
2015-12-18 17:31:03 +08:00
自黑-->>群黑 php
neilwong
2015-12-18 17:40:43 +08:00
github.com 上 stars 前三的 php 框架拿来用呗,又没上升到架构那个层次,还是用现成框架比较好
Zzzzzzzzz
2015-12-18 17:57:07 +08:00
@Jaylee 我就一拉后腿的自黑来着, 我上一次拿 php 写完整项目的时候 phpe 还挺火来着.
young
2015-12-18 18:15:39 +08:00
人的问题, 这还用说吗
movtoy
2015-12-18 18:17:15 +08:00
@Zzzzzzzzz
因为 php 卖的最火的一本书: PHP 和 MySQL.Web 开发(第 4 版),最新的还是 09 年的。书里的第一个大型案例还是 10 年前的,封装几个函数,把页面输出都写在函数里。




写代码这种东西。就跟大学生就跟找女朋友一样,每个人都要求找校花,那么 99%的大学生都不会有性经验了。

我鼓励大学生先找个能用的!积累经验(当然不是专指性经验),不然即使你以后找到校花级别的,你也会因为(相处)经验不丰富而被甩掉。


写代码,一开始就要求类的设计,模式、继承、接口这些,可能你学了 n 年都学不会完美的设计。。如果淘宝一开始就要求多好,现在马云还家空想呢。

要接受不完美,什么东西都是渐进的,一开始不要想太多高大上!
LINAICAI
2015-12-18 18:19:24 +08:00
php 算是门槛最低的,所以连我这种写客户端的人都会写的,能有多高的水平?
话说,基本上所有语言都有这种现象吧,这方面,公司不做规范,那你就要从招人方面入手~
GeekGao
2015-12-18 18:57:51 +08:00
看看 facebook 开源的 PHP 项目,其实还是看人
chinvo
2015-12-18 21:12:49 +08:00
我感觉楼主这个地图炮放的挺好
yxzblue
2015-12-18 21:14:07 +08:00
看看 Yii 框架,其实还是看人
woailuosj
2015-12-18 21:19:25 +08:00
同感,总觉着 php 代码欠缺一定的约定,导致代码层次不齐,很是 low

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/244497

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX