반응형

. 1.✅ 의미 있는 변수명 사용
- ❌ a, temp, data
- ✅ userList, isLoggedIn, totalPrice
변수명만 봐도 무엇을 의미하는지 추측 가능해야 합니다.
2. 📦 함수는 하나의 역할만 하도록
- 함수 하나가 너무 많은 일을 하면 유지보수가 어려워집니다.
// 나쁜 예
function handleUser() {
fetchUser();
saveToDB();
sendEmail();
}
// 좋은 예
function fetchUser() { ... }
function saveUserToDB() { ... }
function sendWelcomeEmail() { ... }
**"작고 단순한 함수"**가 가장 좋습니다.
3. 📏 적절한 들여쓰기와 공백
- 들여쓰기와 공백은 눈의 피로를 줄이고 구조를 명확히 해줍니다.
# 나쁜 예
def add(a,b):return a+b
# 좋은 예
def add(a, b):
return a + b
4. 🧼 주석은 왜(why)에 쓰고, 무엇(what)은 코드로
- 주석은 "이 코드가 왜 필요한지" 설명하는 데 사용하세요.
- 무엇을 하는지는 좋은 네이밍과 구조로 충분히 보여줄 수 있어야 합니다.
// ❌ 안 좋은 주석
// add 2 numbers
function add(a, b) {
return a + b;
}
// ✅ 좋은 주석
// 사용자 입력값에 따라 할인 비율을 조정
function applyDiscount(price, userLevel) {
...
}
5. 🔄 반복되는 코드는 함수로 추출
// 나쁜 예
sendEmail('user1@example.com');
sendEmail('user2@example.com');
// 좋은 예
['user1@example.com', 'user2@example.com'].forEach(sendEmail);
6. 📚 일관된 코드 스타일 유지
- 코드 스타일은 팀 규칙 or 린터(예: ESLint, Prettier, Black 등)로 통일하세요.
협업 시엔 팀 스타일 가이드를 따르는 것이 가장 중요합니다.
7. ♻️ 매직 넘버 사용하지 않기
- 숫자 7, 1024, 0.9 등 하드코딩된 값은 의미를 알기 어렵습니다.
// ❌
if (userAge > 18) { ... }
// ✅
const ADULT_AGE = 18;
if (userAge > ADULT_AGE) { ... }
8. 🧪 테스트 가능한 코드 작성
- 함수형 스타일로 만들면 테스트가 쉬워지고, 버그가 줄어듭니다.
// 사이드 이펙트 없는 순수 함수가 좋음
function calculateTotalPrice(cartItems) {
return cartItems.reduce((sum, item) => sum + item.price, 0);
}
9. 📤 파일과 폴더를 목적별로 구조화
/components
└─ Button.jsx
/pages
└─ Home.jsx
/utils
└─ formatDate.js
기능 또는 도메인 기준으로 나누면 규모가 커져도 관리가 쉬움
10. 🧠 자신의 코드를 읽는 입장에서 보기
- 코드 작성 후 **“3일 뒤의 나”**가 이해할 수 있을지 다시 읽어보세요.
- 모호하거나 헷갈리는 부분은 주석 추가 or 이름 변경
🔧 추천 도구 & 라이브러리
| 도구 | 기능 |
| ESLint / TSLint | JavaScript/TypeScript 코드 스타일 자동 검사 |
| Prettier | 코드 자동 포맷팅 |
| Black | Python 코드 정리 도구 |
| SonarLint | 코드 품질 & 보안 분석 |
| EditorConfig | IDE 간 일관된 설정 유지 |
💬 마무리 조언
“코드는 컴퓨터보다 사람이 읽기 쉽게 작성해야 한다.”
– Robert C. Martin (Clean Code 저자)
반응형
'📌 1. 개발 & 프로그래밍 > 💻 프로그래밍 관련 꿀팁' 카테고리의 다른 글
| 🧩“회사에서 가장 많이 쓰는 Spring Boot 설정 TOP 5 – 실무 현장의 설정 사건파일” (0) | 2025.06.04 |
|---|---|
| ⚔️ SI vs SM 개발자 차이 – 제대로 알고 선택하자! (6) | 2025.05.28 |
| 🧠 실력 있는 개발자 = 도메인을 아는 사람 (1) | 2025.05.18 |
| 🧠 현업 개발자가 진짜로 써먹는 ‘알면 좋은 기술/팁 10선’ (1) | 2025.05.13 |
| 🕵️♂️ 코난도 몰랐던 ‘회사에서 코드를 왜 이렇게 짜냐고요?’라는 말의 진짜 의미 (0) | 2025.05.12 |