본문 바로가기

TIL

25_Step : 객체지향과 절차지향 프로그래밍

객체지향적 프로그래밍

정의 : 객체(예를들어, 모니터, 마우스, 키보드, 본체)등을 캡슐화, 다형성, 상속 등을 활용하여(조립) 완전한 컴퓨터(기능)를 만드는 것.

객체지향언어는 여러 개의 객체를 만들고, 이 객체들끼리 상호작용을 하여 기능을 구현하도록 만드는 언어이다.

대표적인 언어 : java, python 등

 

장점

-독립된 객체들의 조립으로 이루어져 있어서 유지 보수가 용이하다.

-상속 등을 통한 코드 재사용으로 편리하다.

단점

-개발속도가 느리다.

-실행속도가 느리다.

 

 

절차적 프로그래밍

정의 : 순차적인 흐름에 의해 코드가 실행되어 가는 것.(예를들어, 노트북처럼 allinone으로 구성되어 있기 때문에 정해진 순서에 맞게 조립되어야 한다.)

컴퓨터의 작업 처리 방식과 유사하기 때문에 속도가 좀 더 빠르다.

대표적인 언어 : C 등

 

장점

-실행속도가 빠르다.

-프로그램을 순차적으로 만들어서 흐름을 추적하기가 쉽다.

단점

-유지보수가 어렵다.(디버깅도 힘듬)

순서에 맞춰 조립 되었기 때문에 고장이 나면 역순으로 다 뜯어봐야한다.

-코드 재사용 힘듬

모든 코드가 순서에 맞춰 연결되어 있기 때문에 중간에 새로운 코드를 넣고 빼기가 어렵다.

'TIL' 카테고리의 다른 글

27_Step : 스프링 시큐리티(쿠키&세션)  (0) 2021.11.09
26_Step : DI & IoC  (0) 2021.11.09
24_Step : java의 살짝쿵 팁  (0) 2021.11.04
23_Step : java & java spring boot  (0) 2021.11.04
22_Step : api gateway & RDS  (0) 2021.11.02