HOME > Detail View

Detail View

Python design patterns : Python 예제 코드로 배우는 핵심 디자인 패턴

Python design patterns : Python 예제 코드로 배우는 핵심 디자인 패턴 (Loan 25 times)

Material type
단행본
Personal Author
Zlobin, Gennadiy 정승원, 역
Title Statement
Python design patterns : Python 예제 코드로 배우는 핵심 디자인 패턴 / 제나디 즐로빈 지음 ; 정승원 옮김
Publication, Distribution, etc
의왕 :   에이콘,   2014  
Physical Medium
117 p. : 삽화 ; 24 cm
Series Statement
acorn+PACKT technical book 시리즈
Varied Title
Learning Python design patterns
ISBN
9788960775350 9788960772106 (Set)
General Note
기술 감수자: 데이비드 콘(David Corne), 카밀라 홀랜더 크로자라(Kamilla Holanda Crozara), 사키스 카삼팰리스(Sakis Kasampalis)  
색인수록  
Subject Added Entry-Topical Term
Python (Computer program language) Scripting languages (Computer science)
000 01213camcc2200349 c 4500
001 000045802456
005 20140623110539
007 ta
008 140620s2014 ggka 001c kor
020 ▼a 9788960775350 ▼g 94000
020 1 ▼a 9788960772106 (Set)
035 ▼a (KERIS)BIB000013433442
040 ▼a 241027 ▼c 241027 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.133 ▼2 23
085 ▼a 005.133 ▼2 DDCK
090 ▼a 005.133 ▼b P999 2014z3
100 1 ▼a Zlobin, Gennadiy
245 1 0 ▼a Python design patterns : ▼b Python 예제 코드로 배우는 핵심 디자인 패턴 / ▼d 제나디 즐로빈 지음 ; ▼e 정승원 옮김
246 1 9 ▼a Learning Python design patterns
260 ▼a 의왕 : ▼b 에이콘, ▼c 2014
300 ▼a 117 p. : ▼b 삽화 ; ▼c 24 cm
440 0 0 ▼a acorn+PACKT technical book 시리즈
500 ▼a 기술 감수자: 데이비드 콘(David Corne), 카밀라 홀랜더 크로자라(Kamilla Holanda Crozara), 사키스 카삼팰리스(Sakis Kasampalis)
500 ▼a 색인수록
650 0 ▼a Python (Computer program language)
650 0 ▼a Scripting languages (Computer science)
700 1 ▼a 정승원, ▼e
900 1 0 ▼a 즐로빈, 제나디, ▼e
900 1 0 ▼a Jeong, Sung-won, ▼e
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.133 P999 2014z3 Accession No. 121230029 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

파이썬(Python)을 통해 디자인 패턴(Design Pattern)을 설명하는 책. 파이썬은 매우 강력하고 간결하며 우아한 프로그래밍 언어다. 객체 지향의 핵심 기능을 모두 가지고 있고 디자인 패턴을 구현하는 데 사용할 수도 있다. 디자인 패턴은 일반적으로 발생하는 문제를 풀 때 재사용 가능한 해결책이다.

다시 말해, 프로그래머들이 작업하며 직면한 문제를 해결한 방식을 발전시켜 일반적인 패턴으로 만들어 놓은 것이다. 디자인 패턴은 알고리즘과 같이 문제를 해결하기 위해 정해진 방법이 아니라 서로 다른 상황의 문제를 해결하기 위해 문제를 설명한 것으로, 여러 가지 언어로 구현할 수 있다.

디자인 패턴은 개발 과정의 속도를 높여 주고 특정 문제를 해결하기 위해 검증된 방식을 제공한다. 당연히 검증되지 않은 방식보다는 한 번 이상 검증된 방식을 사용하면, 구현 도중 발생할지도 모르는 보이지 않는 문제를 미연에 방지할 수 있고, 개발 속도를 지연시킬 가능성이 있는 예측 불가능한 문제를 해결할 수 있다.

