본문 바로가기

객체2

추상 데이터 타입 vs 객체지향의 객체 ( ※ 출처 - by 조영호 챕터7 ) 1. 추상 데이터 타입 추상 데이터 타입(Abstract Data Type)은 개발자가 필요로 하는 데이터 타입을 추상적으로 표현하고 이것과 관련된 연산을 구현한 새로운 데이터 타입을 말한다. 본래 타입(type)이란, 어떤 값에 대한 의미와 함께 그것을 가지고 할 수 있는 연산이 무엇인지 제공한다. 따라서 추상 데이터 타입(ADT)이라고 말했으나, 프로그래밍 언어에서 제공해주는 기본 데이터 타입도 같은 데이터 타입이다. 단지 추상 데이터 타입은 개발자가 직접 정의할 수 있다는 점에서 다를 뿐이다. ADT는 좋은 프로그램의 밑거름이 된다. 절차적(Procedural) 프로그래밍이 프로시저(함수)를 중심으로 원하는 기능을 분해하고 통합하는 식이라면, ADT는 개념 즉.. 2023. 12. 8.
책임과 역할에 대한 상세한 이야기 (오브젝트 3장) 1. 역할, 책임, 협력 조영호님의 에서는 객체지향의 핵심 원칙을 역할, 책임, 협력의 구조로 소개한다. 간단히 말해 소프트웨어를 각자의 '책임'을 수행하며 서로 '협력'하는 '역할'들로 명세를 짜는 것이다. 역할과 책임에 대한 구체적인 실천은 런타임에 '객체(object)'가 수행한다. 이미 위 포스팅 링크에서 많은 내용을 정리했다. 따라서 여기서는 같은 저자의 챕터 3장에 나오는 설명 중 새롭게 알게 된 사실만 따로 정리하려 한다. 2. 책임 할당: 정보 전문가 패턴(Information Expert) 좋은 객체지향 설계의 핵심은 책임을 적절한 객체에게 할당하는 것이다. 크레이그 라만(Graig Larman)은 객체의 책임을 크게 하는 것(doing)과 아는 것(knowing)의 두 가지 범주로 나누.. 2023. 12. 7.