====== Code Conventions for the Java Programming Language ======
* description : 4 - Indentation
* author : 오션
* email : shlim@repia.com
* lastupdate : 2022-04-14 Thr
====== 자바 프로그래밍 언어를 위한 코드 규약 ======
===== 4. 들여쓰기 =====
4개의 공백을 들여쓰기 단위로 사용해야 합니다. 들여쓰기를 정확히 설정(space va tabs)하는 것은 지정되어 있지 않습니다. 탭은 정확히 모두 8칸(4칸이 아님)으로 설정해야 합니다.\\
\\
===== 4.1 한 라인의 길이 =====
80자 이상의 라인은 터미널과 툴에서 잘 처리되지 않으므로 피해야 합니다.\\
\\
**Note : ** 이 문서에서 사용되는 예제는 일반적으로 70자를 넘지 않는 더 짧은 라인의 길이일 것입니다.\\
\\
===== 4.2 줄 바꿈 =====
표현식이 한 라인에 맞지 않을 떼, 표현식을 아래의 일반 원칙에 따라 줄바꿈 합니다.\\
\\
* 쉼표 뒤에서 줄바꿈 합니다.
* 연산자(operator) 앞에서 줄바꿈 합니다.
* 낮은 수준에서 줄바꿈 하는 것 보다 높은 수준에서 줄바꿈 하느 것을 선호합니다.
* 이전 라인에 있는 동일한 수준의 표현식의 시작 부분과 새로운 라인을 일치시킵니다.
* 위의 규칙으로 코드가 혼란스럽거나 오른쪽 여백 가까이 가는 경우, 대신 8칸의 공백 들여쓰기를 합니다.
\\
다음은 메서드 호출을 줄바꿈하는 몇 가지 예제입니다.\\
\\
someMethod(longExpression1, longExpression2, longExpression3,
longExpression4, longExpression5);
var = someMethod1(longExpression1,
someMethod2(longExpression2,
longExpression3));
\\
\\
다음은 산술 표현식을 줄바꿈 하는 두 가지 예제입니다. 두 번째 예제에서는 상위 수준의 괄호로 묶인 표현식 외부에서 줄바꿈 했기 때문에, 첫 번째 예제가 선호됩니다.\\
\\
longName1 = longName2 * (longName3 + longName4 - longName5)
+ 4 * longName6; // PREFER
longName1 = longName2 * (longName3 + longName4
- longName5 + 4 * longName6; // AVOID
\\
\\
다음은 들여쓰기 메서드 선언의 두 가지 예제입니다. 첫 번째 예제는 기존의 경우입니다. 두 번째 예제는 기존 들여쓰기를 사용하는 경우 두 번째 및 세 번째 라인을 오른쪽으로 멀리 작성해야 하므로 이때에는 대신 8칸만 들여씁니다.\\
\\
// CONVENTIONAL INDENTATION
someMethod(int anArg, Object anotherArg, String yetAnotherArg,
Object andStillAnother) {
...
}
// INDENT 8 SPACES TO AVOID VERY DEEP INDENTS
private static synchronized horkingLongMehtodName(int anArg,
Object anotherArg, String yetAnotherArg,
OBject andStillAnother) {
...
}
\\
\\
if 문의 줄바꿈은 일반적으로 8-공백 규칙을 사용해야 합니다. 기존의 (4-공백) 들여쓰기는 body를 보기 어렵게 만들기 때문입니다. 예를 들어:\\
\\
// DON'T USE THIS INDENTATION
if ((condition1 && condition2)
|| (condition3 && condition4)
|| !(condition5 && condition6)) { // BAD WRAPS
doSomethingAboutIt(); // MAKE THIS LINE EASY TO MISS
}
// USE THIS INDENTATION INSTEAD
if ((condition1 && condition2)
|| (condition3 && condition4)
|| !(condition5 && condition6)) {
doSomethingAboutIt();
}
// OR USE THIS
if ((condition1 && condition2) || (condition3 && condition4)
|| !(condition5 && condition6)) {
soSomethingAboutIt();
}
\\
\\
다음은 삼항식(ternary expression)을 작성하는 세 가지 방식입니다.\\
\\
alpha = (aLongBooleanExpression) ? beta : gamma;
alpha = (aLongBooleanExpression) ? beta
: gamma;
alpha = (aLongBooleanExpression)
? beta
: gamma;
==== Ref ====
[[https://www.oracle.com/java/technologies/javase/codeconventions-indentation.html|Code Conventions for the Java Programming Language 4 - Indentation]]\\
\\
[[http://ifstechdocs10.azurewebsites.net/Foundation1/050_development/022_user_interface/045_ee_dev/020_standards/030_coding_standards/020_code_indentation/default.htm|Code Indentation]]
{{tag> 오션, Code Conventions, Indentation}}