hyperskill - Coding style conventions 영어 원문
당신이 단순한 단일 줄 프로그램에서 더 복잡한 프로그램으로 이동할 때 부딪히는 질문이 있습니다 :
어떻게 코드를 깔끔하게 하며, 가독성 좋게 작성 할 것인가?
이거는 시작 할 때엔 보기보단 까다로워 보일 테지만, 이건 꽤나 중요합니다 :
실제 세상에서, 프로그래밍은 많은 사람들과 함께 일하는 프로세스를 포함합니다.
사실, 당신은 자주 코드를 작성하는 것보다, 읽는 데 시간을 더 소비합니다.
심지어 당신이 혼자서 작업하고, "스스로를 위해" 작성 한 프로그램 이라도,
시간이 지나고 나서, 만약 당신이 안좋게 작성했다면,
스스로의 프로그램을 이해하는 데 어려워 질 겁니다.
이것은 당신이 일반적인 최고의 예제들로부터 프로그래밍 스타일에 관하여 따라야 하는 이유입니다.
잘 작성한 개발자로부터 코드 스타일을 보고 배우라는 얘기입니다.
이 방식으로, 다른 프로그래머들과 당신 스스로가 스스로 작성한 코드를 쉽게 읽을 수 있습니다.
좋은 코드를 작성하는 것은 당신의 첫 번째 직장을 구하는 데 도움이 될 것이며,
당신의 동료들에게 좋은 인상을 만들어 줄 겁니다.
Java Conventions - 자바 규칙 (관례)
몇 가지 특정 언어들을 위한 코드 작성법의 추천 목록은,
주로 coding style guide 라고 부르거나, style conventions 라고 부릅니다.
이러한 규칙 (관례) 는 개발자들에게 표준화하는 것을 돕거나,
가독성이 좋은 코드를 지원하는 데 돕습니다.
이러한 규칙과 관례는 추천하기보단 엄청격 규칙에 가깝지만,
이를 따른다면 프로그래머가 깔끔하고 일관성 있는 코드를 생성하며,
이로 인해 다른 개발자들이 작업하는 데 더 행복 해 할 겁니다.
대부분의 경우들에서, 회사들과 개인 개발자들은 그들만의 코드 규칙을 생성하지는 않습니다.
전 세계를 넘어 받아들여지는 두 개의 Java 규칙 및 협약이 있습니다 :
가끔씩 그들도 특정한 회사를 만나 해당 회사들의 니즈에 의해 수정되거나 확장 될 수 있습니다.
모든 코드 예제들과 실습들을 통틀어,
우리는 Oracle Code Conventions 를 따를 것이며,
여기서 배우는 동안 같은 것을 수행한다는 것을 충고합니다.
이 강의를 완료 한 후,
당신은 당신이 원하는 어떠한 규칙 혹은 협약도 따를 수 있습니다.
실제로, 어느 하나를 따르는 것이 진짜로 중요하지는 않습니다.
중요한 것은 당신의 코드 전체에서 일관성을 유지하는 것 입니다.
한번에 모든 규칙과 협약들을 배울 필요는 없습니다 :
시간이 지나서 몇 가지 새로운 구문 개념을 배운다는 것을 기억하며 사이트를 들어가세요.
우리는 이 강의를 진행 할 동안, 필요 할 때 정보를 제공 할 겁니다.
이제 Oracle Code Conventions 에 따르는 몇 가지 가장 기초적인 Java 규칙들을 살펴 봅시다.
The number of spaces - 공백의 수
첫 번째 규칙은 전체 프로그램 코드를 통틀어 들여쓰기의 단위를 4 개의 공백으로 사용하라는 겁니다.
당신은 이미 이전에 우리의 코드 예제들을 보았으며, 이 단위를 여기에서 사용했음을 알 수도 있습니다.
좋은 예시 :
public class NumberOfSpacesExample {
public static void main(String[] args) {
System.out.println("Hi!");
System.out.println("I'm a Java program.");
}
}
아주아주 나쁜 예시 :
public class NumberOfSpacesExample {
public static void main(String[] args) {
System.out.println("Hi!");
System.out.println("I'm a Java program.");
}
}
보다시피, 두 번째 코드 예제와 같은 불규칙한 들여쓰기는 보기에 이상하고, 읽는데 노력이 필요합니다.
가끔씩 표 는 들여쓰기로 생성하기도 합니다.
하지만, tab
이라는 들여쓰기는 몇몇 IDE 에서 4 개의 공백 대신 8 개의 공백이기도 합니다.
이것이 이 강의에서 공백을 고수하라고 추천하는 이유입니다.
The location of curly braces - 중괄호의 위치
예전에, 개발자들은 C 의 속성을 가진 프로그래밍 언어들에서
열고 닫는 중괄호를 어디에 넣을 것인가에 대해 많이 논쟁했었습니다.
다음 규칙은 Java 에서는 이에 대해 무엇을 해야 하는가를 묘사합니다 :
- 코드블록이 시작되는 줄의 끝 에 여는 중괄호 를 넣는다.
- 다음 줄의 시작부분 에 닫는 중괄호 를 넣는다.
여기 이러한 규칙을 설명하는 두 가지 예제가 있습니다.
좋은 예시 :
public class NumberOfSpacesExample {
public static void main(String[] args){
System.out.println("HI!");
System.out.println("I'm a Java Programmer");
}
}
나쁘지는 않지만, 자바 방식은 아닙니다 :
public class NumberOfSpacesExample
{
public static void main(String[] args)
{
System.out.println("HI!");
System.out.println("I'm a Java Programmer");
}
}
여기에서 두 번째 코드 예제는 보기에 이상하지는 않습니다.
하지만, 이건 Java 에서 일반적으로 사용되는 방식은 아닙니다.
가장 평범한 규칙은 첫 번째 예시를 따르는 겁니다.
Avoid extra spaces - 추가적인 공백을 피해라
가끔 당신은 진짜로 공백이 필요하지 않은데도 몇 가지 공백을 추가 할 수도 있습니다.
이러한 행동은 당신의 코드의 가독성을 줄입니다.
괄호 내에서 추가적인 공백을 피하세요.
좋은 예시 :
System.out.println("Hello!");
나쁜 예시 :
System.out.println( "Hello!" );
괄호를 열기 전에 추가적인 공백을 피하세요
좋은 예시 :
System.out.println("OK");
나쁜 예시 :
System.out.println ("Shifted braces");
세미콜론 이전에 공백을 피하세요
좋은 예시 :
System.out.println("No extra spaces");
나쁜 예시 :
System.out.println("It has an extra space") ;
The length of a line - 줄의 길이
마지막 추천은 줄의 최대 길이에 관한 것 입니다.
Oracle Code Conventions 에서는 80문자보다 더 긴 줄을 피하도록 제안하고 있습니다.
많은 개발자들은 이 제한을 구식으로 대하고 있는데,
현대적인 모니터들이 더 긴 줄을 쉽게 표현할 수 있기 때문입니다.
반면에, 다른 기기들은 이 규칙을 따르는데,
이는 휴대용 랩탑과 같은 휴대성을 지닌 기기들이 사용됩니다.
이러한 논쟁을 우리 스스로 멀리하고,
우리의 예제 혹은 웹 코드 에디터에서 스크롤바를 피하기 위해 이 강의에서 80 문자 제한을 사용 할 겁니다.
우리는 당신이 여기서 배우는 동안에 같은 것을 수행하길 권합니다.
하지만, 당신이 실제 프로젝트를 실행하거나 다른 곳에서 배우는 동안,
이러한 제약을 위반 할 수 있다는 것을 염두해 두시기 바랍니다.
다른 유명한 제한 값으로는 100, 120 이 있으며,
가끔은 심지어 140 문자가 있습니다.
Conclusion - 결론
코드 스타일 가이드(지침서) 는 가독성이 좋으며, 일관성 있는 코드를 생성하는 데 도움을 주기 위해 규칙 및 협약을 제공합니다.
Java에서는, 가장 유명한 두 가이드는 Oracle Code Conventions 와 Google style guide 가 있습니다.
이러한 규칙들의 메인 규칙 중 하나는 개발자들이 코드를 함께 작업하는데 있어 효과적인 방법을 제공하는 겁니다.
이 것 때문에, 프로젝트 내에서 일관성을 유지하려는 것 처럼,
엄격하게 스타일 가이드 중 하나를 따를 것은 그리 중요하지 않습니다.
나중에, 당신은 Java에 대해서 많은 것들을 배우게 될 거이며,
실력 좋은 프로그래머가 되지만,
코드 스타일을 유지하는 것은 언제나 중요합니다.
어려워 하지 마세요 : 모든 규칙을 한 번에 배울 필요는 없습니다.
앞으로 배우게 될 모든 주제들 안에서,
우리는 Oracle Code Conventions 를 따를 것이며,
당신이 우리와 함께 이를 행하도록 장려 할 겁니다!
words to remember
bump : 충돌, 융기, 혹, 올리다, 마주치다, 쾅하고
involve : 포함하다, 감다, 말아넣다
concern : 관심, 우려 === concerning : ~에 관하여
punctuation : 구두, 구두점 찍기, 구두점 구두법
convention : 규칙, 협약, 관례, 컨벤션
strict : 엄격한, 엄밀한, 완전한
urge : 충고하다, 충동, 자극, 몰아댐, 열심히 행하다, 몰아대다, 죄어치다
throughout : ~내내, ~동안, 도처에, 처음부터 끝까지
indentation : 들여 쓰기
tabulation : 표, 도표작성
stick to : 고수하다, 밀착하다, 접착하다
curly braces : 중괄호
plenty : 풍부한, 많은, 많음, 충분, 다량
outdated : 시대에 뒤쳐진, 구식의 === outdate : 구식
whereas : 반면, 이므로, ~에 반하여
dispute : 논쟁, 분쟁, 말다툼, 논하다, 겨루다, 논쟁하다
keep ~ off : ~를 멀리하고
objectives : 목표, 목적
'Hyperskill - 컴퓨터 CS 및 영어 독해 > Java Backend Developer (Spring Boot)' 카테고리의 다른 글
Naming variables - 변수 이름 (0) | 2024.06.20 |
---|---|
Reading users input with Scanner - Scanner 로 입력값 받기 (0) | 2024.06.19 |
Comments - 주석 (0) | 2024.05.06 |
Types and variables - 타입과 변수 (0) | 2024.05.06 |
Printing data - 데이터 출력하기 (0) | 2024.05.04 |