많은 프로젝트를 진행하면서 팀 협업의 중요성을 깊게 깨달았다. 소프트웨어 개발은 혼자서 하는 작업이 아니기 때문에, 코드 규칙과 파일 생성 규칙은 팀내에서의 일관성을 유지하고, 코드의 가독성을 높이고 , 유지보수를 용이하게 만드는데 필수적이다.
기본적으로 자바 프로젝트 진행시 기존에 만든 규칙들이 있다.한번 알아보자
✅ 1. 프로젝트 (Project)
대/소문자 구분 없이 시작 가능.
대문자 사용 권장.
✅ 2. 패키지 (Package)
패키지명은 대소문자 허용, 클래스명과의 구분을 위해 소문자 사용 권장.
표준 패턴: [com].[Company].[Project].[toppackage].[lowerpackage]
한 단어 사용 권장.
좋은 예: com.example.project.module
나쁜 예: com.exampleProjectModule
✅ 3. 클래스 (Class)
파스칼 표기법 사용.
명사로 시작.
예시: HelloWorld, TestWorld, ByeClass
✅ 4. 인터페이스 (Interface)
특별한 접두사나 접미사 없이 파스칼 표기법 사용.
형용사 사용.
예시: Runnable, Remote
✅ 5. 메서드 (Methods)
카멜 표기법 사용.
동사로 시작.
5.1 속성 접근 메서드
접두사: get, set
예시:
public void setDisplayName(String name){}
public String getDisplayName(){}
5.2 데이터 조회 메서드
접두사: find
예시:
public Object findData(String data){}
5.3 데이터 입력 메서드
접두사: input
예시:
public void inputData(HashMap<String, Object> data){}
5.4 데이터 변경 메서드
접두사: modify
예시:
public void modifyData(HashMap<String, Object> data){}
5.5 데이터 삭제 메서드
접두사: delete
예시:
public void deleteData(String data){}
5.6 데이터 초기화 메서드
접두사: initialize
예시:
public void initializeData(String data){}
5.7 반환 타입이 boolean인 메서드
접두사: is
예시:
public boolean isDataAvailable(String data){}
5.8 데이터 불러오기 메서드
접두사: load
예시:
public void loadData(){}
5.9 데이터 존재 확인 메서드
접두사: has
예시:
public boolean hasData(){}
5.10 새로운 객체 생성 메서드
접두사: create
예시:
public Account createAccount(){}
5.11 객체 변환 메서드
접두사: to
예시:
public String toString(){}
5.12 복수/단일 구분 메서드
접미사: s
예시:
public List<Member> getMembers(){}
5.13 전치사 사용 메서드
접두사: By
예시:
public User getUserByName(String name){}
✅ 6. 변수 (Variable)
소문자로 시작.
카멜케이스 사용.
예시: firstName, lastName, birthDate
카멜케이스란?
낙타🐫 (Camel Case) → 대문자가 혹처럼 튀어나옵니다 (firstName, lastName)
firstName, lastName, fullName
✅ 7. 상수 (Constant)
전부 대문자로 표기.
스네이크 케이스 사용.
예시: MAX_PRIORITY, LIFESPAN
스네이크 케이스란?
뱀🐍 (Snake Case) → 언더스코어가 뱀처럼 이어집니다 (first_name, last_name)
FIRST_NAME,LAST_NAME,FULL_NAME
'Java' 카테고리의 다른 글
[Java]valueOf()를 이용한 형변환 (0) | 2025.03.04 |
---|---|
[Java]Enum이란? & 사용법 (0) | 2025.02.28 |
[Java]난수 생성(math,Random) (0) | 2025.02.14 |
[Java]ArrayList (0) | 2025.02.11 |
[Java]Map 컬렉션 (0) | 2025.02.07 |