절차지향 과 객체지향 

프로그래밍을 하기에 앞서 절차 지향이란 무엇이며 객체 지향이란 무엇인지

알고 프로그래밍을 할 필요가 있습니다.

절차지향과 객체지향 서로 무엇이다르며 지금은 왜 객체 지향을 쓰고있는지 

알아 보겠습니다.

 

객체지향이 나오기 이전 절차 지향 부터 알아보겠습니다.

 

절차 지향이란 (Procedural Programming )

Procedural Programming 이라 하며 Procedural 란 말은 여기서 절차라는 말은 오역이라고 합니다.

여기서 Procedural란

  • 프로그래밍에서 프로시저는 루틴이나,서브루틴 즉 함수이다. 

 

그렇다면 우리가 알고 있는 절차지향 은 순차적으로 내려가는게 아니라는걸까요?

 

모든 프로그램은 순차적으로 내려갑니다 그렇다고 객체지향이 아래에서 위로 코드를 읽지않는다는건 누구나 아는 사실입니다.

 

Procedural Programming 코드를 함수 또는 절차라는 작은 단위로 분할하여 재사용하기 쉽고 실행 흐름이 위에서 아래로 진행되도록합니다. 이 스타일은 이해하고 구현하기 쉽습니다. 

즉 함수 호출을 통해 추상화와 재사용성을 높이는 것이  Procedural Programming 입니다.

 

 

객체지향이란 (Object Oriented Programming)

객체 지향 기법 (Object Oriented Programming)의 정의를 보면 실제세계를 모델링한 소프트웨어 개발론이라고 나와있습니다.

그렇다면 실제 세계를 어떻게 개발한것이며 어떻게 프로그래밍을 해야 객체지향이라고 하는것일까요?

객체지향을 알려면 일단 객체 라는 것이 무엇인지 알아야 합니다.

객체(object)란

데이터(속성)과 이 데이터를 처리하귀위한 함수(메소드)를 결합 시킨 실체입니다.

실제 세계를 모델링을 한것이 객체지향기법이니 실제 세계를 표현해 

데이터 와 메소드를 설명 드리겠습니다.

여기서 객체 의 속성이라고 하면 그 사물이 가지고있는 고유한 데이터 입니다.

얘를 들면 요즘 핫한 일론머스크의 속성은 나이,키, 재산 , 학력 등등이있습니다.

그렇다면 메소드는 어떤것이있을까요. 일론머스크가 행동하는 것을 메소드라고 할수있겟습니다.

하지만 객체지향이란것은 이렇게 간단히 설명할수 없습니다.

 

 

 

속성은 객체들이 가지고 있는 데이터값을 단위별로 정의한것이고,

메소드는 구체적인 연산을 정의한것입니다.

 

 

 

 

 

'개발 > 개발지식' 카테고리의 다른 글

변수(Variable)란  (0) 2021.04.21
W3C  (0) 2021.04.17
하루하루 읽다보면 늘어가는 개발지식 조엘 온 소프트웨어편 4-1  (0) 2021.04.12

+ Recent posts