이 책은 최소한의 수정만으로 동일한 알고리즘의 여러 가지 구현 만들기, 발행-구독(publisher-subscriber) 패턴 구현하기, 인스턴스가 단 하나만 필요한 객체 만들기, 퍼사드(Fa?ade) 디자인 패턴을 사용해서 간단한 인터페이스 만들기 등을 다루고 있다.

★ 요약 ★

수많은 개발자들이 작업 시의 문제를 해결하며 발전시켜온 노하우를 축적하고, 추후 재사용을 위해 이름 붙인 규약을 디자인 패턴이라 부른다. 프로그래머들이 협업하면서 디자인 패턴을 사용하면, 장황한 설명 없이 효율적으로 자신의 의사를 전달하고 불필요한 오해를 피할 수 있다. 이 책은 파이썬(Python)이라는 간결하고 강력한 언어를 통해 디자인 패턴(Design Pattern)을 설명한다. 객체 지향의 핵심 기능을 모두 가지고 있는 파이썬으로 직접 예제 코드를 구현하며 디자인 패턴의 세계로 빠져 보자.

★ 이 책에서 다루는 내용 ★

■ 최소한의 수정만으로 동일한 알고리즘의 여러 가지 구현 만들기
■ 발행-구독(publisher-subscriber) 패턴 구현하기
■ 인스턴스가 단 하나만 필요한 객체 만들기
■ 퍼사드(Fa?ade) 디자인 패턴을 사용해서 간단한 인터페이스 만들기
■ 인터페이스는 그대로 두고 기능을 향상시키기
■ 단 하나의 인스턴스만 필요할 때 객체를 만드는 방법
■ 모델-뷰-컨트롤러(MVC) 패턴을 이용해서 URL 압축기 구현하기

★ 이 책의 대상 독자 ★

이 책은 파이썬을 어느 정도 알고 있고 디자인 패턴에 대한 지식을 한 단계 높이고 싶은 개발자에게 적합하다.

★ 이 책의 구성 ★

1장, '모델-뷰-컨트롤러'에서는 모델, 뷰, 컨트롤러가 무엇인지 설명하고 사용하는 방법을 보여준다. 마지막으로 이 패턴을 사용해서 간단한 URL 압축기를 구현해본다.

2장, '싱글턴 패턴을 사용한 유일 객체 생성하기'에서는 애플리케이션을 실행하는 동안 단 하나의 객체만 생성하는 클래스를 만드는 방법을 알아본다.

3장, '객체 생성 팩토리 만들기'에서는 간단한 팩토리 메소드(Factory Method)와 추상 팩토리 패턴(Abstract Factory pattern)을 설명하고 객체 생성을 분리하는 방법을 알아본다.

4장, '퍼사드(Fa?ade) 디자인 패턴'에서는 복잡한 서브시스템의 인터페이스를 간소화해서 개발을 용이하게 하는 방법을 알아본다.

5장, '프록시와 옵저버 패턴으로 객체 간 통신하기'는 발행-구독(publisher-subscriber) 모델과 다른 객체에 대한 접근을 제어하는 프록시를 구현하기 위한 패턴을 설명한다.

6장, '커맨드 패턴으로 호출 캡슐화하기'에서는 동작과 파라미터를 캡슐화하는 방법을 설명한다.

7장, '템플릿 메소드로 알고리즘 재정의하기'는 최소한의 수정으로 여러 알고리즘의 변형을 생성하는 패턴을 설명한다.

★ 지은이 서문 ★

파이썬은 매우 강력하고 간결하며 우아한 프로그래밍 언어다. 객체 지향의 핵심 기능을 모두 가지고 있고 디자인 패턴을 구현하는 데 사용할 수도 있다. 디자인 패턴은 일반적으로 발생하는 문제를 풀 때 재사용 가능한 해결책이다.

다시 말해, 프로그래머들이 작업하며 직면한 문제를 해결한 방식을 발전시켜 일반적인 패턴으로 만들어 놓은 것이다. 디자인 패턴은 알고리즘과 같이 문제를 해결하기 위해 정해진 방법이 아니라 서로 다른 상황의 문제를 해결하기 위해 문제를 설명한 것으로, 여러 가지 언어로 구현할 수 있다.

