1개월차 - 컴퓨터 구조
1주차
- 컴퓨터의 구성 요소
- CPU란?
- RAM이란?
- SSD와 HDD 차이
- 레지스터(Register)
- ALU
- 제어장치(Control Unit)
2주차
- 명령어 사이클
- Fetch
- Decode
- Execute
- 인터럽트
- 시스템 콜
- DMA
3주차
- 캐시 메모리
- Cache Hit
- Cache Miss
- L1 Cache
- L2 Cache
- L3 Cache
- 캐시 지역성(Locality)
4주차
- 시간 지역성
- 공간 지역성
- 파이프라이닝
- 병렬 처리
- 멀티코어
- 클럭 속도
- 컴퓨터 구조 정리
2개월차 - 운영체제
1주차
- 운영체제란
- 프로세스
- PCB
- 프로세스 상태
- Context Switching
- 멀티 프로세스
- 프로세스 생성
2주차
- 스레드
- 프로세스 vs 스레드
- 멀티 스레드
- Race Condition
- Critical Section
- 동기화
- Mutex
3주차
- Semaphore
- Spin Lock
- Deadlock
- Deadlock 발생 조건
- Deadlock 해결 방법
- Starvation
- Livelock
4주차
- 메모리 구조
- Stack
- Heap
- Data 영역
- Code 영역
- 가상 메모리
- Paging
3개월차 - 네트워크
1주차
- 네트워크란
- IP 주소
- MAC 주소
- Port
- Socket
- Packet
- Routing
2주차
- TCP
- UDP
- TCP 장점
- UDP 장점
- TCP vs UDP
- 게임에서 UDP 사용하는 이유
- 신뢰성 전송
3주차
- 3-Way Handshake
- 4-Way Handshake
- Flow Control
- Congestion Control
- Sliding Window
- RTT
- Latency
4주차
- HTTP
- HTTPS
- DNS
- NAT
- Load Balancer
- CDN
- 네트워크 정리
4개월차 - 자료구조 & 알고리즘
1주차
- 배열
- Vector
- Linked List
- Singly Linked List
- Doubly Linked List
- 시간복잡도
- Big-O
2주차
- Stack
- Queue
- Deque
- Priority Queue
- Heap
- Max Heap
- Min Heap
3주차
- Hash
- Hash Table
- Collision
- Tree
- Binary Tree
- BST
- Trie
4주차
- Graph
- DFS
- BFS
- Dijkstra
- Greedy
- DP
- 알고리즘 정리
5개월차 - C++
1주차
- 변수
- 참조자
- 포인터
- nullptr
- const
- static
- extern
2주차
- 클래스
- 객체
- 생성자
- 소멸자
- 복사 생성자
- 이동 생성자
- 연산자 오버로딩
3주차
- 캡슐화
- 상속
- 다형성
- 가상 함수
- Virtual Table
- Override
- Pure Virtual
4주차
- Stack Memory
- Heap Memory
- new
- delete
- RAII
- Smart Pointer
- unique_ptr
추가
- shared_ptr
- weak_ptr
- Deep Copy
- Shallow Copy
- Rule of 3
- Rule of 5
6개월차 - 게임 프로그래밍 + 언리얼
게임 프로그래밍
- Game Loop
- Tick
- Delta Time
- FPS
- Collision
- Raycast
- AABB
- OBB
- 벡터
- 내적
- 외적
- 정규화
- 거리 계산
- 선형 보간(Lerp)
AI
- FSM
- State Pattern
- Behavior Tree
- Blackboard
- AI Perception
언리얼
- UObject
- AActor
- APawn
- ACharacter
- Controller
- PlayerController
- AIController
- GameMode
- GameState
- PlayerState
- UPROPERTY
- UFUNCTION
- UCLASS
- Garbage Collection
- Replication
“캐시 지역성이 뭔가요?”
“프로세스와 스레드 차이는?”
“가상 함수가 왜 필요한가요?”
“언리얼의 UPROPERTY는 왜 쓰나요?”