책너두 (도메인 주도 설계로 시작하는 마이크로서비스 개발) 48일차 (~406p)

요약

  • 11장. 에필로그
    • 아키텍처 영역
    • 개발 프로세스 영역
    • 설계 영역
    • 개발 영역

메모

11장. 에필로그

  • 소프트웨어 분야는 매우 빠르게 변화하기 때문에 세부 기술 영역에만 집중하면 그 변화의 본질을 파악하기 힘듦.
    • 개별 지식을 아는 것에 앞서 변화 흐름을 이해하기위해 노력해야 함.
  • 클라우드 환경이 아닌 레거시 환경의 모노리스 애플리케이션을 오랜 기간 동안 접했던 개발자는 먼저 이러한 변화 흐름을 반드시 이해하는 것이 중요함.
    • 지금껏 여러 서비스를 봤고, 이 기술들이 어떤 기술로 대체될 수 있는지를 알기 위해서는 기술 진화의 흐름과 전체 맥락을 봐야 함.

아키텍처 영역

  • 강 결합 → 느슨한 결합의 유연한 아키텍처로의 변화를 이해함.
  • 마이크로서비스 아키텍처를 외부, 내부로 구분하여 고민함.
  • 애플리케이션 패턴으로 이벤트 기반 아키텍처, SAGA, CQRS 패턴을 이해함.
  • 다양한 클라우드 서비스를 자세히 알 필요가 있음.
    • ex) 쿠버네티스
  • 애플리케이션 관점에서 유연한 시스템을 만들기 위한 레이어드 아키텍처, 헥사고날 아키텍처, 클린 아키텍처를 이해하고 바람직한 마이크로서비스 내부 구조를 정의함.

개발 프로세스 영역

  • 점진 반복적인 애자일 개발 프로세스에서의 마이크로서비스 설계 및 개발 공정을 이해함.
    • 애자일 방법론 중, 가장 대중적인 XP, 스크럼, 칸반에 대해 꼭 살펴봐야 함.

설계 영역

  • 도메인 주도 설계를 중심으로 마이크로서비스를 식별하고, 서비스 내부의 도메인 모델을 설계하는 방법을 이해함.
    • 애플리케이션의 목적은 비즈니스 문제 영역의 복잡성을 통제함으로써 비즈니스 변화에 빨리 대응할 수 있어야 함.
    • 따라서 도메인의 본질에 집중하고 기술에 유연해야 함. → 애플리케이션 개발자에게 필요한 역량임.

개발 영역

  • 마이크로 서비스 개발 사례를 살펴보며 도메인 모델 중심, 이벤트 기반, 스프링 부트 JHipster 이용한 마이크로서비스를 살펴봄.
  • 빌드 & 배포에 관련된 내용을 보며 클라우드 환경에서 마이크로서비스 개발자에게 필요한 추가 역량을 확인함.
    • 이 책에서 다루지 않은 단위 테스트 및 테스트 자동화 기법도 학습하길 바람.

댓글

Designed by JB FACTORY