1
객체 지향 프로그래밍 (OOP) 개념
객체 지향 프로그래밍은 프로그램을 만들 때 기능보다는 객체를 중심으로 생각하는 프로그래밍 패러다임입니다.
C++에서 클래스는 데이터와 동작을 묶어 사용자 정의 타입을 만드는 기본 단위입니다. 객체 지향 설계에서는 각 객체가 어떤 상태를 보관하고 어떤 책임을 맡는지 먼저 정합니다.
관련 데이터와 동작을 하나의 클래스로 묶을지 판단하고, 객체가 맡을 책임을 정리합니다.
객체 지향 프로그래밍은 프로그램을 만들 때 기능보다는 객체를 중심으로 생각하는 프로그래밍 패러다임입니다.
클래스는 객체를 생성하기 위한 설계도 또는 틀(blueprint)입니다.
객체는 클래스라는 설계도를 바탕으로 메모리에 실제로 생성된 실체(instance)입니다.
OOP의 캡슐화(Encapsulation)는 데이터(멤버 변수)와 그 데이터를 조작하는 코드(멤버 함수)를 하나의 단위(클래스)로 묶는 것을 의미합니다.