← ClaudeAtlas

clean-codelisted

클린 코드 원칙 및 적용 가이드를 실행합니다.
excatt/superclaude-plusplus · ★ 13 · Code & Development · score 79
Install: claude install-skill excatt/superclaude-plusplus
# Clean Code Skill 클린 코드 원칙 및 적용 가이드를 실행합니다. ## 네이밍 ### 의도를 드러내는 이름 ```javascript // ❌ Bad const d = 86400; const list = users.filter(u => u.a > 18); // ✅ Good const SECONDS_PER_DAY = 86400; const adultUsers = users.filter(user => user.age > 18); ``` ### 검색 가능한 이름 ```javascript // ❌ Bad setTimeout(fn, 86400000); // ✅ Good const MILLISECONDS_PER_DAY = 24 * 60 * 60 * 1000; setTimeout(fn, MILLISECONDS_PER_DAY); ``` ### 발음 가능한 이름 ```javascript // ❌ Bad const yyyymmdstr = moment().format('YYYY/MM/DD'); // ✅ Good const currentDate = moment().format('YYYY/MM/DD'); ``` ## 함수 ### 작게 만들기 ```javascript // ❌ Bad: 너무 긴 함수 function processOrder(order) { // 100줄의 코드... } // ✅ Good: 작은 함수들로 분리 function processOrder(order) { validateOrder(order); calculateTotal(order); applyDiscounts(order); saveOrder(order); sendConfirmation(order); } ``` ### 하나의 일만 하기 ```javascript // ❌ Bad: 여러 일을 함 function emailClients(clients) { clients.forEach(client => { const record = database.lookup(client); if (record.isActive()) { email(client); } }); } // ✅ Good: 하나의 일만 function emailActiveClients(clients) { clients .filter(isActiveClient) .forEach(email); } function isActiveClient(client) { const record = database.lookup(client); return record.isActive(); } ``` ### 인수 최소화 ```javascript // ❌ Bad: 인수가 많음 function createUser(name, email, age, address, phone, role) {} // ✅ Good: 객체로 전달 function createUser({ name, email, age, address, phone, role }) {} /