Coding Convention - dnd-side-project/dnd-11th-5-backend GitHub Wiki
๊ธฐ๋ณธ
Java ์ฝ๋ฉ ์ปจ๋ฒค์ ์ ๊ฒฝ์ฐ, ๊ธฐ๋ณธ์ ์ผ๋ก ์บ ํผ์ค ํต๋ฐ์ด Java ์ฝ๋ฉ ์ปจ๋ฒค์ ๋ฅผ ๋ฐ๋ฅด๋ ์ผ๋ถ ์์ ํด์ ์ฌ์ฉํ๋ค.
๋ค์ด๋ฐ
- ํด๋์ค : UpperCamelCase, andยทor์ ๊ฐ์ ์ ์์ฌ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ 25์ ๋ด์ธ๋ก ์์ฑ
- ํจ์ : lowerCamelCase
- ๋ณ์, ์์ : lowerCamelCase
- DB ํ ์ด๋ธ: lower_snake_case
- ํจํค์ง: kebab-case
- ENUM, ์์: Upper_snake_case
- ์ปฌ๋ ์ (Collection): ๋ณต์ํ์ ์ฌ์ฉํ๊ฑฐ๋ ์ปฌ๋ ์ ์ ๋ช ์ํ๋ค. (Ex. UserList, ChallengeMap)
- LocalDateTime: ์ ๋ฏธ์ฌ์ Time์ ๋ถ์ธ๋ค.
- LocalDateTime: ์ ๋ฏธ์ฌ์ Date๋ฅผ ๋ถ์ธ๋ค.
URL
URL์ RESTful API ์ค๊ณ ๊ฐ์ด๋์ ๋ฐ๋ผ ์์ฑํ๋ค.
- HTTP Method๋ก ๊ตฌ๋ถํ ์ ์๋ get, put ๋ฑ์ ํ์๋ url์ ํํํ์ง ์๋๋ค.
- ๋ง์ง๋ง์
/
๋ฅผ ํฌํจํ์ง ์๋๋ค. _(underbar)
๋์-(dash)
๋ฅผ ์ฌ์ฉํ๋ค.- ์๋ฌธ์๋ฅผ ์ฌ์ฉํ๋ค.
- ํ์ฅ์๋ ํฌํจํ์ง ์๋๋ค.
IDE ์ ์ ์ฉํ๊ธฐ
- ์ฐธ๊ณ ์๋ฃ : https://naver.github.io/hackday-conventions-java/#_intellij
Static Code Analysis
- code smell ์ ์ต์ํ ํ๊ธฐ ์ํด ci/cd ์ static code analysis์ธ sonarqube ๋ฅผ ์ด์ฉํ์ฌ, ๊ท์น์ ์งํค์ง ์์ ๊ฒฝ์ฐ merge ๊ฐ ๋ถ๊ฐ๋ฅํ๊ฒ ํ๋ค.
- ํธ์๋ฅผ ์ํด intellJ ํ๋ฌ๊ทธ์ธ์ ์ค์นํ๋ค.
- ์ฐธ๊ณ ์๋ฃ : https://adjh54.tistory.com/340