====== Code Conventions for the Java Programming Language ======
* description : 9 - Naming Conventions
* author : 오션
* email : shlim@repia.com
* lastupdate : 2022-04-26 Tue
\\
\\
====== 9. 명명 규칙(Naming Conventions) ======
\\
명명 규칙은 프로그램을 읽기 쉽게 만들어 프로그램을 더 이해하기 쉽게 만듭니다. 또한 식별자의 기능에 대한 정보(예: 상수, 패키지 또는 클래스)를 제공하여 코드를 이해하는 데 도움이 될 수 있습니다.\\
\\
\\
===== Packages 명명 규칙 =====
고유한 패키지 이름의 접두사는 항상 모두 소문자 ASCII 문자로 작성되어야 하고, 최상위 도메인 이름 중 하나, 즉 현재에는 com, edu, gov, mil, net, org 또는 ISO 표준 3166, 1981에 명시된 영어 두 자리 코드 중 하나이어야 합니다.\\
패키지의 하위 구성 요소는 조직의 자체 내부 명명 규칙에 따라 다릅니다. 이러한 규칙은 특정 디렉토리 이름 구성요소가 부서명, 팀명, 프로젝트명, 시스템 이름 또는 로그인 이름이 되도록 지정할 수 있습니다.\\
\\
com.sun.eng com.apple.quicktime.v2 edu.cmu.cs.bovik.cheese
\\
===== Classes 명명 규칙 =====
클래스 이름은 명사이어야 하며, 각 내부 단어의 첫 글자는 대문자로 대소문자를 혼합해야 합니다. 클래스 이름을 단순하고 설명적으로 유지하도록 노력하십시오. 전체 단어를 사용하고, 두문자어(acronyms)와 약어(abbreviations)는 피하십시오(약어가 URL이나 HTML과 같은 긴 형식보다 훨씬 더 널리 사용되는 경우는 제외).\\
\\
class Raster; class ImageSprite;
\\
===== Interfaces 명명 규칙 =====
인터페이스 이름은 클래스 이름처럼 대문자이어야 합니다.\\
\\
interface RasterDelegate; interface Storing;
\\
===== Methods 명명 규칙 =====
메소드는 동사여야 하며, 대소문자를 혼합하여 첫 글자가 소문자여야 하며 각 내부 단어의 첫 글자는 대문자여야 합니다.\\
\\
run(); runFast(); getBackground();
\\
===== Variables 명명 규칙 =====
변수를 제외하고, 모든 인스턴스, 클래스 및 클래스 상수는 소문자 첫 글자로 구성된 대소문자 혼합입니다. 내부 단어는 대문자로 시작합니다. 변수 이름은 밑줄 %%_%% 또는 달러 기호 %%$%% 문자로 시작하면 안 됩니다. 둘 다 허용되는 경우에도 마찬가지입니다.\\
\\
변수 이름은 짧지만 의미가 있어야 합니다. 변수 이름의 선택은 니모닉(mnemonic) 즉, 일반 관찰자에게 사용 의도를 나타내도록 설계되었습니다. 임시 "throwaway" 변수를 제외하고 한 문자 변수 이름은 피해야 합니다. 임시 변수의 일반적인 이름은 정수의 경우에는 ''**i**'', ''**j**'', ''**k**'', ''**m**'' 및 ''**n**''를 사용하고, 문자의 경우 ''**c**'', ''**d**'' 및 ''**e**''를 사용합니다.\\
\\
int i; char c;, float myWidth;
\\
===== Constants 명명 규칙 =====
클래스 상수로 선언된 변수의 이름과 ANSI 상수의 이름은 밑줄%%("_")%%로 구분된 단어로 모두 대문자여야 합니다. (디버깅을 쉽게 하려면 ANSI 상수를 피해야 합니다.)\\
\\
static final int MIN_WIDTH = 4;
static final int MAX_WIDTH = 999;
static final int GET_THE_CPU = 1;
\\
===== Ref Site =====
[[https://www.oracle.com/java/technologies/javase/codeconventions-namingconventions.html|Code Conventions for the Java Language 9 - Naming Conventions]]\\
\\
{{tag> 오션, Naming Conventions}}