Step 3: 변수 네이밍

변수는 명사로, 불리언은 is/has/can 📦

🎯 핵심 규칙

1. 변수 = 명사 📦

변수는 "무언가를 담는 상자"
→ 명사로 이름 짓기

2. 불리언 = is/has/can ✅❌

true/false 값 → is, has, can으로 시작

3. 복수형 = List 또는 s 📚

배열 → List 붙이거나 복수형(s)

📦 1. 일반 변수: 명사 사용

❌ 나쁨 (동사)

let calculate = 100;
let update = "홍길동";
let get = true;

✅ 좋음 (명사)

let price = 100;
let userName = "홍길동";
let status = true;

✨ 좋은 명사 예시

userName totalPrice messageText inputValue currentPage maxCount errorMessage buttonElement userAge

✅❌ 2. 불리언: is/has/can

❌ 나쁨

let login = true;
let visible = false;
let complete = true;

뭘 묻는 건지 불명확

✅ 좋음

let isLoggedIn = true;
let isVisible = false;
let isComplete = true;

질문 형태로 명확!

is - "~인가?"

isLoggedIn isVisible isActive isValid isLoading isEmpty

has - "~를 가지고 있는가?"

hasError hasData hasPermission hasChildren hasValue hasChanged

can - "~할 수 있는가?"

canEdit canDelete canSubmit canAccess canUpload canProceed

📚 3. 복수형: List 또는 s

❌ 나쁨

let user = ["홍길동", "김철수"];
let item = [1, 2, 3];
let data = ["사과", "바나나"];

단수형인지 복수형인지 불명확

✅ 좋음

let userList = ["홍길동", "김철수"];
let items = [1, 2, 3];
let fruitList = ["사과", "바나나"];

배열임을 명확히 표시

✨ 복수형 패턴

List 붙이기 (명확)

userList
todoList
productList

복수형 s (간결)

users
todos
products

💡 둘 다 좋음! 프로젝트에서 하나로 통일하기

🏃 실습

아래 변수들에 더 좋은 이름을 붙여보세요:

1. let data = "홍길동";
2. let flag = true; // 로그인 여부
3. let list = [1, 2, 3, 4, 5];
4. let status = false; // 로딩 중인지
5. let temp = ["사과", "바나나", "오렌지"];
6. let check = true; // 권한이 있는지
💡 정답 보기
1. let userName = "홍길동";
2. let isLoggedIn = true;
3. let numberList = [1, 2, 3, 4, 5]; 또는 let numbers = [...];
4. let isLoading = false;
5. let fruitList = ["사과", "바나나", "오렌지"]; 또는 let fruits = [...];
6. let hasPermission = true; 또는 let canAccess = true;

💡 Semantic Compression (의미 압축)

좋은 이름 = 정보가 압축된 이름

❌ 나쁨: 정보 부족

let x = 5;

→ x가 뭔지 모름

✅ 좋음: 정보 압축

let maxAttempts = 5;

→ 최대 시도 횟수임을 알 수 있음

✨ 목표

변수 이름만 보고 "무엇을 담고 있는지" 알 수 있게!

📌 핵심 정리