Object
-
객체지향 설계의 핵심은 책임이다 책임 - 객체지향 애플리케이션 전체의 품질을 결정 객체지향 설계란 올바른 객체에게 올바른 책임을 할당하면서 낮은 결합도와 높은 응집도를 가진 구조를 창조하는 활동설계는 변경을 위해 존재하고 변경에는 어떤 식으로든 비용이 발생한다.-> 훌륭한 설계란 합리적인 비용 안에서 변경을 수용할 수 있는 구조를 만드는 것데이터 중심의 영화 예매 시스템객체지향 설계에서 시스템을 객체로 분할하는 두 가지 방법 상태(데이터)를 분할의 중심축으로 : 객체는 자신이 포함하고 있는 데이터를 조작하는 데 필요한 오퍼레이션을 정의 책임을 분할의 중심축으로 : 객체는 다른 객체가 요청할 수 있는 오퍼레이션을 위해 필요한 상태를 보관객체의 상태객체가 저장해야 하는 데이터의 집합 (상태 = 데이터).객..
[Object] 4장 : 설계 품질과 트레이드오프객체지향 설계의 핵심은 책임이다 책임 - 객체지향 애플리케이션 전체의 품질을 결정 객체지향 설계란 올바른 객체에게 올바른 책임을 할당하면서 낮은 결합도와 높은 응집도를 가진 구조를 창조하는 활동설계는 변경을 위해 존재하고 변경에는 어떤 식으로든 비용이 발생한다.-> 훌륭한 설계란 합리적인 비용 안에서 변경을 수용할 수 있는 구조를 만드는 것데이터 중심의 영화 예매 시스템객체지향 설계에서 시스템을 객체로 분할하는 두 가지 방법 상태(데이터)를 분할의 중심축으로 : 객체는 자신이 포함하고 있는 데이터를 조작하는 데 필요한 오퍼레이션을 정의 책임을 분할의 중심축으로 : 객체는 다른 객체가 요청할 수 있는 오퍼레이션을 위해 필요한 상태를 보관객체의 상태객체가 저장해야 하는 데이터의 집합 (상태 = 데이터).객..
2024.06.13 -
협력객체지향 원칙을 따르는 애플리케이션의 제어 흐름은 어떤 하나의 객체에 의해 통제되지 않고 다양한 객체들 사이에 균형 있게 분배되는 것이 일반적이다.다양한 객체들이 영화 예매라는 기능을 구현하기 위해 메시지를 주고받으면서 상호작용하고 있다.이처럼 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용을 협력이라고 한다.객체가 협력에 참여하기 위해 수행하는 로직은 책임</..
[Object] 3장 : 역할 책임 협력협력객체지향 원칙을 따르는 애플리케이션의 제어 흐름은 어떤 하나의 객체에 의해 통제되지 않고 다양한 객체들 사이에 균형 있게 분배되는 것이 일반적이다.다양한 객체들이 영화 예매라는 기능을 구현하기 위해 메시지를 주고받으면서 상호작용하고 있다.이처럼 객체들이 애플리케이션의 기능을 구현하기 위해 수행하는 상호작용을 협력이라고 한다.객체가 협력에 참여하기 위해 수행하는 로직은 책임</..
2024.06.08 -
객체지향 프로그래밍을 향해 진정한 객체지향 패러다임으로의 전환은 Class 가 아닌, Object에 초점을 맞출 때 에만 얻을 수 있다. 어떤 클래스가 필요한지가 아니라, 어떤 객체가 필요한지 고민해야 한다. 클래스는 공통적인 객체들의 상태와 행동을 추상화한 것이다. 따라서 Class를 추상화시키려면 어떤 객체가 필요한지 알아야 한다. 객체는 독립적인 존재가 아니다, 기능 구현을 위해 협력하는 공동체의 일원으로 봐야 한다. 객체를 고립된 존재로 바라보지 말고, 협력에 참여하는 협력자로 바라봐야 한다. 다른 객체에게 도움을 주거나, 의존하면서 살아가는 협력적인 존재이다. 도메인 구조를 따르는 프로그램 구조 도메인(domain)이란 문제를 해결하기 위해 사용자가 프로그램을 사용하는 분야 객체지향 패러다임이 ..
[Object] 2장 : 객체지향 프로그래밍객체지향 프로그래밍을 향해 진정한 객체지향 패러다임으로의 전환은 Class 가 아닌, Object에 초점을 맞출 때 에만 얻을 수 있다. 어떤 클래스가 필요한지가 아니라, 어떤 객체가 필요한지 고민해야 한다. 클래스는 공통적인 객체들의 상태와 행동을 추상화한 것이다. 따라서 Class를 추상화시키려면 어떤 객체가 필요한지 알아야 한다. 객체는 독립적인 존재가 아니다, 기능 구현을 위해 협력하는 공동체의 일원으로 봐야 한다. 객체를 고립된 존재로 바라보지 말고, 협력에 참여하는 협력자로 바라봐야 한다. 다른 객체에게 도움을 주거나, 의존하면서 살아가는 협력적인 존재이다. 도메인 구조를 따르는 프로그램 구조 도메인(domain)이란 문제를 해결하기 위해 사용자가 프로그램을 사용하는 분야 객체지향 패러다임이 ..
2024.05.26 -
패러다임의 시대 패러다임이라는 말은 ‘모델’, ‘패턴’, 또는 ‘전형적인 예’를 의미하는 그리스어인 ‘파라데이그마’에서 유래했다. 과거에는 표준적인 모델을 따르거나 모방하는 상황을 가리키는 매우 제한적인 상황에서만 패러다임이라는 단어를 사용했다 하지만 현대인들은 패러다임이라는 단어를 전혀 다른 의미로 사용한다. 우리가 사용하는 패러다임은 한 시대의 사회 전체가 공유하는 이론이나 방법, 문제의식 등의 체계를 의미한다. 패러다임의 개념이 과거와 다른 의미로 바뀐 과정 토마스 쿤의 “과학혁명의 구조” 라는 이름의 책은 과학사에 대한 기존 관점을 뿌리째 흔들었다. 쿤의 책이 출간되기 전까지 과학사에 대한 보편적인 시각은 과학의 발전은 이미 달성된 과학적 성취를 기반으로 새로운 발견을 누적시키거나 오류를 수정하면..
[Object] 들어가며 : 프로그래밍 패러다임패러다임의 시대 패러다임이라는 말은 ‘모델’, ‘패턴’, 또는 ‘전형적인 예’를 의미하는 그리스어인 ‘파라데이그마’에서 유래했다. 과거에는 표준적인 모델을 따르거나 모방하는 상황을 가리키는 매우 제한적인 상황에서만 패러다임이라는 단어를 사용했다 하지만 현대인들은 패러다임이라는 단어를 전혀 다른 의미로 사용한다. 우리가 사용하는 패러다임은 한 시대의 사회 전체가 공유하는 이론이나 방법, 문제의식 등의 체계를 의미한다. 패러다임의 개념이 과거와 다른 의미로 바뀐 과정 토마스 쿤의 “과학혁명의 구조” 라는 이름의 책은 과학사에 대한 기존 관점을 뿌리째 흔들었다. 쿤의 책이 출간되기 전까지 과학사에 대한 보편적인 시각은 과학의 발전은 이미 달성된 과학적 성취를 기반으로 새로운 발견을 누적시키거나 오류를 수정하면..
2024.05.18