단위 테스트(Unit Testing)란? - 안정적인 코드를 위한 필수 기법
단위 테스트(Unit Testing)란? 📌 학습 목표 단위 테스트의 개념과 필요성 이해 테스트 작성 방법론(AAA, TDD) 습득 Mock과 Stub을 활용한 격리된 테스트 작성 게임 개발에서의 테스트 적용 방법 학습 📌 정의 단위 테스트(Unit Testing)는 소프트웨어의 가장 작은 단위(메서드, 함수, 클래스)를 격리된 ...
단위 테스트(Unit Testing)란? 📌 학습 목표 단위 테스트의 개념과 필요성 이해 테스트 작성 방법론(AAA, TDD) 습득 Mock과 Stub을 활용한 격리된 테스트 작성 게임 개발에서의 테스트 적용 방법 학습 📌 정의 단위 테스트(Unit Testing)는 소프트웨어의 가장 작은 단위(메서드, 함수, 클래스)를 격리된 ...
디자인 패턴(Design Patterns)이란? 📌 학습 목표 디자인 패턴의 개념과 GOF 23개 패턴 이해 게임 개발에서 자주 사용되는 패턴들 파악 각 패턴의 장단점과 적절한 사용 시점 습득 실제 게임 프로젝트에서의 패턴 적용 사례 학습 📌 정의 디자인 패턴(Design Patterns)은 소프트웨어 설계에서 반복적으로 발생하는...
SOLID 원칙이란? 📌 학습 목표 SOLID 5가지 원칙의 개념과 필요성 이해 각 원칙을 위반했을 때의 문제점 파악 게임 개발에서의 실제 적용 사례 학습 리팩토링을 통한 SOLID 원칙 적용 방법 습득 📌 정의 SOLID는 객체지향 프로그래밍에서 유지보수가 쉽고 확장 가능한 소프트웨어를 만들기 위한 5가지 설계 원칙입니다. 로버...
의존성 주입(Dependency Injection)이란? 📌 학습 목표 의존성 주입의 개념과 필요성 이해 DI Container와 IoC 컨테이너 활용법 학습 게임 개발에서의 실제 적용 사례 파악 테스트 용이성과 유지보수성 향상 방법 습득 📌 정의 의존성 주입(Dependency Injection, DI)은 객체가 필요로 하는 의...
C++ 메모리 관리 (스택 vs 힙, 스마트 포인터, RAII) 📌 학습 목표 스택과 힙의 차이를 명확히 이해 스마트포인터 사용법 학습 RAII 개념과 활용 📝 개념 정리 1. 스택 (Stack) 함수 호출 시 자동으로 할당/해제되는 메모리 영역 지역 변수, 함수 인자 저장 LIFO 구조, 빠르지만 크기 제한이 있음...
vtable(virtual table) 📌 개념 정리 가상함수vptr이 참조하는 테이블. 클래스의 가상 함수 주소 목록을 저장. 실행 시 다형성을 보장. 💻 동작 흐름 객체 안의 vptr이 vtable 주소를 가리킴. 함수 호출 시 vtable을 참조해 실제 함수 실행. 예시 Dog 클래스의 vtable에는 Dog:...
가상 함수 vptr(virtual pointer) 📌 개념 정리 클래스에 virtual 함수가 있으면, 객체에 vptr(virtual pointer) 생성. vptr은 vtable을 가리키며 런타임에 함수 호출을 결정. 💻 예제 class Animal { public: virtual void Speak() { cout <&l...
using / await using 문법 정리 📌 학습 목표 C#의 IDisposable 패턴과 using 키워드의 관계를 이해한다. await using을 통해 IAsyncDisposable 자원을 안전하게 해제하는 방법을 설명한다. 코드 예제와 함께 using/await using의 내부 동작과 차이를 학습한다. 📌 기본 개념...
스마트 포인터(Smart Pointer) 📌 개념 정리 스마트 포인터: 포인터처럼 동작하지만, 객체의 소멸 시 자동으로 메모리 해제 C++11 이후 도입된 자동 메모리 관리 도구 C++11 이후 표준 제공: unique_ptr, shared_ptr, weak_ptr 핵심 아이디어: 참조 카운트, 소유권 개념을 이용하여 delete를 ...
RAII(Resource Acquisition Is Initialization) 📌 학습 목표 RAII 개념 이해 C++에서 객체 수명과 자원 관리의 연계성 학습 스마트포인터와의 관계 이해 📌 개념 정리 RAII: 객체의 생성(Initialization) 시 자원 획득(Acquisition), 소멸 시 해제 자원 획득이 초기...