c++ = OOP(클래스) + G.P(STL)

**절차 지향 프로그래밍

  • 동사 중심의 언어 (함수)

**객체 지향 프로그래밍

  • 주어 중심의 언어 (클래스)
  • 절차 지향에 비해 용량이 크고 속도가 느림
  • 유지보수가 훨씬 용이함

**객체

  • 현실에 존재하는 어떠한 대상을 프로그래밍 언어로 표현해 놓은 상태
  • 인스턴스(실제 메모리에 할당되어 있는 상태) + 클래스(사용자 정의 자료형)
  • 클래스 = 데이터(변수, 상수) + 기능(함수)

**추상화

  • 실제 사물이 가진 공통된 요소를 뽑아내는 작업

객체 지향 프로그래밍이란?

추상화를 통해 얻은 데이터를 클래스에 담아 객체를 생성하여 조립하는 방식