본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

엔터프라이즈 애플리케이션 아키텍처 패턴 상세페이지

컴퓨터/IT 개발/프로그래밍

엔터프라이즈 애플리케이션 아키텍처 패턴

엔터프라이즈 아키텍처 구축을 위한 객체 지향 설계의 원리와 기법
소장종이책 정가35,000
전자책 정가20%28,000
판매가28,000
엔터프라이즈 애플리케이션 아키텍처 패턴 표지 이미지

엔터프라이즈 애플리케이션 아키텍처 패턴작품 소개

<엔터프라이즈 애플리케이션 아키텍처 패턴> 엔터프라이즈 애플리케이션 개발 분야는 새로운 기반 기술이 등장함에 따라 함께 혜택을 받으며 크게 발전했다. 덕분에 이 분야에도 자바나 .NET과 같은 다중 계층 객체지향 플랫폼이 표준화됐다. 이러한 새로운 도구와 기술은 강력한 애플리케이션을 구축할 수 있는 기반이지만 제대로 구현하기는 어렵다. 엔터프라이즈 애플리케이션을 개발할 때 자주 겪는 문제 중에는 숙련된 객체지향 개발자라면 알고 있어야 할 아키텍처에 대한 경험 부족 때문에 유발되는 것들이 많다.

『엔터프라이즈 애플리케이션 아키텍처 패턴』은 엔터프라이즈 애플리케이션 개발자가 맞닥뜨리는 까다로운 과제를 극복하기 위한 지식을 전수하기 위해 쓰여졌다. 유명한 객체지향 설계자이자 저자인 마틴 파울러는 스몰토크와 코바에서 시작해 현재의 자바와 .NET까지 핵심 기술은 계속 진화하지만 일상적이고 공통적인 문제는 근본적으로 동일한 설계 아이디어를 적용해 해결할 수 있다는 사실을 깨달았다. 그리고 이러한 기본 아이디어를 바탕으로 전문적인 여러 공동 저자 그룹의 도움을 받아 40가지 공통적인 해결책을 패턴으로 만들어냈다. 그리고 이러한 해결책을 어떠한 엔터프라이즈 애플리케이션 플랫폼에도 적용할 수 있게 한 권의 유용한 핸드북으로 정리하는 데 성공했다.

이 책은 사실 두 권의 책을 한 권으로 묶었다고 할 수 있다. 이 책의 앞부분은 엔터프라이즈 애플리케이션 개발에 대한 간단한 자습서 역할을 하며, 독자가 처음부터 순서대로 읽으면서 이 책의 주요 주제를 개략적으로 파악할 수 있게 구성됐다. 그리고 더 많은 비중을 차지하는 뒷부분은 패턴 자체에 대한 아주 자세한 참조서 역할을 한다. 각 패턴에는 사용법과 구현 정보는 물론 자바나 C#으로 작성된 자세한 코드 예제를 함께 실었으며 설명하는 개념을 시각적으로 이해하는 데 도움이 되는 UML 다이어그램도 다양하게 준비했다.

이 책을 통해 엔터프라이즈 애플리케이션을 개발하면서 중요한 설계상의 결정을 내리는 데 필요한 지식과 함께 개발 과정에 사용할 수 있는 입증된 패턴을 체계적으로 이해할 수 있을 것이다.

★ 이 책에서 다루는 내용 ★

- 엔터프라이즈 애플리케이션을 여러 계층으로 분할하는 방법
- 비즈니스 논리를 구성하는 여러 주요 방식
- 객체와 관계형 데이터베이스 간 매핑에 대한 심도 깊은 논의
- 모델 뷰 컨트롤러를 통한 웹 프레젠테이션 운영
- 여러 트랜잭션에 걸친 데이터의 동시성을 처리하는 방법
- 분산 객체 인터페이스 설계


저자 소개

마틴 파울러 (Martin Fowler)
마틴 파울러는 지난 십여 년 이상 까다로운 비즈니스 문제에 객체를 적용해 해결하는 방법을 전문적으로 연구한 독립 컨설턴트다. 특히 보건, 금융거래, 기업재정 등 다양한 분야의 시스템에 대한 컨설팅을 수행했으며 주요 고객사로는 크라이슬러, 시티뱅크, 영국 국립보건원, 앤더슨 컨설팅, 넷스케이프 커뮤니케이션 등이 있다. 또한 파울러는 다양한 행사에서 객체, UML(Unified Modeling Language), 패턴 등의 주제에 대한 강연자로 꾸준히 활동하고 있다.

목차

▣ 들어가며

