====== 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}}