본문내용 바로가기
MD의선택 무료배송 이벤트 소득공제

자바 API 디자인 자바 프레임워크 아키텍트가 알려주는 API 설계 이론과 실제

위키북스 IT Leaders 시리즈 22
야로슬라프 툴라흐 지음 | 이대엽 옮김 | 위키북스 | 2015년 05월 12일 출간
클로버 리뷰쓰기
  • 정가 : 35,000원
    판매가 : 31,500 [10%↓ 3,500원 할인]
  • 혜택 :
    [기본적립] 1750원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2,000원 추가적립 안내 [회원혜택] 회원 등급 별, 3만원 이상 구매 시 2~4% 추가적립 안내 [리뷰적립] 리뷰 작성 시 e교환권 최대 300원 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    09월 23일 출고 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내 바로드림 혜택
    휴일에는 바로드림 픽업으로 더 빨리 받아 보세요. 바로드림 혜택받고 이용하기

이 책의 이벤트

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
  • 책을 통해 성장해나가는 개발자를 응원합니다.
    2017.06.22 ~ 2025.07.31
상품상세정보
ISBN 9788998139964(8998139960)
쪽수 536쪽
크기 188 * 240 * 24 mm /1018g 판형알림
이 책의 원서/번역서 Practical API Design / Tulach, Jaroslav

책소개

이 책이 속한 분야

[자바 API 디자인]은 넷빈즈 프로젝트의 아키텍트가 10년 넘게 API를 설계, 개발, 유지보수하면서 겪은 경험을 고스란히 담은 책이다. 책에서는 API란 무엇인지, API를 제작하는 이유와 시점, 훌륭한 API를 설계하기 위한 기초 이론, 모든 프로그래밍 언어(특히 객체 지향 언어)에 적용 가능한 API 설계 패턴, API 최적화와 테스트 등을 다루고 있다.

목차

[1부] 이론과 정당성

▣ 1장: 현대 소프트웨어 구축의 예술
___합리주의, 경험주의, 무지
___지금까지의 소프트웨어의 진화
___거대한 기반 요소
___아름다움, 진리, 우아함
___더 무지해져라!

▣ 2장: API를 만드는 이유
___분산 개발
___애플리케이션 모듈화
___비선형적인 버전 관리
___중요한 것은 의사소통이다
___경험적 프로그래밍
___첫 번째 버전은 늘 쉽다

▣ 3장: 훌륭한 API를 결정하는 요소
___메서드와 필드 시그너처
___파일과 파일의 내용
___환경변수와 명령줄 옵션
___API로서의 텍스트 메시지
___프로토콜
___동작 방식
___I18N 지원과 L10N 메시지
___넓은 의미의 API
___API의 품질을 검사하는 법

▣ 4장: 시시각각 변하는 표적
___첫 번째 버전은 결코 완벽하지 않다
___하위 호환성
___유스 케이스 지향의 중요성
___API 리뷰
___API의 생명주기
___점진적 향상

[2부] 실제 설계

▣ 5장: 필요 이상으로 노출하지 마라
___메서드가 필드보다 낫다
___생성자보다 팩터리가 낫다
___모든 것을 final로 만들어라
___어울리지 않는 곳에 설정자 메서드를 넣지 마라
___프렌드 코드에서만 접근하는 것을 허용하라
___객체를 만든 이에게 더 많은 권한을 부여하라
___깊은 계층구조를 노출하지 마라

▣ 6장: 구현이 아닌 인터페이스를 대상으로 코드를 작성하라
___메서드나 필드 제거하기
___클래스나 인터페이스를 제거하거나 추가하기
___기존 계층구조에 인터페이스나 클래스 집어넣기
___메서드나 필드 추가하기
___자바 인터페이스와 클래스 비교
___외유내강
___메서드를 추가하길 좋아하는 사람들의 천국
___추상 클래스는 유용한가?
___매개변수 증가를 위한 대비
___인터페이스 대 클래스

▣ 7장: 모듈화 아키텍처를 사용하라
___모듈화 설계의 유형
___상호컴포넌트 룩업과 통신
___확장점 작성하기
___순환 의존성의 필요성
___Lookup은 어디에나 있다
___Lookup의 남용

