본문 바로가기

공부/컴퓨터

Object-oriented Programming(OOP) 개념 정리

1. OOP(Object-oriented Programming)

Object-oriendted Programiing은 프로그램을 구현하는 programming paradigm 중 하나이다. OOP에서는 'Objects'라는 개념을 바탕으로 한다. Objects는 C언어의 Structure처럼 Data를 포함할 수 있고, Objects가 할 수 있는 동작 등을 code로 작성해 포함한다. 우리는 Objects에서의 Data부분을 Fields, 그리고 Objects가 할 수 있는 행동들을 procedure로 작성한 것을 Methods라고 한다. OOP Language는 C++, C#, Java, Python, Smalltalk, PHP, Ruby 등이 있다.

2. OOP를 쓰는 이유

C언어 같은 Procedure Programming은 현실 세계의 문제를 해결하기 위한 프로그래밍을 하기에는 코드가 너무 길어지고 복잡해졌다. 이를 해결하기 위해 제안된 것이 OOP로, OOP를 사용하는 경우 Bottom-up 방식으로 부품(objects)을 만들고 그 부품을 조립해 가는 방법으로 빠르고, 간단하게 프로그래밍이 가능해진다. 이런 OOP의 장점을 정리하면, 다음과 같다.

1) Natural Modeling of Real-World Problems

2) Modularity

3) Software Re-usability

4) Parallelism


3. OOP의 특징

OOP의 기본은 각각의 Objects간 Message의 전달이다. Message Sending을 통해서 데이터 전달이 이루어지고, Method를 실행한다. 이러한 과정을 통해서 프로그램을 디자인한다.


Class의 개념

Inheritance

Polymorphism

Encapsulation

Information Hiding


반응형