CS(Computer science) - 상식(절차지향, 객체지향)

HJ-C·2023년 1월 2일
post-thumbnail

절차지향(Procedural Programming)

절차지향 프로그래밍이란 물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시되며 프로그램 전체가 유기적으로 연결되도록 만든느 프로그램이 기법.(C언어)


장점

  • 컴퓨터의 처리구조와 유사해 실행속도가 빠름

단점

  • 유지보수가 어려움
  • 실행 순서가 정해져있어 코드의 순서가 바뀌면 동일한 결과를 보장하기 어려움
  • 디버깅이 어려움

객체지향(Object Oriented Programming)

객체지향은 실제 세계를 모델링하여 소프트웨어를 개발하는 방법. 즉 절차에 따라 진행되는게 아니라 자판기라는 객체가 돈을받고 돈을 받게돠면 검사하고 잔돈이나 어떤 제품을 줄지 결정하는 식으로 객체들의 상호작용으로 프로그래밍이 진행되는 방식


객체지향의 특징

  1. 캡슐화
    • 클래스의 내부 변수와 메소드를 하나로 패키징하는 특징
  2. 상속
    • 객체가 다른 객체를 상속받아 상속받은 객체의 요소를 사용하는 것
  3. 다형성
    • 하나의 객체가 여러 가지 타입을 가질 수 있는 것

장점

  • 코드의 재활용성이 높음
  • 코딩이 절차지향보다 간편함
  • 디버깅이 쉬움

단점

  • 처리속도가 절차지향보다 느림
  • 설계에 많은 시간소요가 듦


profile
생각을 기록하자

0개의 댓글