Study/오브젝트
-
객체지향 프로그래밍을 향해 진정한 객체지향 패러다임으로의 전환은 Class 가 아닌, Object에 초점을 맞출 때 에만 얻을 수 있다. 어떤 클래스가 필요한지가 아니라, 어떤 객체가 필요한지 고민해야 한다. 클래스는 공통적인 객체들의 상태와 행동을 추상화한 것이다. 따라서 Class를 추상화시키려면 어떤 객체가 필요한지 알아야 한다. 객체는 독립적인 존재가 아니다, 기능 구현을 위해 협력하는 공동체의 일원으로 봐야 한다. 객체를 고립된 존재로 바라보지 말고, 협력에 참여하는 협력자로 바라봐야 한다. 다른 객체에게 도움을 주거나, 의존하면서 살아가는 협력적인 존재이다. 도메인 구조를 따르는 프로그램 구조 도메인(domain)이란 문제를 해결하기 위해 사용자가 프로그램을 사용하는 분야 객체지향 패러다임이 ..
[Object] 2장 : 객체지향 프로그래밍객체지향 프로그래밍을 향해 진정한 객체지향 패러다임으로의 전환은 Class 가 아닌, Object에 초점을 맞출 때 에만 얻을 수 있다. 어떤 클래스가 필요한지가 아니라, 어떤 객체가 필요한지 고민해야 한다. 클래스는 공통적인 객체들의 상태와 행동을 추상화한 것이다. 따라서 Class를 추상화시키려면 어떤 객체가 필요한지 알아야 한다. 객체는 독립적인 존재가 아니다, 기능 구현을 위해 협력하는 공동체의 일원으로 봐야 한다. 객체를 고립된 존재로 바라보지 말고, 협력에 참여하는 협력자로 바라봐야 한다. 다른 객체에게 도움을 주거나, 의존하면서 살아가는 협력적인 존재이다. 도메인 구조를 따르는 프로그램 구조 도메인(domain)이란 문제를 해결하기 위해 사용자가 프로그램을 사용하는 분야 객체지향 패러다임이 ..
2024.05.26 -
티켓 판매 애플리케이션 구현 소프트웨어 모듈이 가져야 하는 세 가지 기능(로버트 마틴) 실행 중에 제대로 동작하는 것 변경을 위해 존재하는 것 코드를 읽는 사람과 의사소통하는 것 무엇이 문제인가 예상을 빗나가는 코드 이해 가능한 코드는 우리의 예상에서 크게 벗어나지 않는 코드 하나의 클래스에서 너무 많은 세부적인 내용들을 다루면 생기는 문제 이해하기 어렵다 변경에 취약하다 변경에 취약한 코드 의존성(dependency)이 높은 코드 어떤 객체가 변경될 때, 그 객체에 의존하는 객체도 변경될 수 있음 결합도(coupling)가 높은 코드 결합도가 높다: 의존성이 강하다 결합도가 낮다: 합리적인 수준으로 의존한다 객체지향 설계의 목표: 객체 사이의 결합도를 낮춰 변경이 용이한 설계는 만드는 것 설계 개선하기..
[Object] 1장 : 객체, 설계티켓 판매 애플리케이션 구현 소프트웨어 모듈이 가져야 하는 세 가지 기능(로버트 마틴) 실행 중에 제대로 동작하는 것 변경을 위해 존재하는 것 코드를 읽는 사람과 의사소통하는 것 무엇이 문제인가 예상을 빗나가는 코드 이해 가능한 코드는 우리의 예상에서 크게 벗어나지 않는 코드 하나의 클래스에서 너무 많은 세부적인 내용들을 다루면 생기는 문제 이해하기 어렵다 변경에 취약하다 변경에 취약한 코드 의존성(dependency)이 높은 코드 어떤 객체가 변경될 때, 그 객체에 의존하는 객체도 변경될 수 있음 결합도(coupling)가 높은 코드 결합도가 높다: 의존성이 강하다 결합도가 낮다: 합리적인 수준으로 의존한다 객체지향 설계의 목표: 객체 사이의 결합도를 낮춰 변경이 용이한 설계는 만드는 것 설계 개선하기..
2024.05.22 -
패러다임의 시대 패러다임이라는 말은 ‘모델’, ‘패턴’, 또는 ‘전형적인 예’를 의미하는 그리스어인 ‘파라데이그마’에서 유래했다. 과거에는 표준적인 모델을 따르거나 모방하는 상황을 가리키는 매우 제한적인 상황에서만 패러다임이라는 단어를 사용했다 하지만 현대인들은 패러다임이라는 단어를 전혀 다른 의미로 사용한다. 우리가 사용하는 패러다임은 한 시대의 사회 전체가 공유하는 이론이나 방법, 문제의식 등의 체계를 의미한다. 패러다임의 개념이 과거와 다른 의미로 바뀐 과정 토마스 쿤의 “과학혁명의 구조” 라는 이름의 책은 과학사에 대한 기존 관점을 뿌리째 흔들었다. 쿤의 책이 출간되기 전까지 과학사에 대한 보편적인 시각은 과학의 발전은 이미 달성된 과학적 성취를 기반으로 새로운 발견을 누적시키거나 오류를 수정하면..
[Object] 들어가며 : 프로그래밍 패러다임패러다임의 시대 패러다임이라는 말은 ‘모델’, ‘패턴’, 또는 ‘전형적인 예’를 의미하는 그리스어인 ‘파라데이그마’에서 유래했다. 과거에는 표준적인 모델을 따르거나 모방하는 상황을 가리키는 매우 제한적인 상황에서만 패러다임이라는 단어를 사용했다 하지만 현대인들은 패러다임이라는 단어를 전혀 다른 의미로 사용한다. 우리가 사용하는 패러다임은 한 시대의 사회 전체가 공유하는 이론이나 방법, 문제의식 등의 체계를 의미한다. 패러다임의 개념이 과거와 다른 의미로 바뀐 과정 토마스 쿤의 “과학혁명의 구조” 라는 이름의 책은 과학사에 대한 기존 관점을 뿌리째 흔들었다. 쿤의 책이 출간되기 전까지 과학사에 대한 보편적인 시각은 과학의 발전은 이미 달성된 과학적 성취를 기반으로 새로운 발견을 누적시키거나 오류를 수정하면..
2024.05.18