some_var = foo()
another_var = bar()
或
some_var = foo()
another_var = bar()
包括在添加或删除行时更改空白以保持排列。这真的很好吗?是不是值得混淆差异?
答案 0 :(得分:9)
我认为它不是一个好的风格,因为它太难以进行更改(你必须完成所有的工作再次排列它们),对我来说,它是完全可读的,没有额外的空格。
对此更令人讨厌的是,当你改变一条比其他所有行都长的行的左边部分时,你需要重新排列所有其他行。
示例:
some_var = foo()
another_var = bar()
现在我要添加一个名为another_another_var
的var:
some_var = foo()
another_var = bar()
another_another_var = baz()
现在我必须再次排队:
some_var = foo()
another_var = bar()
another_another_var = baz()
非常讨厌。
答案 1 :(得分:4)
从我作为VCS管理员的时间开始,很少有风格问题值得一试。我们有一个开发人员改变他的性别变化程序的名字,她的新名字没有相同的首字母。然后,每当她参加一个项目时,她都会将她以前的名字改为新名字,这让我很烦恼。
答案 2 :(得分:2)
使用Perl,您可以随时设置首选项并对代码进行操作。
在正确的语境中,它给出了对齐='s的精确性,而不用担心需要考虑如何最好地对齐它们并记住自己做。
此外,无论您为项目使用何种编码风格,都应该强烈保持这种风格。
风格越一致且严格执行,就越容易在代码中发现奇怪和编程错误。
此外,通过强制执行良好的换行规则,对编码风格的一些强制执行可以长期减少基于差异冲突的问题。
答案 3 :(得分:1)
不,除非变量之间存在某种垂直关系,例如:
some_var[ 1] = "foo";
some_var[100] = "bar";
但我这样做非常罕见,特别是当我只有一些变量时。这在SQL中更常见,我可能在一行中有参数名称,类型和默认值(三个部分),但即使在那里我也试着避免它 - 这不值得麻烦。
@some_var varchar(25) = NULL
@another_var varchar(1000) = ''
@one_more int = 0
答案 4 :(得分:1)
没有
虽然有些人发现这种风格非常令人愉悦,但现代的IDE语法突出显示会使这种方式的对齐变量浪费时间,包括重构或修改代码时重新格式化它们所花费的时间。
此外,我坚信将变量声明为接近需要的范围。很少会导致变量声明块甚至需要对齐。
答案 5 :(得分:1)
这样的样式会使眼睛垂直移动;但是,代码应该是水平阅读。编码风格应该与眼睛的作用相辅相成,而不是与之作斗争。
答案 6 :(得分:1)
此外,在极端情况下,由于存在较大的间隙,很难随意查看哪个分配到了哪里。这是我在头文件中经常看到的东西。
...
some_important_number = 348273;
initial_message_prefix = "foo";
another_important_number = 348711;
max_bucket_sz = 456;
...
在一个区块中有数十个这样的区域,它变得难以阅读。