16. 추측성 일반화(Speculative Generality)
YAGNI(You Aren't Gonna Need It)
현재 필요하지 않는 기능은 추가하지 말아라(오바하지 말자)
3대 원칙 중 하나(아래는 나머지 2개)
KISS(Keep It Simple, Stupid)
DRY(Dont Repeat YourSelf)
17. 긴 매개변수 목록 (Long Parameter List)
해결법
- 질의 함수로 바꾸기
- 객체를 통째로 넘기기
- 플래그 인수 제거 (bool 변수 등)
if - else문 안에서 다른 로직을 수행하면 이를 함수로 만들어야한다.
- 클래스로 묶기
18. 거대한 클래스(Large Class)
한 클래스가 너무 많은 책임을 가지면, 코드를 복잡하게 만들고 응집력도 떨어질 수 있다.
19. 메시지 체인(Message Chain)
클래스끼리 강한 결합은 피하자 (결합도를 낮추자)
클라이언트 코드에서 객체의 내부 구조에 대해 많이 아는것은 좋지 않다.
20. 서로 다른 인터페이스의 대안 클래스들
인터페이스, 추상클래스
같은 작업을 하는 클래스의 요소들은 인터페이스, 추상클래스로 빼자
코드가 유연해지고 추가, 삭제가 용이해진다.
'내일배움캠프(Unity)' 카테고리의 다른 글
TIL (0) | 2023.12.28 |
---|---|
TIL (0) | 2023.12.27 |
UI 특강 정리 (0) | 2023.12.25 |
심화 주차 강의 정리 (0) | 2023.12.24 |
숙련 주차 3D 강의 정리 (0) | 2023.12.23 |