아키텍처
엔터프라이즈 애플리케이션
엔터프라이즈 애플리케이션의 유형
성능에 대한 고려
패턴
패턴의 구조
이러한 패턴의 한계

[01부] 이야기

▣ 01장: 계층화
엔터프라이즈 애플리케이션에서 계층의 발전
세 가지 주요 계층
계층이 실행될 위치 선택

▣ 02장: 도메인
선택
서비스 계층

▣ 03장: 관계형
아키텍처 패턴
동작 문제
데이터 읽기
구조적 매핑 패턴
- 관계 매핑
- 상속
매핑
- 이중 매핑
메타데이터 사용
데이터베이스 연결
기타 주의사항
참고 자료

▣ 04장: 웹 프레젠테이션
뷰 패턴
입력 컨트롤러 패턴
참고 자료

▣ 05장: 동시성
동시성 문제
실행 컨텍스트
격리와 불변성
낙관적 동시성 제어와 비관적 동시성 제어
- 일관성 없는 읽기 예방
- 교착 상태
트랜잭션
- ACID
- 트랜잭션 리소스
- 활동성을 위한 트랜잭션 격리성 저하
- 비즈니스 트랜잭션과 시스템 트랜잭션
오프라인 동시성 제어를 위한 패턴
애플리케이션 서버 동시성
참고 자료

▣ 06장: 세션 상태
상태 비저장의 가치
세션 상태
세션 상태를 저장하는 방법

▣ 07장: 분산 전략
분산 객체의 매력
원격 및 로컬 인터페이스
분산이 필요한 상황
분산 경계를 사용한 작업
분산을 위한 인터페이스

▣ 08장: 종합
도메인 계층으로 시작하기
데이터 원본 계층
- 트랜잭션 스크립트(115)의 데이터 원본
- 테이블 모듈(132)의 데이터 원본
- 도메인 모델(122)의 데이터 원본
프레젠테이션 계층
몇 가지 기술 관련 조언
- 자바와 J2EE
- .NET
- 저장 프로시저
- 웹 서비스
다른 계층화 체계

[02부] 패턴

