기존의 절차지향 프로그래밍은 데이터와 함수가 분리되어 있어 프로그램의 구조가 복잡해지고 유지보수가 어려워지는 단점이 있었다. 이러한 문제를 해결하기 위해 객체지향 프로그래밍(OOP)이 등장하였으며, 이는 객체를 중심으로 소프트웨어를 구성하는 방법이다. OOP는 데이터를 포함한 객체를 통해 관련된 기능을 묶어 관리함으로써 코드의 재사용성과 모듈화를 촉진하고, 프로그램의 이해도를 높인다. Unity를 예를 들면, Player라는 클래스를 정의하고 이 클래스에 체력이나 점수같은 멤버 변수들을 포함시키고 TakeDamage()와 IncreaseScore()와 같은 멤버 함수를 통해 플레이어의 상태와 행동을 관리할 수 있다. 이러한 방식으로 각 객체는 자신만의 속성과 기능을 가지게 되어, 복잡한 게임 시스템을 보..