免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: HonestQiao
打印 上一主题 下一主题

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧) [复制链接]

论坛徽章:
0
41 [报告]
发表于 2005-09-02 18:40 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

原帖由 "dennis2" 发表:

我对 php 最大的抱怨是它的安全漏洞实在是太多。看看这一、两年来有多少安全漏洞吧..........


相对于漏洞来说,人才是最大的漏洞,而不是语言。

为什么不批判人先呢?

论坛徽章:
0
42 [报告]
发表于 2005-09-02 18:49 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

>; 为什么不批判人先呢?

你是说批判 php 的开发人员?

论坛徽章:
62
2016科比退役纪念章
日期:2016-06-28 17:45:06奥兰多魔术
日期:2015-05-04 22:47:40菠菜神灯
日期:2015-05-04 22:35:07菠菜神灯
日期:2015-05-04 22:35:02NBA季后赛大富翁
日期:2015-05-04 22:33:34NBA常规赛纪念章
日期:2015-05-04 22:32:032015年亚洲杯纪念徽章
日期:2015-04-14 16:54:452015年亚洲杯之朝鲜
日期:2015-03-19 23:03:16明尼苏达森林狼
日期:2015-03-16 21:51:152015小元宵徽章
日期:2015-03-06 15:57:202015年迎新春徽章
日期:2015-03-04 09:55:282015年辞旧岁徽章
日期:2015-03-03 16:54:15
43 [报告]
发表于 2005-09-02 20:14 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

其实我对所有的解释型语言都不喜欢,java稍微好点。
只要是我去写程序,超过100行我肯定使用c,c++.无论做客户端还是web.
设置shell都使用 c.
之所以在php版里面混,也就是因为我第一个开发工作是做web的。

论坛徽章:
0
44 [报告]
发表于 2005-09-02 20:37 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

原帖由 "北京野狼" 发表:
其实我对所有的解释型语言都不喜欢,java稍微好点。
只要是我去写程序,超过100行我肯定使用c,c++.无论做客户端还是web.
设置shell都使用 c.
之所以在php版里面混,也就是因为我第一个开发工作是做web的。


java 不是解释型语言吧...., jython倒是的...

论坛徽章:
0
45 [报告]
发表于 2005-09-03 12:53 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

超过100行我肯定使用c,c++.无论做客户端还是web.

cgi啊???
你不会把c/c++做成的web程序也支持skin, template吧...

java 不是解释型语言吧...., jython倒是的...

何必分得那么细呢?
反正语言到了最后, 语法都是细节.
能快速地做出来, 简洁能用,可扩展就行了...

发这帖子...本质是为了看自己的头像...
无刻意反驳的意思

论坛徽章:
0
46 [报告]
发表于 2005-09-03 14:58 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

我以为的缺点:
1、PHP语法太不严谨了,难受的是不区分大小写,这好像不是*nix的风格,过于宽松的后果会降低代码的质量;
2、PHP的执行效率实在是太慢了,听说PHP没有线程的概念,是不是跟这有关呢?;
3、命名不一致性,前面有人提到了,PEAR里面定义了一套命名规则,但没多少人去实施;
4、对稍大的字符串的处理吃力,还是少用正则的好,如果不是必要的话;
5、instance a class 居然可以这样:
$className = "myClass";
$obj = new $className();
这里的$className 究竟是什么角色?看上去是一个普通字串,但字串怎么可以作为一个className?在C中有这样定义的吗?
6、PHP4.x中对象支持太薄弱又混乱,不支持封装和多态,不用实例化就可随便调用方法,总的感觉就只是一个func lib集合,怎么能写出高质量的程序?怎么保证代码的可维护性?不过据说这在PHP5中已有改进。PHP5中表现怎样,因为我暂时不太熟这里就不说了;
7、main中声明的变量不能在函数中使用,在C中这是允许的,刚学PHP的时候真不习惯这个;
8、如前面引用的文章中提到的magic quote,每次都得检查一次这个配置,反而变复杂了,有人想到了inherit一个递归函数自动检查$_REQUEST,但递归的效率太低没人愿意用的;
9、缺少内建的对象,这点要表扬ASP;
10、没有自带调试器,Zend的IDE又要$;

我认为PHP的优点:
第一个缺点也是某种优点,那就是上手快,有C的底子一切OK,比C更自由;
众多的函数库;
最大的优点:free:),非常适合中小型应用。开发难度低周期短,凭这一条就成为众多WEB脚本的杀手锏;
有很多免费的库随便用;

论坛徽章:
0
47 [报告]
发表于 2005-09-03 20:01 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

不是很同意楼上的某几个观点:
1. php在某种程度上是区分大小写的, 只是控制体, 函数, 类名不是(好象php5里区分的). 区分大小写的是变量. 我倒觉得这样做没什么不好.
2. 作为一种脚本语言, 你不能要求太高
4. 估计这个问题在任何语言里都一样
5. php是解释型的. 许多编译型的语言做不到的事情, 它能做到. 那没什么奇怪的.
6. php本来是过程型的...
9. 是指什么?
11. 估计cli就是用来调试的

论坛徽章:
62
2016科比退役纪念章
日期:2016-06-28 17:45:06奥兰多魔术
日期:2015-05-04 22:47:40菠菜神灯
日期:2015-05-04 22:35:07菠菜神灯
日期:2015-05-04 22:35:02NBA季后赛大富翁
日期:2015-05-04 22:33:34NBA常规赛纪念章
日期:2015-05-04 22:32:032015年亚洲杯纪念徽章
日期:2015-04-14 16:54:452015年亚洲杯之朝鲜
日期:2015-03-19 23:03:16明尼苏达森林狼
日期:2015-03-16 21:51:152015小元宵徽章
日期:2015-03-06 15:57:202015年迎新春徽章
日期:2015-03-04 09:55:282015年辞旧岁徽章
日期:2015-03-03 16:54:15
48 [报告]
发表于 2005-09-05 09:56 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

原帖由 "Yarco" 发表:

何必分得那么细呢?
反正语言到了最后, 语法都是细节.
能快速地做出来, 简洁能用,可扩展就行了...

发这帖子...本质是为了看自己的头像...
无刻意反驳的意思


cgi不支持template,那怎么写啊?
我做网站都使用标准c

论坛徽章:
0
49 [报告]
发表于 2005-09-05 23:55 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

如果对像操作用"."就好啦

论坛徽章:
0
50 [报告]
发表于 2005-09-06 08:37 |只看该作者

[讨论] PHP 大批判(尽你所能所知,批判一下子PHP的不足吧)

[quote]原帖由 "csona"]如果对像操作用"."就好啦[/quote 发表:

虽然您说的有道理...但老实说,我还是更习惯->;
因为这容易让我想到前面的那个是指针, 而不是结构体.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP