"깊이"가 다른 게임개발자 허민영

유저에서 게임까지, 철학에서 코딩까지, 본질을 보는 게임개발

2025/02/14 2

객체지향 맥락잡기

1. 절차형 프로그래밍 패러다임의 탄생프로그래밍의 근본을 탐구하면 결국 메모리와 연산으로 귀결되지만, 이 글에서는 절차형 프로그래밍의 핵심 구조인 변수와 프로시저부터 시작하겠다.명령형 프로그래밍 패러다임에는 데이터와 커맨드라는 두 가지 요소가 근본적으로 존재한다. 모든 코드는 데이터이거나 커맨드이다.(물론 더 본질적으로는 다 데이터이지만 넘어가자.) 단순히 데이터를 나열하고 커맨드를 실행하면 프로그램은 동작하지만, 이는 인간이 이해하고 유지하기에는 지나치게 복잡하다.인간의 인지적 한계를 극복하기 위해, 우리는 개념을 도입했다. 데이터를 쉽게 다루기 위해 변수(variable) 를, 커맨드를 쉽게 다루기 위해 프로시저(procedure) 를 정의했다.이제 데이터는 변수를 통해, 커맨드는 프로시저를 통해 다..

[프로그래밍] 자주 쓰는 클래스 개념과 간략한 설명

1. 데이터 및 모델 관련 클래스1-1. Entity – 데이터베이스의 테이블과 매핑되는 도메인 객체1-2. Model – 비즈니스 로직에 맞게 가공된 데이터를 표현하는 객체1-3. DTO (Data Transfer Object) – 계층 간 데이터 교환을 위한 가변(mutable) 객체1-4. VO (Value Object) – 변경 불가능한(immutable) 값 객체, 도메인 로직을 포함할 수도 있음1-5. Repository – 데이터베이스에서 Aggregate 또는 Entity를 조회하고 저장하는 인터페이스1-6. AggregateRoot – DDD에서 Aggregate의 루트 역할을 하며, 자신을 통해서만 내부 엔티티에 접근 가능1-7. State – 상태 패턴에서 객체의 상태를 표현하는 클래..