写代码不格式化的,都是垃圾,不接受反驳!

2022-04-21 19:59:15 +08:00
 helloworld1024
8903 次点击
所在节点    程序员
82 条回复
falcon05
2022-04-21 22:56:24 +08:00
看来你是没吃过亏,编辑器远没那么智能,有时一个格式化快捷键按下去,后果很严重。
461da73c
2022-04-21 23:46:08 +08:00
@chendy clang-format 不存在你说的问题。
FranzKafka95
2022-04-21 23:55:33 +08:00
关于 C++格式化的,我推动我们团队做的一套体系,目前来看还不错。大家可以看看 https://coderfan.net/how-to-unify-code-stytle-in-c-or-c-plus-plus-html.html
HankLu
2022-04-22 00:04:16 +08:00
完蛋,我写一行格式化一次,我是不是有病啊
c0xt30a
2022-04-22 00:12:36 +08:00
格式化有时候还是个人的审美品味,没有一个固定的标准。
譬如下边的 duff's device ,在不同的程序员手里可能会有不同的格式化方式,很难论个高下。

```c
void send( int* to, int* from, int count)
{
int n = (count + 7) / 8;
switch (count % 8) {
case 0: do { *to = *from++;
case 7: *to = *from++;
case 6: *to = *from++;
case 5: *to = *from++;
case 4: *to = *from++;
case 3: *to = *from++;
case 2: *to = *from++;
case 1: *to = *from++;
} while (--n > 0);
}
}
```
dcsuibian
2022-04-22 00:17:33 +08:00
以我的经验来说,Java 、C#随便格。
Python 想格就格(个人不是很喜欢 PEP8 ,感觉每行太短了)
js 也可以格,但要小心规则一致性,要不然容易搞出一大堆 eslint 错误。最好用 prettier 配合好。

目前唯一注意到的会影响运行的例子好像是出在 html 格式化上,但也比较极端。
<ul><li>...</li><li>...</li><li>...</li><li>...</li></ul>
被格式化成
<ul>
<li>...</li>
<li>...</li>
<li>...</li>
<li>...</li>
</ul>
如果此时 li 被设置成宽度 25%的话,那么多出来的空白符会使这一行溢出。
yagamil
2022-04-22 00:22:13 +08:00
golang 保存是自动格式化
answerhuang
2022-04-22 00:35:22 +08:00
@a1562619919 最近也踩过这个坑, 前端打包脚本里面用字符串截取去获取某个值(比如: env="dev" ), 格式化的时候 双引号被格式化成单引号了, 导致获取环境的脚本失败.
micean
2022-04-22 08:27:42 +08:00
从来都是手动格式化。。。。
unco020511
2022-04-22 09:18:20 +08:00
然后你帮他们一格式化,就显示一堆你的提交,同事就会问,你改啥了提交这么多,别把我的功能改坏了
CodeCodeStudy
2022-04-22 09:18:26 +08:00
自己写的代码要格式化,但是别人写的就不要修改了,免得出问题了要背锅
liut2016
2022-04-22 09:26:15 +08:00
@HankLu 我也有这个病,写完一行就按下 ctrl+alt+l 、ctrl+alt+o
Narcissu5
2022-04-22 09:33:04 +08:00
所以 Go 在这方面真的很有遇见性
lisongeee
2022-04-22 10:15:31 +08:00
可以用 git hook 做代码格式化
archxm
2022-04-22 10:15:47 +08:00
好一个不接受反驳。
helloworld1024
2022-04-22 10:15:58 +08:00
@chendy 这种格式化之后逻辑都会出问题的代码,那是该有多烂啊...
helloworld1024
2022-04-22 10:18:05 +08:00
@461da73c 我在 review 代码的时候,如果发现没格式化的,一律打回。
helloworld1024
2022-04-22 10:21:50 +08:00
@cmdOptionKana
@seers
@Rocketer
@Rocketer
@lisongeee

我是从 eclipse 时代就开始写代码的,当时还没有自动格式化功能,和自动报错功能,当时我就养成了一个我认为非常好的习惯,写代码的时候手不能闲下来,一闲下来就会按 ctrl + shift + f 、ctrl + s 。

虽然现在用 idea 了,有自动保存的功能了,这个习惯还是保留着。
helloworld1024
2022-04-22 10:22:02 +08:00
@Narcissu5 gofmt 很好用。
alanhe421
2022-04-22 10:24:44 +08:00
hook precommit 辅助下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/848431

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX