혼자 개발하는 상황이라면 코드 컨벤션의 필요성을 못 느낄 수 있다. 본인이 작성한 코드이기에 쉽게 있기 때문...
이 코드가 무슨 코드인지는 오직 신과 나만이 안다. 그리고 이제는 오직 신만이 아신다.
하지만 시간이 지난 후엔 어떨까? 코드를 작성하고 시간이 꽤 흐른 뒤에도 전부 기억할 수 있을까?

만약 내가 작성한 코드를 다른 사람이 이해하고 활용해야하는 상황이라면 나의 코드 스타일을 다른 사람이 이해하기까지 걸리는 시간도 적지 않을 것이다.
이런 상황들을 미연에 방지하기 위해 우린 컨벤션을 사용한다.
컨벤션은 소프트웨어 개발에서 코드 작성 및 프로젝트 관리 시 지켜야 할 일종의 규칙이나 약속을 말한다.
컨벤션은 팀 또는 커뮤니티 내에서 코드를 일관성 있고 가독성 있게 유지하기 위한 목적으로 사용된다.
프로그램은 사람들에게 읽히기 위한 목적으로 만들어져야하고, 우연히 컴퓨터가 실행할 수 있다면 더욱 좋다.
결론적으로 코드 컨벤션의 궁긍적 목표는 누구나 쉽게 코드를 이해하고 사용할 수 있게 하기 위함이라 말할 수 있다.
📌 컨벤션 : 코드 작성이나 프로젝트 협업 시 미리 정한 규칙
헷갈리는 두 단어의 의미를 알아보자.
코딩 컨벤션
코드를 작성하는 방법에 대한 규칙을 포괄적으로 의미한다.
코드 스타일뿐만 아니라 파일 구조, 모듈화 방식 등
개발자가 코드를 작성하는 방식 전반에 대한 규칙이다.
코드 컨벤션
코드 스타일에 대한 상세한 규칙을 의미한다.
변수명, 함수명 작성법, 공백 처리, 주석 작성 방식 등
구체적인 코드 형태와 관련된 규칙이다.
두 용어는 서로 같은 의미를 사용하지만, 코딩 컨벤션이 더 포괄적인 의미이다.
1.이름 규칙(Naming Rules)
2.들여쓰기 및 공백 (Indentation and Spacing)
3.주석 규칙 (Commenting Conventions)
4.파일 및 폴더 구조 (File and Folder Structure)
5.커밋 메시지 규칙 (Commit Message Conventions)
커밋 메세지를 잘 작성하는 것은 협업에서 기본적인 습관이다.
내가 다른 사람의 작업 내용을 한 눈에 파악할 수 없다면 다른 사람 역시 내가 작성한 커밋에 대한 내용을 파악하기 어려울 것이다.
팀에서 함께 같은 컨벤션(커밋 메세지 규칙)으로 협업한다면 히스토리를 파악하고 코드 리뷰도 단시간에 해결할 수 있을 것이다.
Type : Subject
Body
Footer
| Type | 의미 |
|---|---|
| Feat | 새로운 기능에 대한 커밋 |
| Fix | 버그 수정 |
| Build | 빌드 관련 파일 수정 |
| Ci | CI 관련 설정 수정 |
| Docs | 문서(문서 추가, 수정, 삭제) |
| Style | 스타일(코드 형식, 세미콜론 추가) |
| Refactor | 코드 리팩토링 |
| Test | 테스트(테스트 코드 추가, 수정, 삭제) |
| Chore | 기타 변경사항(삘드 스크립트 수정 등 |
커밋 메세지의 제목
Feat: 신규 RFID 인식 기능 추가
커밋 메세지의 본문
신규 RFID 기능 인식 기능 추가
- RFIDReader.java: 사용자 요건 사항으로 인한 RFID 인식 기능 추가
커밋 메세지의 맺음말
해결: #123
관련: #321
참고: #222