Code Convention - be14-fin-Clover-Salad/be14-fin-Clover-Salad-BE GitHub Wiki
Java ์ฝ๋ ์ปจ๋ฒค์
1. ํ์ผ ๊ณตํต ์๊ฑด
- UTF-8 ์ธ์ฝ๋ฉ ์ฌ์ฉ
- LF (Line Feed) ์์ค ๋ฌธ์ ์ฌ์ฉ
- ํ์ผ ๋์๋ ์์ค ๋ฌธ์ ์ฝ์
2. ์ด๋ฆ ๊ท์น (Naming)
- ์๋ฌธ/์ซ์/์ธ๋์ค์ฝ์ด๋ง ์ฌ์ฉ
- ํ๊ธ ๋ฐ์ ํ๊ธฐ ๊ธ์ง (์:
moohyungJasan
โ โintangibleAssets
โ ) - ์ฝ์ด ํ๊ธฐ ๋ช
์ (์:
HttpAPIUrl
,HTTPAPIURL
๋ฑ ํ๋ก์ ํธ ๊ธฐ์ค ์ ์ ํ์) - ํจํค์ง๋ช
: ๋ชจ๋ ์๋ฌธ์ ์ฌ์ฉ (
com.example.service
โ ) - ํด๋์ค/์ธํฐํ์ด์ค๋ช : UpperCamelCase ์ฌ์ฉ
- ํด๋์ค ์ด๋ฆ์ ๋ช ์ฌ, ์ธํฐํ์ด์ค๋ ๋ช ์ฌ/ํ์ฉ์ฌ
- ํ
์คํธ ํด๋์ค: ์ ๋ฏธ์ด๋ก
Test
- ๋ฉ์๋๋ช : lowerCamelCase, ๋์ฌ ๋๋ ์ ์น์ฌ๋ก ์์
- ์์: ๋ชจ๋ ๋๋ฌธ์ + ์ธ๋์ค์ฝ์ด (์:
MAX_SIZE
) - ์ผ๋ฐ ๋ณ์: lowerCamelCase ์ฌ์ฉ
- ์์ ๋ณ์ ์ธ์๋ ํ ๊ธ์ ๋ณ์๋ช ๊ธ์ง
3. ์ ์ธ ๊ท์น
- ์์ค ํ์ผ ๋น 1๊ฐ์ ํ๋ ๋ฒจ ํด๋์ค
import
์ ์์ผ๋์นด๋(*) ์ฌ์ฉ ๊ธ์ง (static import
๋ง ํ์ฉ)- ์ ํ์ ์์:
public protected private abstract static final โฆ
(JLS ๊ธฐ์ค) - ์ ๋ํ ์ด์ ๋ค์ ์ ์ค ์ฝ์
- ํ ์ค์ ํ๋์ ๋ฌธ์ฅ / ๋ณ์ ์ ์ธ
- ๋ฐฐ์ด์ ํ์
๋ค์
[]
long
์ ๋๋ฌธ์L
๋ก ์ ๋ฏธ- ํน์๋ฌธ์ ์ด์ค์ผ์ดํ๋ ์ ์ฉ ๊ธฐํธ ์ฌ์ฉ (
\\n
,\\t
๋ฑ)
4. ๋ค์ฌ์ฐ๊ธฐ
- ํ๋ํญ ์ฌ์ฉ (์คํ์ด์ค X)
- ํญ ํฌ๊ธฐ: 4 ์คํ์ด์ค
- ๋ธ๋ญ ์ค์ฒฉ๋ง๋ค 1๋จ๊ณ ๋ค์ฌ์ฐ๊ธฐ
{ }
5. ์ค๊ดํธ -
K&R ์คํ์ผ ์ฌ์ฉ
if (a > b) { return a; } else { return b; }
6. ์ค๋ฐ๊ฟ (Line-wrapping)
- ์ต๋ ์ค ๊ธธ์ด: 120์
package
,import
๋ ํ ์ค์ ์์ฑ- ์ค๋ฐ๊ฟ ์ ๋ค์ ์ค์ 1๋จ๊ณ ์ด์ ๋ค์ฌ์ฐ๊ธฐ
- ์ค๋ฐ๊ฟ ํ์ฉ ์์น:
extends
,implements
,throws
๋ค- ๊ดํธ
(
, ์ฝค๋ง,
๋ค - ๋ง์นจํ(
.
), ์ฐ์ฐ์ (+
,-
,==
,&&
, ๋ฑ) ์
7. ๋น ์ค (Blank lines)
package
์ ์ธ ํ ๋น ์ค ์ฝ์import
๋ ๊ทธ๋ฃน๋ณ ์ ๋ ฌ ํ ๋น ์ค๋ก ๊ตฌ๋ถ- ๋ฉ์๋ ์ ์ธ ์ฌ์ด์ ๋น ์ค ์ฝ์
8. ๊ณต๋ฐฑ (Whitespace)
- ์ค ๋์ ๊ณต๋ฐฑ ๊ธ์ง
- ๋ฐฐ์ด, ์ค๊ดํธ, ์๊ดํธ ๋ค์ ์ ์ ํ ๊ณต๋ฐฑ ์ฝ์
- ์ ์ด๋ฌธ ํค์๋์ ๊ดํธ ์ฌ์ด: ๊ณต๋ฐฑ ์ฝ์
(์:
if (a > b)
) - ๋ฉ์๋๋ช /์์ฑ์ ๋ค ์๊ดํธ: ๊ณต๋ฐฑ ์ฝ์ ๊ธ์ง
- ํ๋ณํ ๊ดํธ ๋ด๋ถ ๊ณต๋ฐฑ ์์ (์:
(String)value
) - ์ ๋ค๋ฆญ ๊บพ์ ๊ดํธ
<T>
์ ๊ณต๋ฐฑ ์ฝ์ ๊ธ์ง - ์ฝค๋ง
,
, ์ธ๋ฏธ์ฝ๋ก;
๋ค์๋ง ๊ณต๋ฐฑ ์ฝ์ - ์ฝ๋ก
:
์ ์๋ค ๊ณต๋ฐฑ ์ฝ์ - ์ดํญ/์ผํญ ์ฐ์ฐ์๋ ์๋ค ๊ณต๋ฐฑ
- ๋จํญ ์ฐ์ฐ์๋ ๊ณต๋ฐฑ ์ฝ์ ๊ธ์ง
- ์ฃผ์๋ฌธ ๊ธฐํธ ์๋ค์ ๊ณต๋ฐฑ ์ฝ์