세상에 이상을 더하다.

지금, Rooti와 함께라면.

Rooti는 상상을 만드는 공방입니다.

Lecture/Java

(Procedural || Object-Oriented) Programming

nanun_u.l_0 2023. 1. 19. 15:10
절차지향 (Procedural Programming)

 

대표적 언어 :

C

 

특징 :

그 이름 그대로 "절차"가 중요함. MBTI의 J의 성향 100%, 코드의 순서를 매우 중요하게 여김

 

장점 :

컴퓨터의 정보 처리과정과 유사하여 그 속도가 빠름

 

단점 :

일단 객체지향보다 뭐가 좋은지 잘 모르겠음 ( 지극히 개인적인 주관입니다. ) ,

유지보수가 어려움, 순서를 너무 중요시하다 보니 play it by ear를 못함; 언어의 융통성이 없음


객체지향 ( Object-Oriented Programming )

 

대표적 언어 :

C#, Java 등등

 

특징 :

그 이름 그대로 "객체"가 중요함. 근데 이 객체라는 게 상당히 편한 것이, 예를 들어서 버X킹에서

음식을 주문받는 프로그램을 만들고 싶다고 하자. 그러면 그 소비자의 정보( 멤버십, 가지고 있는 쿠폰, 소비자 ID 등등 ), 주문한 버거의 정보( 이름, 가격, 할인율, 재료 등등 )를 각각의 "객체"로 만들어서 그 객체를 따로따로 만드는 거임.

얼마나 좋습니까?!

 

장점 :

유지보수가 깔끔함( 각 객체들이 구분되어 있어서 눈에 잘 보임 ), 세상에 존재하는 모습 그대로 객체를 만들어 프로그래밍이 가능해 직관적임(유지보수와 이유가 비슷), 하나를 만들어 놓으면 정말 다양하게 사용할 수 있음

 

단점 :

절차지향보다 처리 속도가 느림, 개발할 때 많은 시간이 사용됨, 좀 어려울 수도 있음

 

자, 너도 외쳐라 객체 최고! 객체 최고!

객체의 악마

반응형