请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需要一步,快速开始

搜索
开启左侧

黑PHP是其他业余程序员的日常了吗?

马上注册,分享更多源码,享用更多功能,让你轻松玩转云大陆。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
php劝退是什么鬼? 说这些言论的人脑子是坏了吗? 说php脏的是不是要去医院把自己大肠割了~ 因为大肠里装的都那啥! 一门语言只是一个工具! 最少php在动态网页领域是无敌的! 现在发热的也是这个领悟! 虽然现在很多公司用go java 但是这冲突吗? 煎牛排就比盖浇饭高大上?
回复

使用道具 举报

大神点评20

向往草原403 2019-8-31 09:03:02 显示全部楼层
别这么激动,没什么语言是无敌的,你也没必要那么忠贞只守着一门语言。
php的问题主要是整体逼格不够,听说世界上80%还是90%的网站都是用php的,但中小应用偏多,大应用很少。如果题主能做那种一二线网站,比如说facebook或者百度的php项目,并发数非常大,业务逻辑有一定复杂度,我觉得是非常好的经历,完全没必要退,而且你会接触到非常多的技术和其他的语言。但如果只是在外包的中小项目中打滚,我觉得可以考虑改变一下,因为好多老代码真的挺脏的,开发体验不好。这个大家心里都有杆秤,你要自己衡量你自己日常工作的技术含量,而不是使用什么语言。
关于脏不脏,我觉得ruby更脏,但人家ruby项目把脏东西藏的好,题主那个大肠的比喻特别好,有脏东西不怕,你得装大肠里,不能放外面。这方面php项目这些年的进步是巨大的,不过老代码和老php程序员的编程习惯已经在那了,有点积重难返,所以要远离这种人和项目,而不是远离PHP。
评论区的评论很多其实和我的回答无关,都是意气之争,大家不用太在意。兄弟我也是当过两年PHP架构师的,我可以用php做很高的并发服务,性能并不是问题,而且对于多数web服务,与其换种语言,不如把数据库调一调。所以没有鄙视任何语言的意思。我不希望年轻的Php程序员固步自封,还是应该睁开眼看这个世界的。
回复

使用道具 举报

黑PHP,没什么意思。

然而反过来黑其他语言呢?那又变成了五十步笑百步。

冤冤相报何时了?OMG
回复

使用道具 举报

luly靓 2019-8-31 10:22:08 显示全部楼层
你们都没注意到吗?人家说的是黑php是“业余”程序员的日常。
所以正确的回答是“不是”,因为吹php才是“业余”程序员的日常,黑php的是“专业”的程序员。

题主的素质充分体现了某个现况。
回复

使用道具 举报

业余程序员 Michael Snoyman;下图来自 Developing Web Applications with Haskell and Yesod
黑PHP是其他业余程序员的日常了吗?-1.jpg

PHP SKRRRRRRRRRRRR


然后是喜闻乐见地吐槽 @eechen  时间:
Perl和PHP用点号(.)连接字符串的好处是不用像JS等脚本用加号(+)连接字符串时进行额外的判断
确定是否是字符串连接需要判断二者是不是 string,但是作为动态语言,即使确定是字符串连接,依然要判断二者是否是 string;直接看 zend_ini_add_string 的代码 php/php-src
static void zend_ini_add_string(zval *result, zval *op1, zval *op2) {
...
          if (Z_TYPE_P(op1) != IS_STRING) { .... }
        if (Z_TYPE_P(op2) != IS_STRING) {....}
}


Perl和PHP用$修饰变量的好处是变量的命名不受关键词和保留字约束,跟常量名和函数名区分,一目了然,还能简化字符串插值(模板字符串).
我就不说这直接取消了正常路径下把函数(以及类作为一种函数)当作第一成员的方法。说了 phper 也听不懂。
说能简化模板我觉得也太扯了,来看看 js
`JS can evaluate expression inside template, like ${
IS_DEV ? 'development' : 'production'
}`
然后 hs
[r|Haskell can have expression inside bracket like $(DEV $> "Dev" <> return "Production")|]

然后 php 呢?
$isDevString = IS_DEV ? "DEV" : "PROD";
return "PHP cannot have expression inside string, and you must write like $isDevString"

