作为一名思考将Perl作为次要强项的PHP开发人员,我需要知道什么?

时间:2009-01-27 03:18:20

标签: php perl

我认为自己在PHP方面非常流利,而且我对几乎所有重要的方面和用途以及它的失误非常熟悉。考虑到这一点,我认为采用Perl的主要问题是语法。除此之外(一个小小的障碍,真的,因为我更倾向于因为Perl的可读性更高),你认为在采用这种语言之前我应该​​让自己意识到的一些关键差异是什么?

7 个答案:

答案 0 :(得分:18)

值得一读的一些不同的事情:

  • 词法范围
  • 正则表达式语法
  • 哈希,数组和列表(在PHP中都是一样的,在Perl中都是不同的)
  • CPAN

答案 1 :(得分:10)

在您学习了Perl的基础知识后,我强烈推荐Damian Conway撰写的“Perl Best Practices”一书。

它确实改变了您的写作风格,以及您对编程的思考方式,特别是使您的Perl程序更具可读性和可维护性。

答案 2 :(得分:4)

在做任何PHP之前,我一直在使用Perl很长一段时间,我发现转换相当容易。

PHP和Perl之间的语法非常相似。显然存在差异,你必须学习一组新的库(CPAN有大多数用途的模块,所以在你实现任何新工具之前,先看看CPAN)。

在Perl中,正则表达式不那么冗长,而且更容易使用。另一方面,如果您了解其他OO语言,PHP中的类看起来更像您期望的那样。对我来说,Perl中的OO似乎有点紧张。

答案 3 :(得分:3)

Perl非常适合文件处理,提取,正则表达式。这是我为任何类型的文本处理选择的第一个工具。

虽然简洁的语法使得Perl很难阅读,但其内置正则表达式和文件处理的强大功能使其非常适合传统语言实际上要大得多的小程序。

答案 4 :(得分:3)

  • 使用严格;使用警告;

  • Perl :: Critic,perltidy(将来)

  • CPAN(使用CPAN shell安装它们)

  • 要使用比现有的基于Python的OO系统更现代的OO系统,您需要从CPAN安装OO系统。试试Moose(如果Moose对你来说太强大,可以试试鼠标)。

  • Unicode不同(集成到语言中)

  • 'eq'和'=='而不是== / === / strval / intval(重要)

  • 测试方向(从Test :: More开始)

另见Perl programming wiki - 教程和其他有用的链接。

答案 5 :(得分:0)

在游戏的这一点上,Perl仍然是一款出色的快速解析器应用程序。对于任何语言,除非您使用的语言超出其意图范围,否则您不应该真正担心语法清洁。 Perl因其臭名昭着的牙签综合症而声名狼借。大部分是因为l33t脚本小子喜欢在1行压缩5行Perl代码。

作为旁注 C + Perl = ~m / PHP /

答案 6 :(得分:0)

对于网络内容,请查看Catalyst。对于OO,请查看Moose。对于最佳实践,请遵循该主题中其他部分的一些建议。这应该足以让你开始。