오히려 좋아..

상황이 나쁘게만 흘러가는 것 같을 때 외쳐보자.. .

궁금한 마음으로 포트폴리오 보기

OOP 2

추상화 매커니즘

추상화 매커니즘에는 프로시저 추상화와 데이터 추상화가 있다. 이 두 추상화 매커니즘은 시스템을 분해하는 방법이며 프로시저 추상화 중심으로 시스템을 분해한다면 기능분해(또는 알고리즘 분해)의 길로 가는 것이다. 데이터 추상화의 경우 데이터를 중심으로 타입을 추상화 하는 경우가 있고 데이터를 중심으로 프로시저를 추상화 하는 방법이 있다. 전자를 추상데이터 타입 후자를 객체 지향이라고 한다. 타입은 변수에 저장할 수 있는 내용물의 종류와 변수에 적용될 수 있는 연산의 가짓수를 의미한다. 리스코프는 "Programming with Abstract Data Types"에서 프로시저 추상화를 보완하기 위해 데이터 추상화 개념을 제안했다. 추상 데이터 타입을 구현하기 위해서 다음과 같은 특성을 프로그래밍 언어에서 지..

Paradigm/OOP 2021.09.28

[객체 지향 프로그래밍] 1. 객체지향 프로그래밍이란?

본격적인 설명에 앞서서 앞으로 몇개의 포스팅동안 객체지향 프로그래밍(OOP, Object Oriented Programming)과 그것의 기본 원칙인 SOLID 원칙에 대해서 다뤄보도록 하겠다. OOP를 이해하려면 몇가지 중요한 개념을 알아야하는데 이 개념이 지나치게 추상적이다. 객체라는 말 자체도 일상적으로 사용하는 언어가 아닐뿐더러 OOP의 중요 개념들이 한번에 정의 내리기가 어렵다. 프로그래밍을 시작한지 얼마되지 않아 "객체 지향의 사실과 오해" 라는 책을 읽은 적이 있다. 읽으면서 이게 철학책인지 기술서적인지 굉장히 혼란스웠다. 저자는 이상한 나라의 앨리스에서 나오는 등장인물을 통해 OOP에서 사용하는 개념인 캡슐화, 상속, 책임, 메세지와 같은 단어들의 개념을 하나씩 설명해준다. 물론 익숙한 이..

Paradigm/OOP-t 2021.06.25