> Perl的秘诀是什么?有没有一个特殊的语法,允许你在很少的按键中执行复杂的任务?是正则表达式的组合吗?
我想学习如何编写强大而简短的程序,如你所知道的代码高尔夫挑战.什么是最好的开始的地方?我不想学习“干净”Perl – 我想写一个脚本,即使我不懂一个星期之后.
如果还有其他编程语言,我可以写更短的代码,请告诉我.
解决方法
>无数据输入.值可以互换使用作为字符串和数字.@H_404_13@>“对角线”语法.通常称为TMTOWTDI(有多种方法可以做到)@H_404_13@>默认变量.如果没有指定参数,大多数函数将作用于$_. (几个行为@H_404_13@上 @_.)@H_404_13@>采用多个参数(如split)的函数通常具有默认值@H_404_13@让你省略一些论据甚至全部.@H_404_13@>“魔术”阅读线操作符,<.@H_404_13@>高阶函数,如map和grep@H_404_13@>正则表达式集成到语法中(即不是单独的库)@H_404_13@>短路运算符返回测试的最后一个值.@H_404_13@>短路运算符可用于流量控制.
另外,没有限制(这是默认的):
>您不需要声明变量.@H_404_13@> Barewords自动引用到字符串.@H_404_13@> undef变为0或“取决于上下文.
现在已经没有了,让我很清楚一点:
高尔夫是一场比赛.
希望通过perl-fu的水平,让你擅长,但以“DIETY”的名义,不要高尔夫的真实代码是非常好的.一个,这是一个可怕的浪费时间.你可以花一个小时尝试修剪几个字符.高尔夫代码是脆弱的:它几乎总是做出主要的假设,并且毫无疑问地忽略错误检查.真正的代码不能那么粗心.最后,您作为程序员的目标应该是编写清晰,可靠和可维护的代码.在编程中有一句话:总是写你的代码,好像维持它的人是一个暴力的社会主义者谁知道你住在哪里.
所以,一切手段,开始打高尔夫;但是意识到它只是在玩弄,并对待它.