내 코드가 그렇게 이상한가요? 9장 설계의 건전성을 해치는 여러 악마
2025. 3. 4. 20:43ㆍ개발서적 스터디/내 코드가 그렇게 이상한가요?
9.1 데드 코드
- 데드 코드 : 실행되지 않는 조건 내부에 있는 코드 → 발견 즉시 제거
9.2 YAGNI 원칙
- YAGNI : You Aren’t Gonna Need IT (필요 없는 기능을 만들지 말라!)
9.3 매직 넘버
- 설명이 없는 숫자 → 상수를 활용하자
9.4 문자열 자료형에 대한 집착
9.5 전역 변수
- 거대 데이터 클래스도 여러 곳에서 참조하기 때문에 전역 변수와 같은 성질을 가질 수 있음
- 영향 범위가 최소화 되도록 설계하기
9.6 null 문제
- null 은 애초에 초기화하지 않은 메모리 영역에서 값을 읽으면 문제가 되기 때문에 이를 피하기 위해 발명된 것
- 따라서 null 자체는 잘못된 처리를 나타냄
- “무언가를 갖고 있지 않은 상태”, “무언가 설정되지 않은 상태” 는 그 자체로 의미가 있는 상태이므로 null 로 이를 표현하면 안됨
- null을 리턴/전달하지 않는 설계 하기
9.7 예외를 catch 하고서 무시하는 코드
- 원인 분석을 어렵게 만듦
- 문제가 발생했다면 통지/기록 하기
- 이러한 상황을 피하기 위해서 장못된 상태에 대해 로그로 기록, 상위 레이어에 오류를 통지
'개발서적 스터디 > 내 코드가 그렇게 이상한가요?' 카테고리의 다른 글
내 코드가 그렇게 이상한가요? 10장 이름 설계: 구조를 파악할 수 있는 이름 (0) | 2025.03.04 |
---|---|
내 코드가 그렇게 이상한가요? 8장 강한 결합: 복잡하게 얽혀서 풀 수 없는 구조 (0) | 2025.03.04 |
내 코드가 그렇게 이상한가요? 7장 컬렉션: 중첩을 제거하는 구조화 테크닉 (0) | 2025.03.04 |
내 코드가 그렇게 이상한가요? 6장 조건 분기: 미궁처럼 복잡한 분기 처리를 무너뜨리는 방법 (0) | 2025.03.04 |
내 코드가 그렇게 이상한가요? 5장 응집도: 흩어져 있는 것들 (0) | 2025.03.04 |