2009年12月28日星期一

Re: [PerlChina] 关于PERL和PHP的融合的思考

反�:我�有�得�人搞的�西都不可靠啊。我�的�http服�器和框架�一用perl�的目的:��只是想毒害下一代程序�而已。(�人�得那�的��起web服�器端程序�很��,比如serialize到�就不需要了,因�只要web服�器�在�行,你就可以保存一��象�所有的http�求使用。�然,��也有不好的地方。比如:如何���入一�模�,多�站�同��行�如何�保多站��不�突...)
CPAN��是好,支�Perl到�在的�大�力�疑就是它。
web��到�在服�器端的技�含量已�很低了,PHP能�出就�明了�一�。用Perl�做那些增�查改,�有Perl提供的方案�是太��了。太�于追求模�化的同���失掉��性的。
就��。

2009/12/29 flw <su2admin@gmail.com>
性能我没有测试过,即使有性能的差别,这也是实现时造成的问题,
并不是模块化的坏处。(当然 CPAN 上的模块良莠不齐,在所难免)
至于警告么,我觉得需要就事论事,有些警告是程序员的问题,有些警告是模块自身的问题。
(Perl 序列化可以用 http://search.cpan.org/~ams/Storable-2.21/Storable.pm

我不懂 web 开发,可以请擅长的朋友们详细阐述一下 PHP 和 Perl 在 web 开发时的性能问题,
以及这种性能差距假如存在的话,是否有可能在 Perl 内部解决掉。

我的想法是,Perl 应该不会比 PHP 慢,如果真的慢,那么应该是 mod_perl 的实现问题,
只是单纯地搞一套 Perl 库出来应该无济于事。

PHP 从语言的角度讲,实在算不得上是一种设计优美的语言(平坦的名字空间,含糊的冗余的内置函数)。
没有 CPAN 是它的劣势,不是它的优势,PHP 社群这两年也在搞类似于 CPAN 的东西,足以说明这一点。

事实上就我接触过的语言来说,大多都缺乏一个像 CPAN 这样运作良好的模块中心。
近年来 PHP Erlang Haskell 等也都在搭建类似于自己的 CPAN 这样的东西。

小林和 alex 提到的感想,是许多老一辈程序员(尤其是另一些 C 程序员)经常会有的想法,
他们往往觉得别人搞的东西都不可靠,只有自己从零开始搞出来的东西才可靠,
(于是 PHP 诞生了,nginx 诞生了)但是对于大多数新入门的朋友们来说,
能够有更多的模块来复用,在这些基础上快速地构建自己的应用,实在是一件乐事。
只是,过了新入门这个阶段之后,还是应该深入了解一些东西,这样就可以在使用第三方模块的时候,
又不为它们所制约,逢山开路遇水搭桥,有 BUG 就改 BUG 有不足就重写之。
我在使用 Net::SSH::Perl 的过程中尤其感受到这一点。
2009/12/29 Lin <i@lxl.cn>

除了写法不同,性能也会有不少差异。
我们经常能看到很多 PHP 脚本拿 serialize 和 unserialize 来做数据库缓存以减少 SQL 查询,
而在 Perl 里面要达到这个效果,你就不得不搬出一堆模组,并且可能有这样或那样的警告,非常不方便。

2009/12/28 flw <su2admin@gmail.com>

我觉得这个只是写法上的不同吧。
Data::Dumper 本身也是 Perl 标准发行版的一部分,
基本上不需要你另行安装的。

更何况 Module 本身也是软件工程发展的方向,
如果什么都要集成,那就会像 PHP 一样,有很多重复的功能。
Perl 就已经够不正交的了。

2009/12/25 Lin <i@lxl.cn>
比如 Perl 大家经常会用:
 
use Data::Dumper;
print Dumper( ... );
 
而在 PHP 里面,可以有:
 
var_dumnp( ... );
print_r( ... );
serialize( ... );
 
等等,这是很明显的区别。

--

您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--

您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--

您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

没有评论: