×

Loading...
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务

有一点需要澄清以下,虽然不是Perl高手:Perl设计的指导思想就是,作且制作一件事清并把它作到足够好。所以事实上并不是Perl本身有多复杂,而是因为他需要把为数众多的各自领域的老大们的优势攒和到一块,才给人造成一种似乎Perl似乎庞杂无比的错觉。

本文发表在 rolia.net 枫下论坛比如楼主提到的awk, sed, regular expression, etc 其实本身都是独立于Perl而存在的,只不过由于功能强大普遍使用而被Perl相中并被广泛使用。其实,这也就是很多其实只对Perl知之甚少的人也(比如本人)都知道,Perl被称作glue的原因。
Perl一个非常重要但同时也被起反对者广为诟病的思想,就是所谓的有多种方法实现同一功能。毫无疑问喜欢标新立异特立独行的黑客们爱死了这一特性,所以完全可以想象为数众多的使用者都是Unix系统管理员或黑客,他们写出来的程序可读性会有多强,更别奢谈什么文档了。显然作为大规模商业软件的开发环境下强调过程,discipline的指导思想非常矛盾。最终的结果就是,就像PC和Mac 或Windows vs Unix/Linux一样,各有一批铁杆粉丝,并极力把对方贬的一无是处,大有不共戴天势不两立的架势。其实完全没必要,看你想干什么了。比如Unix Administrator,绝对是很好的选择。如果作商业性的软件开发,即便抛开性能等因素,也不是那么合适。
最痛苦的就是像-live365(人在丰田,车开福特)这样的人在曹营心在汉同学,不仅汽车,工作也是如此,真得同情一下...
相对而言我就幸福多了,虽然不喜欢Windows, SQL Sever, etc,开得也是福特,可是俺人在Maple Leaf可吃的却是地道的中餐,呵呵更多精彩文章及讨论,请光临枫下论坛 rolia.net
Report

