-
2021.12.13 기록장TIL 2021. 12. 13. 22:18
oDo
- 책 읽기
Done
- 책 읽기
Weekly goal
- 책 읽기
- 영어 레퍼런스 읽기
- 북마크 읽기, 정리
CleanCode
48p.
switch문
앞서 읽었던 마틴 파울러의 리팩터링에서도 switch문을 하위 클래스나 상태/전략 패턴으로 변경하는 예제가 있었다.
이번 책인 cleanCode에서도 switch문은 코드 스멜이며 변경할 수 있음 변경하라고 하나, 완벽하게 없앨 수는 없다고 이야기하고 있다.
각기 다른 일을 하면 하위 클래스 등으로 반환하되, 그 하위 클래스를 만드는 부분은 불가피하다는 것이다.
그래서 저자는 이 부분( 다형적 객체를 생성하는 코드 ) 딱 한 번만 switch문을 봐준다고 한다.
53p.
메서드의 매개변수는 몇 개가 가장 좋을까? 저자는 가능하면 없는 것이 좋다고 말하지만 그것은 쉽지 않다.
무엇인가를 얻을 때나 조건이 들어갈 때는 매개변수는 필수이다.
저자도 이항, 삼항을 완강히 경멸하지는 않는다. 단, 적절한 이유가 같이 있어야 한다.
예로 draw(buffer, "text")는 버퍼를 이용해 text를 쓴다는 것이다. 이는 읽는 이로 하여금 한 번 더 생각하게 한다.
하지만 다른 예를 보면 drawPoint(0,0) 이는 포인트를 나타내는 x, y를 유추할 수 있다.
위와 같이 의미를 지녀야 한다.
'TIL' 카테고리의 다른 글
2021.12.27 기록장 (0) 2021.12.26 2021.12.20~ 기록장 (0) 2021.12.14 2021.12.11 기록장 (0) 2021.12.11 2021.12.09 기록장 (0) 2021.12.09 2021.12.07~08 기록장 (0) 2021.12.07