[Clean Code] Chapter 10: Classes

DAY9 : Chapter10 Unit Tests

오늘읽은 범위: ~ 10장. 클래스

책에서 기억하고 싶은 내용

CLASSES SHOULD BE SMALL
Isolating from Change (Loose Coupling – Dependency Invertion Principle)

  • public 변수가 필요한 경우는 거의 없다
  • class는 작아야한다!
  • SRP Single Responsibility Principle
    • 클래스나 모듈은 변경할 이유가 단 하나만 있어야한다.
  • High Cohesion
    • 클래스는 인스턴스 변수 수가 저거야한다.
    • 모든 인스턴수 변수를 메서드마다 사용하는 클래스는 응집도가 높다
    • 응집도가 높다는 말은 클래스에 속한 메서드와 변수가 서로 의존하며 논리적인 단위로 묶인다는 의미기 때문이다
  • 변경하기 쉬운 Class
    • 새 기능을 수정하거나 변경 할 때 건드릴 코드가 최소인 시스템 구조가 바람직하다
    • 이상적인 시스템이라면 새 기능을 추가할때 시스템을 확장할 뿐 기존 코드를 변경하지는 않는다
  • 변경으로부터의 격리
    • 인터페이스와 추상클래스를 사용해 구현이 미치는 영향을 격리

소감

  • 시스템에 새로운 기능을 추가할때 추가 구현 즉, 시스템확장을 고려하고 legacy 코드는 그대로 유지하는 것을 중요하게 생각하자

#노마드코더
#북클럽
#노개북