不过我也能理解,php 5.3 那群人对 PL 的理解和 @eechen 不相上下,所以写出了那么难看的闭包实现。


实际上为什么 php 用 $ 呢;因为他们早期实现者不会写 parser,用 lex 时来将 $ 强行作为变量美滋滋。
PS: Php 后期似乎支持了 template 中加 expression(没有测过),但是语法是 {${expr}} 两层括号....听说有人说 php 的模板字符串是简化的
更新:{${}}  里面无法加入 expression。
回复

使用道具 举报

丁侦球 2019-8-31 12:08:52 显示全部楼层
世界上只有两种语言: 没人用的和经常被人喷的。
回复

使用道具 举报

123456790 2019-8-31 13:33:18 显示全部楼层
我黑的只是漏洞和 undefined behavior,php中枪只是附加效果。
回复

使用道具 举报

形腿望舞 2019-8-31 14:11:01 显示全部楼层
我认为一般来说编程语言的表达能力和母语的使用水平,尤其是对逻辑的理解能力也是有关系的,比如我们就来看看题主的例子
黑PHP是其他业余程序员的日常了吗?
这里“其他”只能理解为是与“PHP程序员”相对了,但是又想表达“PHP程序员以外都是业余程序员”的意思,结果搞成了这个样子,其他变成了修饰业余程序员,也就是“PHP程序员是业余程序员的一部分”,不仅让人为这位“业余程序员的一员”的bug率捏了一把汗
说php脏的是不是要去医院把自己大肠割了~

因为大肠里装的都那啥!
怒黑一波PHP,我们都不敢黑得这么狠。不过讲道理,大肠本身是负责把那些东西运出去的,从来没有人觉得里面的也是好东西,吃的时候都是要洗干净的
现在发热的也是这个领悟
bug率啊……
虽然现在很多公司用go java 但是这冲突吗?

煎牛排就比盖浇饭高大上?
说实话,得看浇的是什么,是不是大肠里面的东西,你刚说过PHP像大肠一样脏,又说PHP是盖浇饭,你是成心不想让我们吃盖浇饭了吧
回复

使用道具 举报

戏做顿 2019-8-31 15:48:30 显示全部楼层
完全忍不住出来说两句。
每次上知乎都是看到什么php如何如何,您有这点时间多提升下技术行吗?
半吊子响叮当,自己几斤几两没点逼数天天看不起这门语言那门语言。
你们公司老板知道你整天没屁事干上知乎黑php么?
我也没看到BAT里面的技术大牛天天喷这喷哪自己天下无敌的。
我说兄弟,用个语言工具能用出优越感你们心里那得多自卑啊!
欢迎来喷,见一个拉黑一个
回复

使用道具 举报

每一门语言都有自己的优势,脱离具体情况和实际业务来黑某一门语言其实没啥意思的。至少我从来不会参与这种话题的讨论,希望各位也少参与。
至于楼主说的“劝退”,由于你没讲清楚背景。假使某个公司产品用php创业过来,发展到某一个地步了,大部分核心业务php支撑不起来,都换成了Go或Java。那劝退一些php的员工以调整技术团队组成,同时又节约公司成本。又有何不可呢?
你又何曾看见fish javaer摸爬滚打,四处碰壁于各种小公司之间?
回复

使用道具 举报

