객체지향의 사실과 오해를 읽고

15
객체에 대한 이해 객체지향의 사실과 오해 를 읽고

Upload: daniel-lim

Post on 15-Apr-2017

131 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: 객체지향의 사실과 오해를 읽고

객체에 대한 이해

 객체지향의 사실과 오해  를 읽고

Page 2: 객체지향의 사실과 오해를 읽고

목차

1. 협력2. 역할3. 책임4. 객체지향 설계 기법

Page 3: 객체지향의 사실과 오해를 읽고

협력

 협력 은 한 사람이 다른 사람에게 도움을  요청  할 때 시작된다.

3

Page 4: 객체지향의 사실과 오해를 읽고

협력

커피 주문이라는  협력 에 참여하는 모든 사람들은 정확하게 주문되고 주문된 커피가손님에게 정확하게 전달될 수 있도록 맡은바  역활 과  책임 을 다한다.

 요청 

손님 ‐>(주문) 케시어 ‐>(커피 제조 요청) 바리스타 

 응답 

손님 (커피 완성)<‐ 케시어 (커피 완성)<‐ 바리스타 

4

Page 5: 객체지향의 사실과 오해를 읽고

협력

결과적으로 협력은 다수의 요청과 응답으로 구성되며 전체적으로 협력은 다수의 연쇄적인 요청과 응답의 흐름으로 구성된다.

5

Page 6: 객체지향의 사실과 오해를 읽고

역할

사람들은 다른 사람과 협력 하는 과정 속에서 특정한  역할(role) 을 부여 받는다.

6

Page 7: 객체지향의 사실과 오해를 읽고

역할

케페테리아에서 손님이 주문한 커피를 제조하기 위해 캐시어와 바리스타가 협력 하는 과정속에는  손님 ,  캐시어 ,  바리스타 라는 역할이 존재한다.역할은 어떤 협력에 참여하는 특정한 사람이 협력 안에서 차지 하는  책임 이나  임무 를 의미한다.

 손님  : 커피 주문 책임  캐시어  : 손님으로 부터 주문 받는 책임  바리스타  : 주문된 커피를 제조하는 책임

7

Page 8: 객체지향의 사실과 오해를 읽고

책임

역할이란 단어는 의미적으로 책임이라는 개념을 내포 한다.

8

Page 9: 객체지향의 사실과 오해를 읽고

책임

사람들이 협력을 위해 특정한 역할을 맡고 역할에 적합한 책임을 수행한다는 사실은 몇가지 중요한 개념을 제시한다.

여러 사람이 동일한 역할을 수행 할 수 있다.역할은 대체 가능성을 의미한다.책임을 수행하는 방법은 자율적으로 선택 할 수 있다.한 사람이 동시에 여려 역할을 수행 할 수 있다.

9

Page 10: 객체지향의 사실과 오해를 읽고

역할, 책임, 협력

사람이라는 단어를  객체 로, 에이전트 요청을  메시지 로,

에이전트가 요청을 처리 하는 방법을  메소드 로 바꾸면 대부분의 설명을객체지향이라는 문맥으로 옮겨 올 수 있다.

10

Page 11: 객체지향의 사실과 오해를 읽고

객체지향의 본질객체지향이란 시스템을 상호작용하는  자율적인 객체들의 공동체 로 바라보고 객체를 이용해 시스템을 분할 하는 방법이다.

자율적인 객체란  상태 와  행위 를 함께 지니며 스스로 자기 자신을 책임지는 객체를 의미한다.

객체는 시스템의 행위를 구현하기 위해 다른 객체와  협력 한다. 각 객체는 협력 내에서정해진  역할 을 수행하며 역할은 관련된  책임 의 집합인다.

객체는 다른 객체와 협력하기 위해  메시지 를 전송하고, 메시지를 수신한 객체는 메시지를 처리하는데 적합한  메서드 를 자율적으로 선택한다.

11

Page 12: 객체지향의 사실과 오해를 읽고

객체지향 설계 기법

책임‒주도 설계

(Responsibility‒Driven Design)협력에 필요한 책임들을 식별하고 적합한 객체에게 책임을 할당하는 방식이다.

12

Page 13: 객체지향의 사실과 오해를 읽고

객체지향 설계 기법

디자인 패턴

(Design Pattern)전문가들이 반복적으로 사용해는 해결 방법을 정의 놓은 설계 템플릿의 모음이다.

13

Page 14: 객체지향의 사실과 오해를 읽고

객체지향 설계 기법

테스트‒주도 개발

(Test‒Driven Development)테스트를 먼저 개발하고 테스트를 통과하는 구체적인 코드를 추가하면서 애플리케이션을 완성해가는 방식을 따른다.

14

Page 15: 객체지향의 사실과 오해를 읽고

추천 도서

한글서적

객체지향의 사실과 오해 ‒ 조영호  추천 

객체지향과 디자인 패턴 ‒ 최범균

UML 실전에서는 이것만 쓴다. ‒ 로버트 C. 마틴

영문서적

Applying UML and Patterns ‒ Craig Laman

Agile Software Development ‒ 로버트 C. 마틴15