번역 변수정보
영문 | 카멜 | 파스칼 | 스네이크(소) | 스네이크(대) |
---|---|---|---|---|
registration-datetime | registrationDatetime | RegistrationDatetime | registration_datetime | REGISTRATION_DATETIME |
공공데이터 공통표준용어 변수정보
영문 | 카멜 | 파스칼 | 스네이크(소) | 스네이크(대) |
---|---|---|---|---|
registration-datetime | registrationDatetime | RegistrationDatetime | registration_datetime | REGISTRATION_DATETIME |
형태소 구성정보
단어 | 영어번역 | 축약어 |
---|---|---|
등록 | registration | rgst |
일시 | datetime | dt |
단어를 축약시키기에 타인이 이해하기 어려울 수 있습니다. 그러므로 주석을 꼭 작성하여 코드를 이해하기 쉽게 작성해야 합니다.
코드 상에서는 주로 변수명이나 함수명을 작성할 때 이러한 표기법 중 하나를 선택하여 일관성 있게 사용하는 것이 좋습니다. 이를 통해 코드의 가독성이 향상되고 유지보수가 용이해집니다.
IDE의 자동완성 기능을 사용하면 변수명을 쉽게 작성할 수 있습니다. 변수명을 작성할 때는 IDE의 자동완성 기능을 사용하여 변수명을 작성하면 됩니다.
예를 들어, 회원을 의미하는 함축어 Mbr라는 단어를 입력하고 자동완성 기능을 사용하면 Mbr라는 단어를 포함하는 변수명을 쉽게 작성할 수 있습니다.
변수명은 단어를 창조하는 것이 아니라 기존 단어를 조합하는 과정입니다. 새로운 단어를 만드는 대신 기존 단어를 적절히 조합하여 목적을 명확하게 드러내는 것이 중요합니다.
클래스는 파스칼 표기법을 사용합니다. (예: class MemberService)
상수는 대문자와 언더스코어(스네이크 표기)를 사용합니다. (예: static final String BLOGGER_NAME = "무지한 JACOB")
패키지나 모듈은 소문자로 작성하며, 그 외에는 카멜 표기법을 따릅니다.
용어를 일관성 있게 단일화합니다.
예를 들어, 등록일시를 Regist와 DateTime으로 조합하여 RegistDateTime과 같이 표현합니다.
사용자간의 명확한 의사소통 또는 데이터간의 일관성있는 코드를 읽기 위해서는 동일한 표기용어를 사용하여야 합니다.
이는 추후 ORM의 Repository 작성의 함수 길이에 영향을 미칩니다.
예를 들면 아래와 같이 길어질 수 있습니다.
함축어를 사용하기 전은 아래와 같이 Repository가 작성이 됩니다.
findByAllWordicUserNameOrderByRegistDesc
하지만 함축어를 사용하게 되면
findByAllWrdUsrNmOrderByRegDesc
와 같이 작성이 됩니다.
용어가 길면 혼돈으로 빠집니다. 명확하게 단어를 파악할 수 있게 함축어를 사용하여야 합니다.
중요하고 중복되는 단어를 앞으로 배치하고, 그렇지 않은 것을 뒤로 배치하여 가독성을 향상시킵니다. 예를 들어, AFont, BFont, CFont에서 중복되는 용어를 앞으로 보내고 변수를 뒤로 배치하여 FontA, FontB, FontC와 같이 리팩토링합니다.
이는 enum에서 Type을 표현할때 많이쓰기도 합니다.
이러한 방법론은 코드 작성 과정뿐 만 아니라 가독성과 유지보수성을 향상시켜 개발자 간의 원활한 커뮤니케이션을 지원합니다.
이러한 원칙들을 준수하면 공통 용어를 사용하여야 하며 용어가 공통으로 쓰였을때 코드의 효율성을 높일 수 있습니다.
예시: camelCaseExample
설명: 카멜 표기법은 여러 단어를 하나의 식별자로 표현할 때, 각 단어의 첫 글자를 대문자로 표기하고 나머지는 소문자로 표기하는 방법입니다. 주로 변수명, 함수명 등에서 사용됩니다.
예시: snake_case_example
설명: 스네이크 표기법은 여러 단어를 언더스코어(_)로 구분하여 표기하는 방법입니다. 주로 변수명, 파일명 등에서 사용됩니다.
예시: PascalCaseExample
설명: 파스칼 표기법은 카멜 표기법과 유사하지만, 첫 번째 단어의 첫 글자도 대문자로 표기하는 방법입니다. 클래스명, 생성자명 등에서 주로 사용됩니다.