小编Ste*_*gas的帖子

关于变量/函数命名约定的思考

我一生都在编码.我主要编写Perl编码,但也编写了一些Java,PHP,C,C++.我甚至对Emacs Lisp进行了一次尝试,我偶尔也做了一个shell脚本.但是,我从来没有真正使用这个主题获得任何专业知识 - 其他事情对我来说有更高的优先级.我不认为自己真的精通任何语言,但Perl,现在也是Haskell,我现在正在学习.

最近,我一直在考虑我的编码风格.不是实际代码的风格; 作为一名CS学生,我只做有趣或学校的项目,这使我能够在我看来写出几乎总是美丽的代码.特别是一个问题困扰着我.这是一个相当奇怪的事情,但我仍然希望听到其他意见.

事情就是这样:我发现自己花了相当多的时间将我的功能和变量命名为我能想到的最容易理解的名字.有时这个任务可能非常繁琐,即使没有考虑到找到传达一段代码含义的变量名称的困难.例如,现在我正在创建一个看起来像这样的函数.

这是Haskell代码,但意思应该很清楚.(它的确切含义并不重要,所以如果你愿意,只需跳过代码并继续阅读.)

-- return the row with least number of Nothing values
bestRow :: [[Maybe Int]] -> Int -> Maybe (Int,Int)
bestRow [] _ = Nothing
bestRow (row:rows) thisIndex
   | nextRow == Nothing && thisFilled > 8 = Nothing
   | nextRow == Nothing       = Just (thisIndex,thisFilled)
   | thisFilled >= nextFilled = Just (thisIndex,thisFilled)
   | thisFilled <  nextFilled = nextRow
     where thisFilled             = length $ filter (/= Nothing) row
           nextRow                = bestRow rows (thisIndex + …
Run Code Online (Sandbox Code Playgroud)

coding-style

3
推荐指数
1
解决办法
914
查看次数

标签 统计

coding-style ×1