유연한 소프트웨어를 만드는 설계 원칙
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

작가정보
Chris Hanson
크리스 핸슨은 데이테라의 기술 직원이다. 여러 해 동안 MIT에서 지내면서 MIT/GNU 스킴 시스템의 주 저자로 일했다. 구글에서도 10년간 일했다.
저자(글) 제럴드 제이 서스먼
Gerald Jay Sussman
제럴드 제이 서스먼은 MIT 전기공학부 파나소닉 교수(Panasonic Professor of Electrical Engineering)이다.
25년 이상의 번역 경력을 가진 전문 번역가로, 『컴퓨터 프로그래밍의 예술』(The Art of Computer Programming) 시리즈와 『UNIX 고급 프로그래밍』(Advanced Programming in UNIX Environment) 제2판 및 제3판, 『인공지능: 현대적 접근방식』(Artificial Intelligence: A Modern Approach) 제3판 및 제4판, 『Game Programming Gems』 시리즈를 비롯해 80권 이상의 다양한 IT 전문서를 번역했다.
개인 웹사이트 류광의 번역 이야기(http://occamsrazr.net)와 게임 개발 웹사이트 Gpg Study(http://gpgstudy.com)를 운영한다.
목차
- 제1장 자연과 설계의 유연성
1.1 계산과 건축
1.2 유연성을 위한 똑똑한 부품
1.3 중복성과 축중성
1.4 탐색 행동
1.5 유연성의 비용
제2장 영역 특화 언어(DSL)
2.1 조합자
2.2 정규표현식
2.3 래퍼
2.4 문제 영역의 추상화
2.5 요약
제3장 산술 주제의 변형들
3.1 산술 연산의 조합
3.2 확장성 있는 일반적 프로시저
3.3 예제: 자동 미분
3.4 효율적인 일반적 프로시저
3.5 효율적인 사용자 정의 형식
3.6 요약
제4장 패턴 부합
4.1 패턴
4.2 항 재작성
4.3 부합기의 설계
4.4 통합 부합
4.5 그래프상의 패턴 부합
4.6 요약
제5장 평가
5.1 일반적 eval/apply 해석기
5.2 비엄격 인수를 가진 프로시저
5.3 실행 프로시저로의 컴파일
5.4 탐색 행동
5.5 바탕 후속 프로시저들의 노출
5.6 큰 힘과 큰 책임
제6장 계층화
6.1 계층 활용
6.2 계층화 구현
6.3 계층적 산술
6.4 값의 의존성 주해 추가
6.5 계층화의 약속
제7장 전파
7.1 예제: 별과의 거리
7.2 전파 메커니즘
7.3 다중 대안 세계관
7.4 값들의 병합
7.5 가능한 세계 검색
7.6 전파는 축중성을 가능하게 한다
제8장 맺음말
부록 A 지원 소프트웨어
부록 B 스킴
추천사
-
대부분의 훌륭한 시스템은 한순간만 반짝하지 않고 오랫동안 빛을 발한다. 이 책은 망가짐 없이 발전하는 유연한 시스템을 만드는 비법을 훌륭하게 소개한다.
-
이 책은 소프트웨어 개발의 판도를 뒤바꿀 가산적 프로그래밍 개념을 소개한다. 가산적 프로그래밍을 사용하면 프로그래머가 곡예같은 노력을 하지 않아도 기존 디자인을 변경할 수 있다. 소프트웨어 디자인 과정에서 오랫동안 간과해왔던 문제를 우아하고 명확하게 지적한 뒤, 이에 대한 획기적인 해결책을 알려주는 책이다.
출판사 서평
크리스 핸슨과 제럴드 제이 서스먼이 설명하는
유연성을 위한 가산적 프로그래밍 마스터 클래스
소프트웨어 개발자들은 주로 특정한 작업을 아주 잘 수행하는 소프트웨어를 설계해왔다. 이는 과거의 공학적 실천의 확장으로 개별 소프트웨어를 좁은 범위의 작업만을 수행하도록 설계했다. 이 경우, 풀고자 하는 문제가 변하면 소프트웨어도 변해야 한다. 그런데, 문제가 조금만 바뀌어도 소프트웨어는 크게 바꾸어야 할 때가 많다. 유연성에 초점을 두고 설계를 진행하면 환경 변화에 적응하는 시스템을 구축할 수 있다. 작동 중인 프로그램을 뜯어고칠 필요 없이, 그냥 새로운 기능을 구현한 코드를 추가하거나 기존 함수를 새로운 요구 사항에 맞게 조정하는 가산적 프로그래밍을 활용해 진화하는 시스템을 만들어보자.
대상 독자
● 유연성에 집중한 프로그램 설계 방식을 알고 싶은 프로그래머
● 복잡한 시스템을 구축해야 하는 아키텍트
배우는 내용
● 표준 인터페이스를 따르는 짜맞춤 방식으로 작은 함수부터 산술 패키지 전체까지 다양한 구성 요소를 조립하는 시스템 구성법
● 측정 단위나 자료 출처 같은 정보를 담은 독립적인 주해를 사용한 데이터 증강
● 통합이나 전파를 이용한 독립적인 부분 정보 조각 조합
● 영역 모형, 규칙 시스템, 패턴 부합, 전파, 의존성 지향적 역추적을 이용한 제어 구조와 문제 영역 분리
● 동적으로 확장 가능한 평가자를 이용한 프로그래밍 언어 확장
기본정보
ISBN | 9791162245408 | ||
---|---|---|---|
발행(출시)일자 | 2022년 03월 30일 | ||
쪽수 | 504쪽 | ||
크기 |
184 * 235
* 24
mm
/ 884 g
|
||
총권수 | 1권 | ||
원서명/저자명 | Software Design for Flexibility/Chris Hanson |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립