忆困血馆闻 2019-8-31 18:26:51 显示全部楼层
主要是人云亦云的人太多,爱装逼的人也不少,才会让黑PHP成为政治正确.
但现实就是打脸,PHP中有鸟哥(惠新宸,PHP开发组核心成员),峰哥(韩天峰,Swoole引擎创始人),春哥(王春生,ZPL协议发起者,开源软件禅道项目管理/蝉知企业门户/喧喧即时通讯发起者)这些实干家,他们的产品有目共睹.反观其他语言的拥趸,怎么就没看见也出一个Python鸟哥来提升Python性能呀?
很多其他语言的拥趸被所谓的政治正确灌输后,潜意识认为PHP是个又慢又脏的垃圾语言,但他们大多数人都不知道,PHP5就已经比Python快,PHP7的速度更是不逊色于Lua这种以灵巧快速著称的编程语言.Swoole则告诉那些Node拥趸,PHP里进行异步高并发编程比JS更容易更简单.春哥的系列作品则充分表明了用PHP一样能够写出井井有条的代码,而不是动不动就黑的"PHP面条式代码".
有些人喜欢吐槽PHP使用点号(.)连接字符串,使用美元符号($)修饰变量,使用箭头(->)访问成员,使用反斜杠(\)分隔命名空间. PHP的老大哥Perl就是用.连接字符串,用$修饰变量. Perl和PHP用点号(.)连接字符串的好处是不用像JS等脚本用加号(+)连接字符串时进行额外的判断,性能更好.PHP区分开算术运算和字符串连接,也更好理解. Perl和PHP用$修饰变量的好处是变量的命名不受关键词和保留字约束,跟常量名和函数名区分,一目了然,还能简化字符串插值(模板字符串). C语言中结构体指针通过->访问结构体变量,C++中指针对象通过->访问成员. Perl也使用->,所以使用->并非PHP首创,也有章可循. 命名空间经常要映射到文件目录,几乎没有人会在文件目录命名中使用反斜杠(\),Windows上也不允许,但却很有可能使用点号(.). 所以PHP使用反斜杠(\)分隔命名空间能减少命名冲突,而且反斜杠(\)也有路径分隔的含义,比如Windows系统就使用反斜杠(\)分隔路径.
PHP经常被吐槽的还有命名不统一,一种是Linux C风格,一种是驼峰风格. 但PHP的API命名仍然是相对统一的,比如: mysqli系列函数命名全部都是Linux C风格(小写+下划线). PDO系列函数命名全部都是驼峰风格. 还有些人喜欢吐槽PHP函数的参数列表,但免费的IDE如NetBeans甚至是编辑器如Geany都能提示函数的参数列表. 其实不管什么语言,如果函数参数太多,记不住很正常,这不是PHP独有的问题. 还有人吐槽PHP不完全面向对象,但Linux C一直都是过程化风格,不照样工作得好好的. 不见得把所有API封装成面向对象风格是好事. 比如普通的编辑器基本无法提示一个类或对象中到底有什么方法, 但却能提示一个全局函数及其参数列表.
存在即合理,PHP的很多设计绝非无厘头,PHP的思想是实用主义,是专注,是务实,是简单压倒一切.
回复

使用道具 举报

David902 2019-8-31 19:46:29 显示全部楼层
语言我不懂,但是你拿盖浇饭和牛排是几个意思!
回复

使用道具 举报

刘冠华 2019-8-31 21:22:37 显示全部楼层
哥以前天天黑周边的php程序员,后来那几个小子跟我学golang ,后来他们业务迁移到golang了,后来他们满口的并发,高吞吐,高可用……

昨天php小哥做个一个技术分享《golang 内存管理》
我没得喷了,我好痛苦……
回复

使用道具 举报

oschina没落了,大家都来知乎了
回复

使用道具 举报

刘冠华 2019-8-31 22:28:49 显示全部楼层
最近在写php,所以不是
回复

使用道具 举报

其实黑PHP 大部分都是javaer ,javaer 几百万大军,长期被C++鄙视,所以内心产生极度的自卑感,不黑黑其他语言会被压抑的很难受,至于那些Python、node、go  属于跳梁小丑般的类型,定时刷刷存在感的,PHP跟它们并没什么交集,做的也不是一个事,phper的数量应该是仅次与javaer的数量的,真要网上对喷,它们也不一定喷的过,但做PHP开发的就很少在网上BB,毕竟可能一个适合实干,一个只适合嘴说
回复

使用道具 举报

乔微博 2019-9-1 00:18:02 显示全部楼层
我们程序员自带自黑属性。
我们用过很多种计算机语言,都有黑点。
就喜欢在巨大压力的工作下,互相调侃一下,欢乐一下,不用上纲上线。
比方喜欢穿女装的大佬。
还有我这种穿睡衣进办公室的渣渣,我主要是有张行军床在办公室,睡衣软和舒适
回复

使用道具 举报

程序员哪有空黑别的语言啊,都忙着写代码呢
回复

使用道具 举报

起薪有14k吗?
回复

使用道具 举报

luly靓 2019-9-1 04:33:38 显示全部楼层
我还不是经常自黑PHP,PHP其实也有很多坑,时不时会被踩中。比如小数和整数相乘。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

  • 0 关注
  • 0 粉丝
  • 4 帖子
广告招商