디자인 패턴은 개발 과정의 속도를 높여 주고 특정 문제를 해결하기 위해 검증된 방식을 제공한다. 당연히 검증되지 않은 방식보다는 한 번 이상 검증된 방식을 사용하면, 구현 도중 발생할지도 모르는 보이지 않는 문제를 미연에 방지할 수 있고, 개발 속도를 지연시킬 가능성이 있는 예측 불가능한 문제를 해결할 수 있다.

또한 프로그래머들 간의 커뮤니케이션 도구로도 유용하다. 예를 들어 "여기서는 옵저버(Observer) 디자인 패턴을 사용하겠다."라고 말하면, 코드가 어떻게 동작하는지 일일이 설명하는 것보다 훨씬 명료하다.

디자인 패턴 학습은 훌륭한 개발자로 도약하기 위한 첫 번째 발판이 될 수 있다. 이 책을 통해 디자인 패턴의 세계로 빠져보자.


Information Provided By: : Aladin

Author Introduction

제나디 즐로빈(지은이)

러시아의 음악 서비스업체 Zvooq.ru에서 소프트웨어 개발자이자 기술 팀장으로 일하고 있다. 지금까지 4년 이상 파이썬을 기본 언어로 사용하며 매일같이 파이썬의 강력함을 체험하고 있다. 하이로드(high-load) 소프트웨어 아키텍처와 좋은 엔지니어링 관행, 안드로이드 운영체제, 자연어 처리 등에 관심이 있다. Zvooq에서 일하기 전에는 러시아의 첫 번째 검색 엔진 Rambler에서 일했다. 이때는 항공권의 메타 검색 서비스와 Rambler의 인덱스 페이지를 연동했다.

정승원(옮긴이)

LG전자 미디어 연구소를 거쳐 현재 2K 스포츠Sports에서 소프트웨어 엔지니어로 일하고 있다. 옮긴 책으로는 에이콘출판사에서 펴낸 『The Python Standard Library by Example 한국어판』(2012), 『아이폰 위치 기반 애플리케이션 개발』(2013), 『Python Design Patterns』(2014)가 있다.

Information Provided By: : Aladin

Table of Contents

1장. 모델-뷰-컨트롤러
___모델: 애플리케이션의 지식
___뷰: 지식의 표현
___컨트롤러: 모델과 뷰의 연결고리
___MVC 사용의 장점
___파이썬 구현
___요약

2장. 싱글턴 패턴을 사용한 유일 객체 생성하기
___모듈-레벨 싱글턴
___클래식 싱글턴
___보그 싱글턴
___파이썬 구현
___요약

3장. 객체 생성 팩토리 만들기
___팩토리 메소드
______팩토리 메소드 패턴의 장점
______팩토리 메소드 구현
___추상 팩토리
______추상 팩토리 패턴의 장점
______추상 팩토리 구현
___추상 팩토리와 팩토리 메소드
___요약

4장. 퍼사드 디자인 패턴
___퍼사드 디자인 패턴
______퍼사드 패턴이 해결하는 문제
______퍼사드 디자인 패턴의 장점
______파이썬 표준 라이브러리의 퍼사드
______파이썬 구현
___요약

5장. 프록시와 옵저버 패턴으로 객체 간 통신하기
___프록시 디자인 패턴
______프록시 패턴이 해결하는 문제
______프록시 패턴의 사용
______프록시 패턴의 장점과 단점
______파이썬 구현
___옵저버 디자인 패턴
______옵저버 패턴이 해결하는 문제
______옵저버 패턴 사용
______옵저버 패턴의 장점
______파이썬 구현
___요약

6장. 커맨드 패턴으로 호출 캡슐화하기
___커맨드 패턴 용어
___커맨드 디자인 패턴의 사용 예
___커맨드 디자인 패턴의 장단점
___파이썬 구현
___요약

7장. 템플릿 메소드로 알고리즘 재정의하기
___템플릿 메소드 디자인 패턴
______템플릿 메소드 디자인 패턴의 장점
______후크 사용
___파이썬 구현
___요약

New Arrivals Books in Related Fields