PHP为什么被看不起,为什么有些程序员看不起PHP这门语言?
《士兵突击》中有这么一段话:
老马继续苦笑:“跟你讲个故事。狗栏里关了五条狗,四条狗沿着顺时针方向跑圈,一条狗沿着逆时针方向跑圈。后来顺着跑的四条都有了人家,逆着跑的那条被宰了吃肉,因为逆着跑那条不合群养不熟,四条狗……甭管怎么说,它们的价值也是一条狗乘以四——你听明白了吗?
。。。。。。
许三多不理他,接着说他的“明白”——那条狗要是一会儿顺着跑,一会儿逆着跑就好了。
老马明显是噎了一下:“为……什么?”
“因为……反正在圈里,反正得跑圈,这样有意思一点……”许三多被老马瞪得有些发毛,顺时针逆时针地划着手指,“这样跑不容易晕……跑圈嘛,很容易晕的。”
PHP严格来说不算是一个独立的,功能齐全的编程语言。它本身就是为了快速生成网页而被发明出来的。现在PHP有了很大的发展,但是它的这个出身,其实对他的发展还是有挺大的影响的。比如和java比吧,不够企业化。
比如java有企业级功能,特别是EJB,能够支持非常复杂和健壮的企业级应用,以及比较大的规模的并发系统。
为什么有些程序员看不起PHP这门语言?“规矩”二字你要牢记!
和c/c++比又不够底层,很多底层功能无法支持。
和python,ruby,perl比,又不够脚本,没有unix/linux血统。和go比吧,没有google撑腰。而且说快速生成网页吧,现在大把的语言都支持,就拿java说吧,java还是有企业级的比如JSF支持。而且现在WEB系统都玩的富客户端,js基本上都独立实现很多业务逻辑了,后端已经退化成或者还原其本来面目了。因此PHP的发展和地位可想而知。
总结一下PHP的情况就是生不逢时,没有好爹。
为什么有些程序员看不起PHP这门语言?“规矩”二字你要牢记!
但是PHP的优点也很多,要我说,就是处理字符串很简单,你用过Perl吗?Perl总是要区分标量、数组、哈希,尤其是那个引用规则,加上她OOP里那些个宗教用语,显然PHP相对来说规则要简单太多,不是吗?
为什么有些程序员看不起PHP这门语言?“规矩”二字你要牢记!
PHP早期就带着个基础函数有个大毛病,命名规则不统一加上参数顺序稀里糊涂,很多程序员都有对齐、命名强迫症,会觉得这设计得也太随意了。如果你按用途和添加时间分个类,就会发现也没那么糟了。
其次,神奇的array,老实说我觉得这也许算个优点,搞得我甚至在Java里都习惯一个Map通吃全部结构,并弄了个方法集以便像PHP的array一样随意多层存取而不报异常。这个观点估计会被喷,没错,这就是我要说问题之一。
对于一个已经习惯了在其他语言里区分数组、哈希等的程序员来说,这array是个啥玩意呀,它同时是list/map/set,那么你的同事写的代码传递给你一个array时你也得小心了,两人没讲清楚结构最终可能就要干一架。
为什么有些程序员看不起PHP这门语言?“规矩”二字你要牢记!
然后,错误处理。总的来说他有三套异常方案,返回值、error_handle、try/catch。
返回值本来没什么好说的,但问题是一般比较时void、null、false、0、空串和字串0均表示否,尤其是那个字符串0简直是新手犯错的重灾区。error_handle的问题在于截获的现场不在当下,什么意思呢?当trigger_error后仅仅表示程序有问题、或有要注意的事,在发生的位置,你可以终止也可以继续,所以这根本不像一种异常处理机制,倒更像一个试图统一的运行时日志机制。
还有,全局环境。比如$_GET、$_POST直至$GLOBALS,它太方便(没规矩)了,导致程序员虽然从表面上分了MVC,可是不知道哪层突然想用到一个比如Session里的什么东西,就直接取了——手册就这么教的?!
为什么有些程序员看不起PHP这门语言?“规矩”二字你要牢记!
作为胶水语言PHP挺好,但问题在于早期也就仅限于能做胶水。过去PECL/PEAR收录的还不是很全,或者倒霉催的遇到前同事遗留的不知道啥法子编译安装的PHP时,你想加模块也得跟着编译。这一编译不打紧,在Linux上有非常大的概率遇到依赖问题,一个库要这个版本,另一个库要另一个版本,或者依赖的库又依赖另一个库。当你在你自己的机器上搞得一切顺利的时候,结果上了客户的机器就一箩筐的问题,搞得下不来台。
为什么有些程序员看不起PHP这门语言?“规矩”二字你要牢记!
有时候你也不能批评这个语言不好,因为它只是多做了些封装、多提供了一些可能,这有错吗?你更不能批评人不行,在不同的历史时机使用他的人群也不尽相同。
语言是什么?语言就是交流的规则。但愿随新老交替,能贯彻好规范吧。
了解更多PHP相关知识欢迎来到合肥达内PHP培训,合肥PHP培训班免费训练营正在报名中,北京一线名师入门高薪互联网行业,全程大咖讲师亲授,为你解析行业发展趋势,就业前景,帮你了解技术,轻松入门,更快一步成为技术大牛!在线留言客服即可报名参加。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!
PHP为什么被看不起,为什么有些程序员看不起PHP这门语言?相关推荐
- 程序员如何选择第二门语言
多人爱争论第一门程序语言该学什么.每个人的出发点不同,有人认为,第一门语言应当是有趣.无进入门坎:有人则认为,第一门语言影响往后程序开发的思考方式,要严谨而富有思考性:有人以实用为出发点,认为视(将来 ...
- 为什么大部分程序员看不起PHP这门语言?
为什么大部分程序员看不起PHP这门语言? 原因很简单,人的追求都是不一样的: 1. 有些程序员以拥有多少 IT 工具和知晓多少专业梗为乐,PHP 这门语言,主要适用在中并发以下的 web 项目快速开发 ...
- 为什么每个程序员都应该学习C语言?
为什么每个程序员都应该学习C语言? 每个程序员在他们的编程生涯中都应该学习C语言,因为它有太多难以忽视的好处了.除了它会给你提供更多的工作机会之外,C语言还会教给你更多的关于计算机的知识.它能给我们提 ...
- 程序员成长之旅——C语言三子棋
程序员成长之旅--C语言三子棋 简易介绍三子棋 三子棋编程过程 三子棋代码总览 game.h game.c test.c 简易介绍三子棋 进行了这么多天的c语言学习,今天给大家讲一下三子棋是如何用c语 ...
- 程序员必须要掌握哪些语言
随着科技的进步以及新技术的推进,编程语言的种类也是越来越多,随之带来的变化就是程序员需要跟进学习的语言也很多.但是语言这么多不可能都去一一掌握,在当前形式下,最需要掌握的三种编程语言.评判的标准是不过 ...
- 学了java有必要学c语言吗_程序员有必要学习C语言吗?这几点原因很现实
原标题:程序员有必要学习C语言吗?这几点原因很现实 C语言是编程语言中的一种,有不少程序员会有这样的疑问?难道做程序员就必须要学习C语言吗?甚至有人觉得,我平时的工作中也用不到C语言我为什么要学习呢? ...
- 程序员看不起事业单位员工:一年收入才4万?网友:40岁再比一比,究竟谁更牛逼!!
在职场中很多人会不自觉地进行攀比,特别是工资究竟是谁的多,谁的少这是免不了的一件事情. 就在最近,有一位程序员和自己得同学比较了一下工资,他是这么说的:事业单位里的一个同学,工作三年了,现在一年的收入 ...
- Java开发四年的程序员想再学习一门语言,该选着C还是Python呢?
首先,对于已经从事Java开发工作四年的同学来说,如果想再开一门编程语言,应该结合自己的发展规划来选择C或者是Python,如果未来想进入大数据.人工智能领域发展,选择Python会更方便一些,而且P ...
- 能让你成为更优秀程序员的10个C语言资源
本文由 伯乐在线 - archychu 翻译自 mycplus.欢迎加入 技术翻译小组.转载请参见文章末尾处的要求. 一些人觉得编程无聊,一些人觉得它很好玩.但每个程序员都必须紧跟编程语言的潮流.大多 ...
最新文章
- 独家专访:SequoiaDB 3.0 版本正式发布!协议级完整兼容MySQL!
- Python中的测试工具
- inodemac_校园网客户端Mac版-Inode7.0 for mac下载 V7.0-PC6苹果网
- 【Qt】QModbusRtuSerialMaster类
- 数据库系统原理笔记:关系数据库设计
- 循环删除list中多个元素
- PASS云计算书简介——接近完美的模式
- 安卓抓包,为何总是 Tunnel to?
- windows server 2008下载及序列号
- Aquatone -- 子域名探测
- 一点点读懂regulator(四)
- 网站标题关键词SEO优化技巧
- poj2528 贴海报
- BZOJ4480:快乐的jyy(回文自动机)
- echart 热搜词云(字符云)的制作以及遇到颜色不会随即变得bug
- 曲速未来 发布:新基建下,区块链将急速发展
- Python的容器:列表、元组、字典与集合
- Win10 蓝牙已配对但无法连接的问题
- Weblogic报错BEA-141281
- linux系统下制作启动u盘,制作Linux系统启动盘的四种简便方法