▣ 09장: 도메인 논리 패턴
트랜잭션 스크립트
- 작동 원리
- 사용 시점
- 수익 인식 문제
- 예제: 수익 인식(자바)
도메인 모델
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 수익 인식(자바)
테이블 모듈
- 작동 원리
- 사용 시점
- 예제: 테이블 모듈을 이용한 수익 인식(C#)
서비스 계층
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 수익 인식(자바)

▣ 10장: 데이터 원본 아키텍처 패턴
테이블 데이터 게이트웨이
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 인물 게이트웨이(C#)
- 예제: ADO.NET 데이터 집합 사용(C#)
행 데이터 게이트웨이
- 작동 원리
- 사용 시점
- 예제: 인물 레코드(자바)
- 예제: 도메인 객체를 위한 데이터 홀더(자바)
활성 레코드
- 작동 원리
- 사용 시점
- 예제: 간단한 인물 클래스(자바)
데이터 매퍼
- 작동 원리
- 사용 시점
- 예제: 간단한 데이터베이스 매퍼(자바)
- 예제: 검색기 분리(자바)
- 예제: 비어 있는 객체 만들기(자바)

▣ 11장: 객체-관계형 동작 패턴
작업 단위
- 작동 원리
- 사용 시점
- 예제: 객체 등록을 사용하는 작업 단위(자바)
식별자 맵
- 작동 원리
- 사용 시점
- 예제: 식별자 맵의 메서드(자바)
지연 로드
- 작동 원리
- 사용 시점
- 예제: 지연 초기화(자바)
- 예제: 가상 프락시(자바)
- 예제: 값 홀더 사용(자바)
- 예제: 고스트 사용(C#)

▣ 12장: 객체-관계형 구조 패턴
식별자 필드
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 정수 키(C#)
- 예제: 키 테이블 사용(자바)
- 예제: 복합 키 사용(자바)
외래 키 매핑
- 작동 원리
- 사용 시점
- 예제: 단일 값 참조(자바)
- 예제: 다중 테이블 검색(자바)
- 예제: 참조의 컬렉션(C#)
연관 테이블 매핑
- 작동 원리
- 사용 시점
- 예제: 직원과 기술(C#)
- 예제: 직접 SQL 사용(자바)
- 예제: 여러 직원을 쿼리 하나로 처리(자바)
의존 매핑
- 작동 원리
- 사용 시점
- 예제: 앨범과 트랙(자바)
포함 값
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 간단한 값 객체(자바)
직렬화 LOB
- 작동 원리
- 사용 시점
- 예제: 부서 계층을 XML로 직렬화(자바)
단일 테이블 상속
- 작동 원리
- 사용 시점
- 예제: 선수 정보를 단일 테이블로 매핑(C#)
- 데이터베이스에서 객체 로드
클래스 테이블 상속
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 선수의 상속 구조 매핑(C#)
구현 테이블 상속
- 작동 원리
- 사용 시점
- 예제: 구현 테이블 상속(C#)
상속 매퍼
- 작동 원리
- 사용 시점

▣ 13장: 객체-관계형 메타데이터 매핑 패턴
메타데이터 매핑
- 작동 원리
- 사용 시점
- 예제: 메타데이터와 리플렉션 사용(자바)
쿼리 객체
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 간단한 쿼리 객체(자바)
리포지토리
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 인물의 의존자 검색(자바)
- 예제: 리포지토리 전략의 교체(자바)

▣ 14장: 웹 프레젠테이션 패턴
모델 뷰 컨트롤러
- 작동 원리
- 사용 시점
페이지 컨트롤러
- 작동 원리
- 사용 시점
- 예제: 서블릿 컨트롤러와 JSP 뷰를 사용한 간단한 표시(자바)
- 예제: JSP를 처리기로 사용(자바)
- 예제: 코드 숨김을 이용한 페이지 처리기(C#)
프런트 컨트롤러
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 간단한 디스플레이(자바)
템플릿 뷰
- 작동 원리
- 사용 시점
- 예제: 별도의 컨트롤러와 함께 JSP를 뷰로 사용(자바)
- 예제: ASP.NET 서버 페이지(C#) 380
변환 뷰
- 작동 원리
- 사용 시점
- 예제: 간단한 변환(자바)
2단계 뷰
- 작동 원리
- 사용 시점
- 예제: 2단계 XSLT(XSLT)
- 예제: JSP와 커스텀 태그(자바)
애플리케이션 컨트롤러
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 상태 모델 애플리케이션 컨트롤러(자바)

▣ 15장: 분산 패턴
원격 파사드
- 작동 원리
- 사용 시점
- 예제: 자바 세션 빈을 원격 파사드로 사용(자바)
- 예제: 웹 서비스(C#)
데이터 전송 객체
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 앨범에 대한 정보 전송(자바)
- 예제: XML을 사용한 직렬화(자바)

▣ 16장: 오프라인 동시성 패턴
낙관적 오프라인 잠금
- 작동 원리
- 사용 시점
- 예제: 도메인 계층과 데이터 매퍼(174)(자바)
비관적 오프라인 잠금
- 작동 원리
- 사용 시점
- 예제: 간단한 잠금 관리자(자바)
굵은 입자 잠금
- 작동 원리
- 사용 시점
- 예제: 공유된 낙관적 오프라인 잠금(441)(자바)
- 예제: 공유된 비관적 오프라인 잠금(452)(자바)
- 예제: 루트 낙관적 오프라인 잠금(441)(자바)
암시적 잠금
- 작동 원리
- 사용 시점
- 예제: 암시적인 비관적 오프라인 잠금(452)(자바)

▣ 17장: 세션 상태 패턴
클라이언트 세션 상태
- 작동 원리
- 사용 시점
서버 세션 상태
- 작동 원리
- 사용 시점
데이터베이스 세션 상태
- 작동 원리
- 사용 시점

▣ 18장: 기본 패턴
게이트웨이
- 작동 원리
- 사용 시점
- 예제: 특정 메시징 서비스에 대한 게이트웨이(자바)
매퍼
- 작동 원리
- 사용 시점
계층 상위 형식
- 작동 원리
- 사용 시점
- 예제: 도메인 객체(자바)
분리 인터페이스
- 작동 원리
- 사용 시점
레지스트리
- 작동 원리
- 사용 시점
- 예제: 싱글턴 레지스트리(자바)
- 예제: 스레드로부터 안전한 레지스트리(자바)
값 객체
- 작동 원리
- 사용 시점
금액
- 작동 원리
- 사용 시점
- 예제: 금액 클래스(자바)
특수 사례
- 작동 원리
- 사용 시점
- 참고 자료
- 예제: 간단한 null 객체(C#)
플러그인
- 작동 원리
- 사용 시점
- 예제: ID 생성기(자바)
서비스 스텁
- 작동 원리
- 사용 시점
- 예제: 소비세 서비스(자바)
레코드 집합
- 작동 원리
- 사용 시점


리뷰

구매자 별점

0.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

0명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전