我已经在线阅读了一些关于Perl样式命名约定的文章,它建议使用小写字母并用下划线分隔单词的函数或方法名称.其他一些人使用小写的第一个单词然后将其他单词大写.当然Windows .NET等大写每个单词,没有下划线.
我有一些包方法很多单词entriesoncurrentpage,如果我按照Perl风格建议我应该这样做:
sub entries_on_current_page {...}
Run Code Online (Sandbox Code Playgroud)
这为方法名称添加了四个下划线字母,另一个样式是:
sub entriesOnCurrentPage {...}
Run Code Online (Sandbox Code Playgroud)
和Windows风格应该是:
sub EntriesOnCurrentPage {...}
Run Code Online (Sandbox Code Playgroud)
PHP有时会使用全部小写和下划线mysql_real_escape_string(),有时使用全部小写但没有下划线htmlspecialchars,当然PHP函数名称不区分大小写,因此Perl不支持此功能.
所以问题是,对于有很多单词的长名称,用于Perl编码的最佳样式是什么.
最初,大多数Perl开发人员使用驼峰外壳,首字母小写.这是大多数编程语言的标准.首字母大写的名称用于类和方法.
后来,达米安康威的书Perl Best Practices建议使用下划线而不是骆驼外壳.达米安认为它增加了可读性,而且输入的难度也不大.
达米安康威关于名字的建议成为标准,因为1).他是对的.它更易读,并且输入的难度也不大,最重要的是2).它被纳入Perltidy.Perltidy是一个根据Damian的建议帮助标准化代码的程序.Perltidy很像Java中的CheckStyle.
这些任意标准吗?是的,所有标准都有些武断.您有一些候选人的规则建议,您必须做出决定:
while循环和if语句中的大括号是否应该附加在行的末尾,或者在whileor if语句下.在标准的C风格中,花括号被拥抱.在Java中,他们并不认为是CheckStyle的.在Kornshell,then经历了这个问题if.在Bash中,现在的标准是then即使Bash解释器并不喜欢它,它仍然在同一条线上.(你必须在之前添加一个分号,then因为它被认为是一个单独的命令.$PWD,$PATH等等.因此,在Bash和Kornshell脚本,不断变量都驼峰格式像普通的变量.我们的想法是要遵循的标准是语言.为什么?因为标准是这样说的.因为你不能和The Standard一起争论,因为你可以和你的程序员一起讨论花括号是否拥抱.这主要是要意识到大多数标准可能有点武断,但它们并不会真正影响你的编程方式.每个遵循标准的人都可以更容易理解其他人的代码.
| 归档时间: |
|
| 查看次数: |
2122 次 |
| 最近记录: |