Home [Clean code] Ch11. System
Post
Cancel

[Clean code] Ch11. System

Ch11. System

  • 자바를 사용하지 않아서 그런지 아니면 설계를 잘 몰라서 그런지 쉽게 이해하기 어려운 챕터였음

  • 적절한 추상화와 모듈화 매우 중요

시스템 제작(construction)과 시스템 사용(use)를 분리하라

  • 관심사 분리
  • Main 분리
    • 생성과 관련된 코드는 모두 main or main이 호출하는 모듈로 옮김
    • 나머지 시스템은 모든 객체가 생성되었고 모든 의존성이 연결되었다고 가정
  • 팩토리 패턴
    • 팩토리 interface를 구현해서 한 종류의 객체를 만드는 것
    • 다음 챕터에서 나오는 템플릿 메소드 패턴과 유사?

      image

  • 의존성 주입
    • 하나의 객체가 다른 객체의 의존성을 제공하는 테크닉
    • 스프링
      • 객체 간의 의존성(객체 간의 관례)을 객체 내부에서 직접 해주는 대신, 외부에서 객체를 생성해서 넣어주는 방식

    image

확장

  • EJB
  • AOP
    • 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하겠다는 것
    • aspect 모듈화하고 핵심적인 비즈니스 로직에서 분리해서 재사용하게다는 것이 AOP의 취지
  • POJO

TDD 구축

의사 결정 최적화

  • 가능한 마지막 순간까지 결정을 미루는 방법

도메인 특화 언어?

This post is licensed under CC BY 4.0 by the author.