절차지향과 객체지향

송민지·2023년 4월 4일
0

cs스터디

목록 보기
15/18

절차지향

  • 프로그램의 전체 과정에서 필요한 자료형이나 구조체를 초기에 정의한 후 처음부터 순차적인 과정을 통해 수행되는 프로그래밍
    (폭포수 처럼 위에서 아래로 내려간다 생각하면 되는건가?)
  • 프로시저 호출의 개념을 바탕으로 하고있는 프로그래밍 패러다임이라고도 한다.

주요 프로그래밍 언어

  • COBOL
  • FORTRAN
  • C
  • PASCAL

절자치향의 장점

  • 실행 속도가 빠르다

절차지향의 단점

  • 소프트웨어를 제작할 때 프로그램들간에 중복성이 나타난다
  • 개발된 후 유지보수가 어렵다
  • 절차지향 언어들은 대용량의 프로그램을 구축할 때 프로시저들간의 독립성을 보장받지 못한다
  • 소프트웨어 구성방식이 제어흐름 방시게 의거하여 복잡한 구성 요소들 사이에서 오류가 발생할 때 오류가 파급되는 양상을 보였다(side-effects)
  • 명령을 실행하는 순서가 자주 바뀌거나 복잡해지면 운영 비용이 많이 든다

객체지향

  • 프로그램들을 객체들의 집합과 그 객체들의 상호작용으로 표기하는 프로그래밍 기법
  • 추상자료형, 객체, 클래스, 상속, 정보은닉, 다형성, 재사용등의 개념들을 바탕으로 탄생

주요 객체지향 언어

  • SmallTalk
  • JAVA
  • C++
  • PYTHON
  • RUBY

객체지향의 장점

  • 프로그램을 유연하고 변경이 쉽게 만들기 때문에 대규모 소프트웨어 개발에 유리
  • 유지보수가 간편하고 직관적인 코드분석이 가능

객체지향의 단점

  • 지나친 객체화는 실제 세계를 그대로 반영하지 못함
  • 실행 속도가 느리다

이준경;조창현;이동길;최완;송영기;김영시 ⌜객체지향 프로그래밍 개념 및 패러다임⌟ 전자통신동향분석 = Electronics and telecommunications trends v.8 no.1 , 1993년, pp.45 - 68

객체지향 프로그래밍? 문과도 이해쌉가능. 10분컷.

profile
기록하는 일상

0개의 댓글