구매문의 및 도서상담은 031-944-3966(매장)으로 문의해주세요.
매장전집은 전화 혹은 매장방문만 구입 가능합니다.
지은이 : 마크 리처드
경험이 풍부한 실무 소프트웨어 아키텍트이자, 개발자가 소프트웨어 아키텍트가 되는 여정을 돕는 무료 웹사이트 ‘DeveloperToArchitect.com’ 의 창립자입니다. 그는 1983년부터 소프트웨어 산업에 종사해 왔으며, 애플리케이션, 통합 및 엔터프라이즈 아키텍처에 대한 상당한 경험과 전문성을 보유하고 있습니다.
지은이 : 닐 포드
종단 간 소프트웨어 개발과 배포를 전문으로하는 글로벌 IT 컨설팅 회사 ‘ThoughtWorks’의 이사이자 소프트웨어 아키텍트, 밈 랭글러(meme wrangler)입니다. 또한 그는 많은 애플리케이션, 기사, 비디오 프레젠테이션의 설계자이자 개발자입니다.
지은이 : 라주 간디
아키텍트이자 컨설턴트, 저자, 교사로 전 세계의 컨퍼런스에서 정기적으로 초청받는 연사입니다. 그는 매사를 간단하게 유지해야 한다고 믿으며, 항상 ‘어떻게’보다는 ‘왜’를 이해하고 설명하는 접근 방식을 취합니다.
Chapter 00 들어가며 | 이 책을 읽는 방법
_이 책의 독자
_이 책이 이렇게 된 이유
_이 책의 구성
_여러분의 두뇌를 정복하는 방법
_일러두기
_테크니컬 리뷰어
_감사의 글
Chapter 01 소프트웨어 아키텍처 쉽게 이해하기 | 시작하기
_건축 계획과 소프트웨어 아키텍처
_소프트웨어 아키텍처 차원들
_차원들의 퍼즐 맞추기
_첫 번째 차원: 아키텍처 특성
_두 번째 차원: 아키텍처 결정
_세 번째 차원: 논리적 컴포넌트
_네 번째 차원: 아키텍처 스타일
_설계 관점
_아키텍처 관점
_아키텍처와 설계 사이
_여러분이 내린 결정은 스펙트럼에서 어디에 위치하나요?
_전략적 vs. 전술적
_높은 수준 vs. 낮은 수준의 노력
_중대한 vs. 덜 중대한 트레이드오프
_모두 합하기
_해냈습니다!
Chapter 02 아키텍처 특성 | 네 역량을 알라
_래프터 유발하기
_아키텍처 특성은 무엇인가요?
_아키텍처 특성 정의하기
_아키텍처 특성은 비도메인 설계 고려사항을 명시한다
_아키텍처 특성은 아키텍처 구조에 영향을 준다
_오버엔지니어링을 막기 위해 아키텍처 특성을 제한한다
_명시적과 암묵적 기능을 고려하세요
_’~성’의 국제 동물원
_프로세스 아키텍처 특성
_구조적 아키텍처 특성
_운영 아키텍처 특성
_아키텍처 공통 특성
_문제 도메인에서 아키텍처 특성 찾기
_환경 인식을 통해 아키텍처 특성 도출하기
_전체적인 도메인 지식을 활용하여 아키텍처 특성 도출하기
_복합 아키텍처 특성
_우선순위는 맥락을 따릅니다
_해석에 빠지다
_아키텍처 특성과 논리적 컴포넌트
_도메인 고려사항과 아키텍처 특성 사이에서 균형 잡기
_아키텍처 특성의 개수 제한하기
Chapter 03 소프트웨어 아키텍처의 두 가지 법칙 | 모든 것은 트레이드오프다
_스니커즈 앱으로 시작합니다
_지금까지 무엇을 알았나요?
_하위 서비스와 통신하기
_트레이드오프 분석하기
_트레이드오프 분석: 큐
_트레이드오프 분석: 토픽
_소프트웨어 아키텍처의 제1법칙
_항상 트레이드오프로 돌아옵니다
_아키텍처 결정하기
_아키텍처를 결정하는 다른 요소는 무엇인가요?
_소프트웨어 아키텍처의 제2법칙
_아키텍처 결정 기록(ADR)
_ADR 작성하기: 올바른 제목 선택하기
_ADR 작성하기: 여러분의 상태는?
_ADR 작성하기: 맥락 설정하기
_ADR 작성하기: 결정 전달하기
_ADR 작성하기: 결과 고려하기
_ADR 작성하기: 거버넌스 보장하기
_ADR 작성하기: 노트로 마무리하기
_ADR의 이점
_[투 매니 스니커즈]는 성공했다
Chapter 04 논리적 컴포넌트 | 구성 요소
_논리적 컴포넌트 다시 보기
_모험적인 경매가 온라인으로 진행됩니다
_논리적 아키텍처 vs. 물리적 아키텍처
_논리적 아키텍처 만들기
_1단계: 초기 핵심 컴포넌트 식별하기
_워크플로우 접근법
_액터/액션 접근법
_엔티티 함정
_2단계: 요구사항을 컴포넌트에 할당하기
_3단계: 역할과 책임 분석하기
_응집력 유지하기
_4단계: 아키텍처 특성 분석하기
_입찰 수집 컴포넌트
_컴포넌트 결합
_내부 결합
_외부 결합
_결합도 측정
_강하게 결합된 시스템
_디미터의 법칙 적용하기
_균형 잡기
_컴포넌트에 대한 마무리
Chapter 05 아키텍처 스타일 | 분류와 철학
_아키텍처 스타일은 정말 다양합니다
_아키텍처 스타일의 세계
_기술 관점 vs. 도메인 관점
_배포 모델: 모놀리식 vs. 분산
_모놀리식 배포 모델: 장점
_모놀리식 배포 모델: 단점
_분산 배포 모델: 장점
_분산 배포 모델: 단점
_이제 마무리입니다!
Chapter 06 레이어드 아키텍처 | 관심사 분리하기
_[난&팝]: 신생 레스토랑 요구사항 정리하기
_『헤드 퍼스트 디자인 패턴(개정판)』 다시 읽기
_MVC 레이어화
_레이어링하기
_레이어를 코드로 변환하기
_도메인, 컴포넌트와 레이어들
_레이어드 아키텍처를 선택하는 이유
_레이어, 현실 세계를 만나다: 물리적 아키텍처
_물리적 아키텍처의 트레이드오프
_도메인 변경에 대한 마지막 주의 사항
_레이어드 아키텍처의 슈퍼파워
_레이어드 아키텍처의 크립토나이트
_레이어드 아키텍처 등급표
_마무리하기
Chapter 07 모듈러 모놀리스 | 도메인 중심으로 생각하기
_모듈러 모놀리스?
_도메인 변경의 어려움
_왜 모듈러 모놀리스인가요?
_코드를 보여주세요!
_모듈을 모듈러하게
_모듈성을 데이터베이스까지 확장하기
_조인을 주의하기
_모듈러 모놀리스의 슈퍼파워
_모듈러 모놀리스의 크립토나이트
_모듈러 모놀리스 등급표
_[난&팝]에서 피자를 배달합니다!
Chapter 08 마이크로커널 아키텍처 | 맞춤형으로 제작하기
_[고잉 그린]의 혜택
_마이크로커널 아키텍처의 두 부분
_‘마이크로커널-성’의 스펙트럼
_기기 평가 서비스 코어
_캡슐화된 플러그인 vs. 분산된 플러그인
_플러그인 통신
_플러그인 계약
_[고잉 그린]이 친환경을 실천하다
_마이크로커널의 슈퍼파워
_마이크로커널의 크립토나이트
_마이크로커널 등급표
_마무리하기
Chapter 09 직접 해보기 | [트립이지] 여행 앱
_여행을 더 쉽게 만들기
_[트립이지] 사용자 워크플로우
_아키텍처 계획하기
_아키텍트의 로드맵
_1단계: 아키텍처 특성 식별하기
_2단계: 논리적 컴포넌트 식별하기
_3단계: 아키텍처 스타일 선택하기
_4단계: 여러분의 결정을 문서화하기
_5단계: 아키텍처 다이어그램 그리기
_옳은 답도 틀린 답도 없습니다
Chapter 10 마이크로서비스 아키텍처 | 조금씩 단계별로
_몸은 괜찮으세요?
_마이크로서비스란?
_이건 나만의 데이터입니다
_마이크로서비스에서 ‘마이크로’는 얼마나 작은 걸까요?
_세분화 분해 인자
_왜 마이크로서비스를 더 작게 만들어야 할까요?
_세분화 결합 인자
_왜 마이크로서비스를 더 크게 만들어야 할까요?
_모두 균형에 관한 것입니다
_기능 공유하기
_공유 서비스로 코드 재사용하기
_공유 라이브러리로 코드 재사용하기
_워크플로우 관리하기
_오케스트레이션: 마이크로서비스 지휘하기
_코레오그래피: 춤을 춥시다
_마이크로서비스 아키텍처의 슈퍼파워
_마이크로서비스 아키텍처의 크립토나이트
_마이크로서비스 등급표
_마무리하기
Chapter 11 이벤트 기반 아키텍처 | 비동기 모험
_너무 느려요
_속도 높이기
_[데어 나일]은 어느 때보다 빠르게 흐릅니다
_이벤트란 무엇인가요?
_이벤트 vs. 메시지
_시작 이벤트와 파생 이벤트
_누구 듣고 있나요?
_비동기 통신
_파이어 앤드 포겟
_비동기가 최고예요
_동기 방식이 최고예요
_데이터베이스 구성
_모놀리식 데이터베이스
_도메인 분할 데이터베이스
_서비스별 데이터베이스
_EDA vs. 마이크로서비스
_하이브리드: 이벤트 기반 마이크로서비스
_이벤트 기반 아키텍처의 슈퍼파워
_이벤트 기반 아키텍처의 크립토나이트
_이벤트 기반 아키텍처 등급표
_모두 모으기
_마무리하기
Chapter 12 직접 해보기 | 지식 테스트
_메이크 더 그레이드를 환영합니다
_학생 시험 워크플로우
_아키텍처 계획하기
_아키텍처의 로드맵
_1단계: 아키텍처 특성 식별하기
_2단계: 논리적 컴포넌트 식별하기
_3단계: 아키텍처 스타일 선택하기
_4단계: 여러분의 결정을 문서화하기
_5단계: 아키텍처 다이어그램 그리기
_옳은 답도 틀린 답도 없습니다
부록 A: 미처 다루지 못한 것들 | 다루지 못한 여섯 가지 주요 주제
#1 코딩 아키텍트
#2 아키텍트에 대한 기대
#3 아키텍처의 소프트 스킬
#4 다이어그램 기법
#5 지식의 깊이 vs. 넓이
#6 카타로 아키텍처 연습하기
카타를 수행하는 방법
도서 DB 제공 - 알라딘 인터넷서점 (www.aladin.co.kr)