Replies, comments and Discussions:

  • 工作学习 / 学科技术讨论 / 借问这里的人气,有PERL高手吗?最近看得我头昏眼花,,,PERL基本结合了SHELL,正则表达式,AWK,UNIX概念,JAVA的多态,重构面向对象概念,EXECL表格等,,,花花肠子不少,
    http://book.opensourceproject.org.cn/lamp/perl/perl5chinese/perl5-14.htm

    • Not Perl guru. But if you're new to Perl I'd suggest turning to Python instead.
      • 好像在perl的介绍里反而说python 不好。
    • What is the question?
    • 没看到你任何问题啊?!和Linux/UNIX打交道,Perl绝对好用。
    • 可算是迄今为止最恶心最不人性化的语言了,就是因为极其强大跟Mainframe一样淘汰不了。本是我工作的第一语言我任是躲到现在还在躲,根本就是那种jerk用的。
    • perl的精华在它众多的module和完全免费,其他的有一个星期就足够了
      • 牛人,我学了很久了,到现在连别人写的GETOPTIONS都看不懂,每个人写的都不一样,这个就是这个语言最糟糕的部分,我最唾弃的就是这种看似高深,别人没法维护的语言。
    • 我对这个语言可以说是深恶痛绝,上一份工作接手的 BUILD SCRIPT 是个高手写在一个File里的,总计200多页。对于我们这种上了年纪的人OO出身的人实在是接受不了。
      • :) One line = 100 line. terrible.
    • 有一点需要澄清以下,虽然不是Perl高手:Perl设计的指导思想就是,作且制作一件事清并把它作到足够好。所以事实上并不是Perl本身有多复杂,而是因为他需要把为数众多的各自领域的老大们的优势攒和到一块,才给人造成一种似乎Perl似乎庞杂无比的错觉。
      本文发表在 rolia.net 枫下论坛比如楼主提到的awk, sed, regular expression, etc 其实本身都是独立于Perl而存在的,只不过由于功能强大普遍使用而被Perl相中并被广泛使用。其实,这也就是很多其实只对Perl知之甚少的人也(比如本人)都知道,Perl被称作glue的原因。
      Perl一个非常重要但同时也被起反对者广为诟病的思想,就是所谓的有多种方法实现同一功能。毫无疑问喜欢标新立异特立独行的黑客们爱死了这一特性,所以完全可以想象为数众多的使用者都是Unix系统管理员或黑客,他们写出来的程序可读性会有多强,更别奢谈什么文档了。显然作为大规模商业软件的开发环境下强调过程,discipline的指导思想非常矛盾。最终的结果就是,就像PC和Mac 或Windows vs Unix/Linux一样,各有一批铁杆粉丝,并极力把对方贬的一无是处,大有不共戴天势不两立的架势。其实完全没必要,看你想干什么了。比如Unix Administrator,绝对是很好的选择。如果作商业性的软件开发,即便抛开性能等因素,也不是那么合适。
      最痛苦的就是像-live365(人在丰田,车开福特)这样的人在曹营心在汉同学,不仅汽车,工作也是如此,真得同情一下...
      相对而言我就幸福多了,虽然不喜欢Windows, SQL Sever, etc,开得也是福特,可是俺人在Maple Leaf可吃的却是地道的中餐,呵呵更多精彩文章及讨论,请光临枫下论坛 rolia.net
      • 说的很好。我对Shell就不那么讨厌,因为大多是小程序,运行一次而已,不需要维护。而Perl则经常被用来写相对庞大的build script,几千行的程序,用这种黑客类的做法,跟我这种J2EE出身的人,强调Business Value的人来说相当的不习惯。不过存在就是真理,没有办法了。
        • :):)黑客类的做法.... well well. It takes time. But one day you may be one of them.
    • 如果不会看懂基本的perl,你都不好意思说你是unix admin。这两天,用shell 和 perl 各写个程序干同样的一见事。主要是文字处理,perl的又简单又清晰,速度超快。可以这么说 perl 针对文字处理的强大性,高效性,让我佩服的五体投地。
      • 我对此非常的不屑一顾。作为技术人员,对于解决问题,我最先在Process Level考虑,不行在Tools Level解决,用Code是无奈之举,code是最难维护的,效率最低的,实现business value最差的。除非无奈我是不愿写code的,所以说coder是不值钱的。
      • 忘了具体出处,总之是与软件工程相关的一本书或文章有一句话印象深刻:程序是用来写给人看的,而不是用来给机器运行的。你举的例子,我承认,在我前面的帖子里我也提到过,作为Unix Admin,Perl绝对是上上之选。
        可问题是,Unix Admin或类似职位在所有IT从业人员里究竟能占多大比例?

        但凡是稍微有点programming经验的人,不管他是不是吃那晚饭的,看到Java, C#, SQL, Python, etc....连蒙带猜或多或少都能猜个大概。可是Perl,碰上两个系统变量再加上点 regular expression,只要你不是真正玩Unix AND Perl的,那绝对是云里雾里不知所云---当然这也正是其深受某些人推崇的原因。

        至于你说的“主要是文字处理,perl的又简单又清晰,速度超快“,同样在我的帖子里提到,Perl 是glue,在你里的例子里,其实是用的regular expression。所以与气说是Perl简单清晰速度超快,不如把主语换成regualar expression。据我所知,现在的C#也支持regular expression,那么用C#写一个文本处理程序如果性能还不错的话是不是说你也会转向C#?既然你对文本处理这么干兴趣,那就给你一个链接:
        http://www.b-eye-network.com/view/9516 ,其中有一句话送给你“If you’re a Perl programmer, switch to Python. It’s not too late. “。我本人就是看了这篇文章之后开始正式看Python,正式开始玩Text analytics ......
    • 如果你只会用锤子,那么你希望所有的工作都是砸钉子。我的google和amazon面试都有perl 部分
      google是python shop,但是还是很多用perl 的,特别是系统管理方面
      amazon 是最大的perl 应用,集中了无数perl 的程序员。他的sys admin都叫 sys engineer, 也就是要写系统管理 tools的
      我读书时用惯了C++,觉得perl 很怪异。后来学会了觉得简直是非编程人员的best bet
      后来有些系统用python, 我觉得它的语法更怪异,特别是没有"{ }" , 然后用空白缩进来标示段简直很恶心
      这都是因为用惯了C的语法。现在用的多了,觉得python的确不错
      所以我现在看ruby的人狂扁Java, Java的人瞧不起PHP的,都很可笑。

      说白了,做IT这行要flexible。 否则给你个东西维护,或者去个新客户那里做contractor,
      人家用螺丝,你就会用榔头,你说你这个扳手太恶心,咋不是上下砸的。哈哈
      • 语言与语言之间的关系,和锤子与扳手之间的关系还是不同的。锤子与扳手是平行关系,谁也取代不了谁;语言只要是图灵机完备的,是可以相互取代的。
        取笑或者鄙视自己不懂的东西,只是显得自己可笑罢了。从没用过PHP的Java人瞧不起PHP的,就属于这种;不懂Perl的人对Perl说三道四,也属于这种。但是......

        贬Java的Ruby人,没有一个是不懂Java的。

        ......这是本质的不同
      • 我就是非编程人员,我觉得python好像是专门为我设计的。对于工程人员,python绝对是最好的选择。