▣ 8장: 클라이언트와 제공자를 위한 API를 분리하라
___C와 자바로 API/SPI 표현하기
___API 진화는 SPI 진화와 다르다
___Writer의 자바 1.4와 자바 1.5 사이의 진화
___API를 적절히 나눠라

▣ 9장: 테스트 용이성을 염두에 둬라
___API와 테스트
___명세의 쇠퇴
___좋은 도구는 API를 더 사용하기 쉽게 만든다
___테스트 호환성 도구

▣ 10장: 다른 API와 협동하기
___다른 API를 사용하는 것을 조심하라
___추상화 누출
___API의 일관성 강제하기
___위임과 합성
___API를 잘못 사용하지 않게 하라
___자바빈 리스너 패턴을 남용하지 마라

▣ 11장: API의 런타임 측면
___고치기 여정
___신뢰성과 무지
___동기화와 교착상태
___재진입성 호출 대비
___메모리 관리

▣ 12장: 선언형 프로그래밍
___객체를 불변적으로 만들어라
___불변적인 동작 방식
___문서의 호환성

[3부] 일상 생활

▣ 13장: 해로운 것으로 여겨지는 극단적인 조언
___API는 아름다워야 한다
___API는 정확해야 한다
___API는 단순해야 한다
___API는 성능이 좋아야 한다
___API는 100퍼센트 호환성을 갖춰야만 한다
___API는 대칭적이어야 한다

▣ 14장: API 설계의 역설
___API 이중 사고
___보이지 않는 일
___안정적인 API를 약속하는 두려움 극복하기
___유지보수 비용 최소화하기

▣ 15장: API 우주의 진화
___망가진 라이브러리 되살리기
___의식적 업그레이드 대 무의식적 업그레이드
___대체 동작 방식
___비슷한 API의 연계와 공존

▣ 16장: 협동 작업
___코드를 커밋하기 전에 검토 절차 밟기
___개발자들이 API를 문서화하도록 설득하기
___빅 브라더는 잠들지 않는다
___API 패치 수락하기

▣ 17장: 게임을 활용한 API 설계 실력 향상
___개요
___1일차
___2일차
___3일차: 평가의 날
___여러분도 해보시길!

▣ 18장: 확장 가능한 비지터 패턴 사례 연구
___추상 클래스
___진화 준비
___기본 탐색
___명확한 버전 정의
___비단조적 진화
___인터페이스를 사용하는 자료구조
___클라이언트 비지터와 제공자 비지터
___삼중 디스패치
___비지터를 위한 행복한 결말
___편의성 문법

▣ 19장: 시한부 절차
___명세 버전의 중요성
___모듈 의존성의 중요성
___제거된 부분을 영원히 놔둬야 하는가?
___모놀리식 API 나누기

출판사 서평

자바 프레임워크 아키텍트에게서 배우는 API 설계의 이론과 실제!

거의 모든 프로그램이 협업을 통해 만들어지는 오늘날에는 프로그래머가 곧 API 설계자이기도 하다. 적절히 설계된 API는 소프트웨어의 수명과 진화와도 직결되기 때문에 API 설계 지식은 중요도가 점점 더 커지고 있으며, 사내 프로그램뿐만이 아니라 공개 라이브러리나 프레임워크처럼 불특정 다수를 대상으로 코드를 작성하는 개발자라면 API 설계 지식이 더욱더 필요하다. 이 책에는 넷빈즈 프로젝트의 아키텍트가 10년 넘게 API를 설계, 개발, 유지보수하면서 겪은 경험... 더보기

Klover 리뷰 (0)

북로그 리뷰 (0) 쓰러가기

북로그 리뷰는 본인 인증 후 작성 가능합니다.
책이나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 내용은 비공개 처리 될 수 있습니다.
※ 북로그 리뷰 리워드 제공 2021. 4. 1 종료

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매 후 문장수집 작성 시, 리워드를 제공합니다. 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 책의 원서/번역서

안내
바로가기
  • 우측 확장형 배너 2
  • 우측 확장형 배너 2
최근 본 상품