๐ก ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ ๋ค์ด๋ฐ ๊ท์น
1. ์นด๋ฉ ์ผ์ด์ค (Camel Case)
• ์ฒซ ๋จ์ด๋ ์๋ฌธ์๋ก ์์ํ๊ณ , ์ดํ ๋จ์ด์ ์ฒซ ๊ธ์๋ ๋๋ฌธ์๋ก ํ๊ธฐํ๋ ๋ฐฉ์.
• ์์: myVariableName, calculateTotalPrice
• ์ฃผ๋ก ๋ณ์๋ช ์ด๋ ๋ฉ์๋๋ช ์ ์ฌ์ฉ๋จ.
2. ํ์ค์นผ ์ผ์ด์ค (Pascal Case)
• ๋ชจ๋ ๋จ์ด์ ์ฒซ ๊ธ์๋ฅผ ๋๋ฌธ์๋ก ํ๊ธฐํ๋ ๋ฐฉ์.
• ์์: CustomerName, ProductList
• ์ฃผ๋ก ํด๋์ค๋ช ์ด๋ ํจ์๋ช ์ ์ฌ์ฉ๋จ.
3. ์ค๋ค์ดํฌ ์ผ์ด์ค (Snake Case)
• ๋จ์ด ์ฌ์ด์ ๋ฐ์ค(_)์ ์ฌ์ฉํ์ฌ ๊ตฌ๋ถํ๋ ๋ฐฉ์.
• ์์: user_name, total_price
• ํ์ด์ฌ ๋ณ์๋ช ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๋๋ช ์ ์์ฃผ ์ฌ์ฉ๋จ.
4. ๋๋ฌธ์ ์ค๋ค์ดํฌ ์ผ์ด์ค (Upper Snake Case)
• ๋ชจ๋ ๋จ์ด๋ฅผ ๋๋ฌธ์๋ก ํ๊ธฐํ๊ณ , ๋ฐ์ค๋ก ์ฐ๊ฒฐํ๋ ๋ฐฉ์.
• ์์: MAX_LENGTH, DEFAULT_CONFIG
• ์ฃผ๋ก ์์๋ช ์ ์ฌ์ฉ๋จ.
๐ก ์ธ์ด๋ณ ๋ค์ด๋ฐ ๊ท์น ์ถ์ฒ
• ์๋ฐ: ์นด๋ฉ ์ผ์ด์ค(๋ณ์, ๋ฉ์๋) / ํ์ค์นผ ์ผ์ด์ค(ํด๋์ค)
• ํ์ด์ฌ: ์ค๋ค์ดํฌ ์ผ์ด์ค(๋ณ์, ํจ์) / ํ์ค์นผ ์ผ์ด์ค(ํด๋์ค)
• C#: ํ์ค์นผ ์ผ์ด์ค(ํด๋์ค, ๋ฉ์๋) / ์นด๋ฉ ์ผ์ด์ค(๋ณ์)
• ์๋ฐ์คํฌ๋ฆฝํธ: ์นด๋ฉ ์ผ์ด์ค(๋ณ์, ํจ์) / ํ์ค์นผ ์ผ์ด์ค(ํด๋์ค)
๐ก ์ข์ ๋ค์ด๋ฐ ์ต๊ด
1. ์๋ฏธ ์๋ ์ด๋ฆ์ ์ฌ์ฉํ๋ผ: ๋ณ์๋ ํจ์์ ์ด๋ฆ์ ๊ทธ ๋ชฉ์ ์ ๋ช ํํ ๋ํ๋ด์ผ ํจ.
• ๋์ ์: a, temp
• ์ข์ ์: userAge, calculateInterest
2. ์ฝ์ด ์ฌ์ฉ ์์ : calculateTotalAmount() ๋์ calcAmt() ๊ฐ์ ์ฝ์ด๋ ํผ๋์ ์ ๋ฐํ ์ ์์.
3. ๋์ฌ๋ก ์์ํ๋ ํจ์๋ช : ํจ์๋ ์ฃผ๋ก ๋์์ ๋ํ๋ด๊ธฐ ๋๋ฌธ์ ๋์ฌ๋ก ์์ํ๋ ๊ฒ์ด ์ข์.
• ์์: getUserData(), updateProfile()
4. Boolean ๋ณ์๋ ๊ธ์ ๋ฌธ์ผ๋ก: ๋ถ๋ฆฌ์ธ ๋ณ์๋ is, has, can ๊ฐ์ ์ ๋์ฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ธ์ ์ ์ธ ํํ๋ก ๋ช ๋ช .
• ์์: isLoggedIn, hasPermission
5. ํด๋์ค์ ๊ฐ์ฒด๋ช ์ ๋ช ์ฌ๋ก: ํด๋์ค๋ฅผ ์ ์ํ ๋๋ ๋ช ์ฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ทธ ๊ฐ์ฒด๋ฅผ ๋ํ๋ด์ผ ํจ.
• ์์: User, Order
6. ํ์ผ ๋ฐ ๋๋ ํฐ๋ฆฌ ๋ช ๋ช : ์๋ฌธ์ ์ค๋ค์ดํฌ ์ผ์ด์ค(snake_case)๋ ์นด๋ฉ ์ผ์ด์ค๋ฅผ ์ฌ์ฉํ ์ ์์.
• ์์: user_profile.py, productList.js
7. ํ ์คํธ ํจ์๋ช : ํ ์คํธํ ๊ธฐ๋ฅ์ ๋ช ํํ ํฌํจํ๋๋ก ๋ค์ด๋ฐ.
• ์์: testUserLogin_success(), testInvalidInput_throwsError()
Naming Convention(๋ค์ด๋ฐ ์ปจ๋ฒค์ )
: ์ฝ๋์ ์๋ณ์์ ์ด๋ฆ์ ๋ถ์ด๋ ๋ฐฉ๋ฒ๋ค
๋ณ์ ๋ค์ด๋ฐ ๊ท์น์ ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ ์ํ ๊ฒ์ด๋ค!!
๋ค์ด๋ฐ ์ปจ๋ฒค์ ์ ํ์ ํฉ์์ ๋ฐ๋ผ ์ผ๊ด์ฑ์ ์ ์งํ๋ ๊ฒ์ด ๊ฐ์ฅ ์ค์ํ๋ค.
์ด๋ค ๊ท์น์ ์ ํํ๋ ์ฝ๋ ์ ์ฒด์ ๋์ผํ๊ฒ ์ ์ฉํ๋ ๊ฒ์ด ์ข์ ํ์ง์ ์ฝ๋์ ๊ฐ๊น์์ง๋ ๊ธธ์ผ ๊ฒ.