Perl 编程格式指南

时间:2007-05-25 02:28:26  来源:站长资讯收集整理  作者:佚名

    for (@list) {
        print;              # 对;每个人都知道这是什么意思
        print uc;           # 不好;很少有人知道这个
        print uc $_;        # 看起来好一些了
    }
注意,如果可能的话,请使用特殊变量‘_’。它是一个占位符,可以传递给stat()和文件测试符,它让重新判断文件的状态变得简单一些。在下面这个例子中。在每个文件测试中都要使用变量$file。使用‘_’来代替是个不错的选择。尽管最后一次测试的文件和你想像的一样,你还是应该小心一些。

    if (-d $file) {   # $file现在是一个目录
        # ...
    } elsif (-l _) {  # $file现在是一个symlink        # ...
    }
包的名字应该每个单词的第一个字母大写,其余的小写。
    P5EE::Standard          #  好
    P5EE::Authz             #  好
    P5EE::MainCode          #  好
在POD文档中全部使用小写。
    P5EE::styleguide        # 对于文档来说还不错
为模块命名应该遵循下面几条规则。 所有被p5ee@perl.org邮件列表广泛支持的P5EE的服务都应该进入P5EE的包中 ‘命名样式’应该和CPAN上的模块类似。 ‘选择命名’借鉴CPAN上其他模块的先例。 ‘选择命名’借鉴J2EE的先例。 那些还没有确定要作为对象被初始化的包应该用一个‘形容词’或者‘概念’来作名字(也就是 P5EE::Standard)那些已经确定要作为对象被促使化的模块和类包应该用伴有隐含变化形容词含义的名词来作名字(也就是说 P5EE::Authen::Principal)。

缩进

代码检验后进入CVS必须不能包含制表符。带有制表符的代码片断不能很好的通过email传递,而且不同的人对制表符拦截有不同的设置。如果你想为你的编辑器设置制表符拦截,只要保证它保存文件的时候,把制表符转换为空格就可以了。 一般块样式代码应该缩进4个空格。Emacs和vim的设置如下。

    * x?emacs: cperl-mode

  .xemacs/custom.el:
  ------------------
  (custom-set-variables
     '(cperl-indent-level 4)
     '(cperl-continued-statement-offset 4)
     '(cperl-tab-always-indent t)
     '(indent-tabs-mode nil)
  )

    * vim

  .vimrc:
  -------
  set expandtab " replaces any tab keypress with the appropriate number of spaces
  set tabstop=4 " sets tabs to 4 spaces
                " 将制表符换成适当数量的空格
                " 将制表符换成4个空格

行的长度

行的最长长度应该是77列(对未折行的应该有75列),这是为了最大限度地适用于不同人的开发环境和为了更好的用email来传输而适应不同的email客户端。(也为了补丁)。 例如:Eudora3.0.6 会在第76个字符处,使用一行实心线来限制第80个非空白字符的输出。如果行中间有空格,则它允许在最后一个词后自动换行到下一个具有78个字符的行中。如果源文本没有一行超过77个字符的情况,那么“diff -u”命令则会添加一列,当然这列是不会被折行的。
上一篇:Perl基础指南

文章评论

共有 位CH网友发表了评论 查看完整内容