개발스토리

코딩 일기_객체 지향 프로그래밍 개요 본문

node.js

코딩 일기_객체 지향 프로그래밍 개요

무루뭉 2020. 7. 6. 23:13

오늘날에 프로그래밍 언어(Java, Python, PHP, C# etc)는 객체지향 프로그래밍을 지원한다. 

 

객체지향 프로그래밍은 더 나은 프로그램으로 만들기 위해 로직을 상태와 행위로 이루어진 객체로 만드는 것이다.

 

이 객체들을 퍼즐처럼 맞추어서 하나의 프로그램을 만드는 것이 객체지향 프로그래밍이라고 할 수 있다.

 

각 객체는 메시지를 받을 수도 있고, 데이터 처리를 할 수 있으며, 또 다른 객체와 메시지를 주고 받을 수 있다. 이런 것들이 인터페이스가 일어나는 것이라고 보면 된다.

따라서, 각 객체는 별도의 역할을 갖고 책임을 가지는 작은 독립된 부품이라고 볼 수 있다.

이러한 부품들은 사용자가 사용하는 방법만 알면 쓸 수 있어야 한다. 따라서 내부의 동작 방법을 안으로 숨기고 사용자에게는 부품의 사용법을 알려주고 있는 것이다. 이러한 것을 정보의 은닉화 혹은 캡슐화(Encapsulation)라고 한다.

 

현실에서 관심 있는 특징을 소프트웨어화 시켜서 문제를 해결하는 것을 프로그래밍이라고 한다.

 

문제점은 현실은 많이 복잡하고, SW는 보다 단순하다는 것이다.

 

예를 들어 보자.

 

우리는 현실에 많고 복잡한 지하철 역을 보다 간편하게 지하철 노선도로 표현한다.

이처럼, 보다 복잡한 현실에서 필요로 하는 것만을 추출하여 단순화 시킨 것을 추상화(abstract)라고 한다. 

즉, 복잡한 것에서 필요한 것만을 추출하는 행위(단순화시킨다는 것)를 추상화라고 하는 것이다. 

 

 

 

 

 

 

'node.js' 카테고리의 다른 글

서버로서의 노드  (0) 2020.12.02
노드의 개요  (0) 2020.12.01
Node.js , Mongoose 이용한 간단한 CRUD 사이트  (0) 2020.10.02
코딩 일기_객체 지향 프로그래밍  (2) 2020.07.07
코딩 일기  (0) 2020.07.06
Comments