추상화

    오브젝트 :: Chap3 - 역할, 책임, 협력

    오브젝트 :: Chap3 - 역할, 책임, 협력

    객체지향 패러다임 관점에서 핵심은 역할(role), 책임(responsibility), 협력(collaboration) ! 객체지향의 본질은 협력하는 객체들의 공동체를 창조 하는 것 ! 협력을 구성하기 위해 적절한 객체를 찾고, 적절한 책임을 할당 하는 과정이 핵심이다. 협력 영화 예매 시스템 돌아보기 객체지향 원칙을 따르는 어플리케이션의 제어 흐름은 특정 한 객체에 의해 통제되지 않고 다양한 객체들 사이에 균형 있게 분배되는 것이 일반적이다. 객체들이 어플리케이션의 기능을 구현하기 위해 수행하는 상호작용을 협력 이라고 한다. 객체가 협력에 참여하기 위해 수행하는 로직은 책임, 객체들이 협력 안에서 수행하는 책임들이 모여 객체가 수행하는 역할 을 구성한다. 협력 두 객체 사이 협력은 하나의 객체가 다른 ..

    오브젝트 :: Chap2 - 객체지향 프로그래밍

    오브젝트 :: Chap2 - 객체지향 프로그래밍

    간단한 온라인 영화 예매 시스템을 통해 객체지향 프로그래밍을 접해보자 영화 예매 시스템 용어 영화 : 영화에 대한 기본 정보 (제목, 상영시간, 가격 정보) 상영 : 실제로 관객들이 영화를 관람하는 사건 사용자가 실제로 예매하는 대상은 영화가 아니라 상영 ! 요구사항 특정 조건을 만족하는 예매자는 요금 할인받기 가능 할인액을 결정하는 두 가지 규칙 할인 조건 순서 조건 : 상영 순번을 이용해 할인 여부 결정 예시) 순번이 10인 경우 매일 10번째 상영 영화 할인 기간 조건 : 상영 시작 시간을 이용해 할인 여부 결정 예시) 월요일, 시작시간 오전 10시, 종료시간 오후 1시인 모든 영화 할인 할인 정책 금액 할인 정책 : 예매 요금에서 일정 금액 할인 예시) 영화 9000원, 금액할인정책 800원 → ..