Java 程式中用來宣告類別區塊,方法區塊,if else區塊等所用到的大括弧(curly brace)開頭{
符號(opening brace)是否該換行?
例如下面的if區塊。
// Good
if (condition) {
// statements;
}
// Bad
if (condition)
{
// statements;
}
Java coding style中大括弧不應該換行,例如
Code Conventions for the Java TM Programming Language Revised April 20, 1999、
Google Java Style Guide、
Airbnb JavaScript Style Guide、
Alibaba coding style
都是開頭大括弧不換行。如果換行會讓你程式碼量增加20%到50%。
這種開頭括弧不換行的風格又稱為Egyptian Brackets,或稱為K&R Style或1TBS(One True Brace Style)
開頭大括弧換行看了真令人厭煩。直到最近終於知道為什麼有些寫Java程式的人會把大括弧換行,有可能他是寫C#(C sharp)起家的,C#的習慣就是大括弧換行,如果有一天我去寫C#我也會乖乖的遵守大括弧換行的規範。Show some respect OK?
Go語言更是不允許大括弧單獨一行,否則編譯會報錯,藉此禁止大括弧換行。例如下面的Go程式執行會報錯。
func main() // missing function body
{ // syntax error: unexpected semicolon or newline before {
...
}
沒有留言:
張貼留言