본문으로 건너뛰기
Previous
Next
기술 용어 사전 | pkglog

기술 용어 사전

프로그래밍과 개발에서 자주 사용되는 기술 용어를 알기 쉽게 정리했습니다.
약어의 의미와 개념을 빠르게 확인하세요.

TLE

알고리즘

Time Limit Exceeded. 시간 제한 초과로 알고리즘이 주어진 시간 내에 실행을 완료하지 못한 상태

동의어: Time Limit Exceeded

MLE

알고리즘

Memory Limit Exceeded. 메모리 제한 초과로 프로그램이 허용된 메모리를 초과하여 사용한 상태

동의어: Memory Limit Exceeded

Big O

알고리즘

알고리즘의 시간 복잡도나 공간 복잡도를 나타내는 점근 표기법. 입력 크기에 따른 성능 변화를 표현

동의어: Big-O, Big O Notation

DP

알고리즘

Dynamic Programming. 동적 계획법. 중복 부분 문제를 메모이제이션(Top-Down) 또는 테이블(Bottom-Up)로 저장해 재사용. O(2^n) → O(n^2) 최적화. 피보나치, LCS, LIS, 배낭 문제. "최대/최소", "경우의 수" 키워드

동의어: Dynamic Programming, 동적 계획법, 다이나믹 프로그래밍

DFS

알고리즘

Depth-First Search. 깊이 우선 탐색. 그래프/트리를 깊이 우선으로 방문. 스택(재귀 또는 명시적 스택) 사용. 백트래킹, 사이클 검사, 위상 정렬, 경로 탐색에 활용. 최단 경로 보장 안 함(BFS 사용). O(V+E) 시간복잡도

동의어: Depth-First Search, 깊이 우선 탐색

BFS

알고리즘

Breadth-First Search. 너비 우선 탐색. 그래프/트리를 레벨 순으로 방문. 큐 사용. 최단 경로 보장(가중치 없는 그래프). 레벨 순회, 최단 거리, 가장 가까운 노드 찾기에 최적. O(V+E) 시간복잡도

동의어: Breadth-First Search, 너비 우선 탐색

Greedy

알고리즘

탐욕 알고리즘. 매 순간 최선의 선택(지역 최적)을 반복. 전역 최적해 보장 불가(반례 확인 필수). 활동 선택, 동전 교환(특정 조건), 최소 신장 트리(Kruskal, Prim). 정렬 + 그리디 패턴 흔함. DP 대비 빠르나 증명 필요

동의어: Greedy Algorithm, 탐욕 알고리즘

Backtracking

알고리즘

백트래킹. 모든 경우의 수를 탐색하되 조건에 맞지 않으면 되돌아가는 알고리즘 기법

동의어: 백트래킹

Binary Search

알고리즘

정렬된 배열에서 O(log n) 시간복잡도로 값을 찾는 탐색 알고리즘. 중간값(mid)과 비교 후 탐색 범위를 절반씩 줄임. Lower Bound(이상), Upper Bound(초과), 파라메트릭 서치(최적화→결정 문제 변환) 응용. 정렬 필수

동의어: 이진 탐색, 이분 탐색

Two Pointers

알고리즘

투 포인터. 배열이나 리스트에서 두 개의 포인터를 사용하여 효율적으로 탐색하는 기법

동의어: 투 포인터, 두 포인터

Sliding Window

알고리즘

슬라이딩 윈도우. 고정 크기 또는 가변 크기의 윈도우를 이동시키며 부분 배열을 처리하는 기법

동의어: 슬라이딩 윈도우

Stack

알고리즘

Last-In-First-Out (LIFO) 자료구조. 가장 나중에 넣은 것이 먼저 나옴. push(삽입), pop(제거), peek(조회) O(1). 배열 또는 연결 리스트 구현. 함수 호출 스택, 괄호 검사, DFS, 되돌리기(Undo), 계산기 구현에 사용

동의어: 스택, LIFO

Queue

알고리즘

First-In-First-Out (FIFO) 자료구조. 먼저 넣은 것이 먼저 나옴. enqueue(삽입), dequeue(제거) O(1). 원형 버퍼 또는 연결 리스트 구현. BFS, 프린터 대기열, 작업 스케줄링, 메시지 큐에 사용

동의어: 큐, FIFO

Hash Table

알고리즘

키-값 쌍 저장 자료구조. 해시 함수로 키→인덱스 변환, 평균 O(1) 검색/삽입/삭제. 충돌 해결: Chaining(연결 리스트), Open Addressing(선형 탐사). Load Factor(적재율) 0.75 넘으면 리사이징. Python dict, C++ unordered_map, Java HashMap

동의어: 해시 테이블, HashMap, HashSet, dict

Linked List

알고리즘

노드가 포인터로 연결된 선형 자료구조. 동적 크기 조정 가능

동의어: 연결 리스트

Tree

알고리즘

계층적 구조의 자료구조. 루트 노드에서 시작하여 자식 노드로 분기

동의어: 트리

Graph

알고리즘

노드와 간선으로 이루어진 자료구조. 네트워크, 관계 표현에 사용

동의어: 그래프

Heap

알고리즘

완전 이진 트리 기반 자료구조. 부모≥자식(Max Heap) 또는 부모≤자식(Min Heap). 최댓값/최솟값 O(1) 조회, O(log n) 삽입/삭제. 우선순위 큐 구현. Heapify, Heap Sort. 배열로 구현(i의 자식: 2i+1, 2i+2)

동의어: 힙, Priority Queue, 우선순위 큐

AVL Tree

알고리즘

자가 균형 이진 탐색 트리. 모든 노드의 좌우 서브트리 높이 차이가 1 이하로 유지

동의어: AVL 트리

SEO

Search Engine Optimization. 검색 엔진 최적화. 웹사이트가 검색 결과에서 더 높은 순위를 차지하도록 개선하는 작업

동의어: Search Engine Optimization, 검색 엔진 최적화

API

Application Programming Interface. 소프트웨어 간 상호작용 규약. 함수, 클래스, HTTP 엔드포인트 등. REST API(HTTP), gRPC(RPC), GraphQL(쿼리 언어) 등. 클라이언트가 서버 기능을 호출하는 인터페이스. 공개 API(Twitter, Google Maps), 내부 API

동의어: Application Programming Interface, Web API

REST

Representational State Transfer. HTTP 기반 API 아키텍처 스타일. 리소스(URI), 메서드(GET/POST/PUT/DELETE), 무상태(Stateless), 캐시 가능. JSON 주로 사용. CRUD 매핑: GET(조회), POST(생성), PUT(수정), DELETE(삭제). RESTful 원칙

동의어: RESTful, REST API, RESTful API

GraphQL

클라이언트가 필요한 데이터만 요청할 수 있는 쿼리 언어 및 API 런타임. Facebook에서 개발

gRPC

Google Remote Procedure Call. 구글이 개발한 고성능 RPC 프레임워크. Protocol Buffers 사용

동의어: Google RPC

JSON

JavaScript Object Notation. 경량 데이터 교환 형식. 사람이 읽기 쉽고 기계가 파싱하기 쉬운 텍스트 기반 형식

동의어: JavaScript Object Notation

XML

eXtensible Markup Language. 확장 가능한 마크업 언어. 데이터를 구조화하여 저장하고 전송하는 형식

동의어: eXtensible Markup Language

YAML

YAML Ain't Markup Language. 사람이 읽기 쉬운 데이터 직렬화 형식. 설정 파일에 주로 사용

SPA

Single Page Application. 단일 페이지로 구성된 웹 애플리케이션. 페이지 전환 없이 동적으로 콘텐츠 업데이트

동의어: Single Page Application

SSR

Server-Side Rendering. 서버에서 HTML을 생성하여 클라이언트에 전송하는 렌더링 방식. SEO와 초기 로딩 성능 향상

동의어: Server-Side Rendering, 서버 사이드 렌더링

CSR

Client-Side Rendering. 클라이언트(브라우저)에서 JavaScript로 HTML을 생성하는 렌더링 방식

동의어: Client-Side Rendering, 클라이언트 사이드 렌더링

SSG

Static Site Generation. 빌드 타임에 정적 HTML을 생성하는 방식

동의어: Static Site Generation, 정적 사이트 생성

Hydration

하이드레이션. 서버에서 렌더링된 정적 HTML에 클라이언트 JavaScript를 연결하여 인터랙티브하게 만드는 과정

동의어: 하이드레이션

JAMstack

JavaScript, APIs, Markup의 약자. 정적 사이트 생성과 API를 활용한 현대적인 웹 아키텍처

CORS

Cross-Origin Resource Sharing. 브라우저 Same-Origin Policy를 우회하는 메커니즘. 서버가 Access-Control-Allow-Origin 헤더로 허용. Preflight(OPTIONS) 요청으로 사전 검증. 다른 도메인 API 호출 시 필수

동의어: Cross-Origin Resource Sharing

React

Meta(Facebook) 개발 UI 라이브러리. 컴포넌트 기반, JSX 문법, Virtual DOM으로 효율적 렌더링. Hooks(useState, useEffect), 단방향 데이터 흐름. Next.js(SSR), Vite(빌드). 세계 1위 프론트엔드 라이브러리

동의어: 리액트, React.js

Next.js

React 기반 풀스택 프레임워크. SSR, SSG, API Routes 등을 제공

동의어: 넥스트

Vue

프로그레시브 JavaScript 프레임워크. 점진적으로 적용 가능한 UI 구축 도구

동의어: Vue.js, Vuejs

Angular

Google이 개발한 TypeScript 기반 웹 애플리케이션 프레임워크

Svelte

컴파일 타임에 최적화되는 프론트엔드 프레임워크. Virtual DOM 없이 동작

Hook

React에서 함수 컴포넌트에 상태와 생명주기 기능을 추가하는 함수

동의어: React Hook, 훅

Virtual DOM

실제 DOM의 가벼운 복사본. React가 효율적인 렌더링을 위해 사용하는 메모리 내 표현

동의어: 가상 DOM

TypeScript

Microsoft가 개발한 JavaScript의 상위 집합. 정적 타입 시스템을 추가하여 컴파일 타임에 타입 오류를 잡음. 함수 계약이 명확해져 코드 리뷰 시 리뷰어의 추론 비용 감소. 리팩터링 시 타입 오류로 영향 범위 추적

동의어: TS

Webpack

모듈 번들러. 여러 JavaScript 파일을 하나로 묶어 최적화

동의어: 웹팩

Vite

빠른 개발 서버와 빌드 도구. ESM 기반으로 즉각적인 HMR 제공

Tailwind CSS

유틸리티 우선 CSS 프레임워크. 미리 정의된 클래스로 빠른 스타일링

동의어: Tailwind

Node.js

Chrome V8 엔진 기반 JavaScript 런타임. 서버 사이드 JavaScript 실행

동의어: NodeJS, Node

Express

Node.js 웹 애플리케이션 프레임워크. 미들웨어 기반 라우팅 제공

동의어: Express.js

Middleware

요청과 응답 사이에서 실행되는 함수. 인증, 로깅 등에 사용

동의어: 미들웨어

Component

UI를 구성하는 독립적이고 재사용 가능한 코드 조각. React, Vue 등에서 사용

동의어: 컴포넌트

State

컴포넌트가 관리하는 동적 데이터. 변경 시 UI가 자동으로 업데이트됨

동의어: 상태

Props

Properties. 부모 컴포넌트에서 자식 컴포넌트로 전달되는 읽기 전용 데이터

동의어: Properties

OOM

시스템

Out Of Memory. 시스템 메모리가 부족하여 프로그램이 더 이상 메모리를 할당받지 못하는 상태

동의어: Out Of Memory

Bit

시스템

Binary Digit. 0 또는 1의 값을 가지는 컴퓨터 데이터의 최소 단위

동의어: 비트

Byte

시스템

8개의 비트로 구성된 데이터 단위. 하나의 문자를 표현

동의어: 바이트

KB

시스템

Kilobyte. 1,000바이트(10^3). 파일 크기 표시에 사용

동의어: 킬로바이트

MB

시스템

Megabyte. 1,000,000바이트(10^6). 파일 크기 표시에 사용

동의어: 메가바이트

GB

시스템

Gigabyte. 1,000,000,000바이트(10^9). 저장 용량 표시에 사용

동의어: 기가바이트

KiB

시스템

Kibibyte. 1,024바이트(2^10). 이진 단위 표기

동의어: 키비바이트

MiB

시스템

Mebibyte. 1,048,576바이트(2^20). 이진 단위 표기

동의어: 메비바이트

GiB

시스템

Gibibyte. 1,073,741,824바이트(2^30). 이진 단위 표기

동의어: 기비바이트

CPU

시스템

Central Processing Unit. 중앙 처리 장치. 컴퓨터의 두뇌 역할을 하며 명령어를 실행하는 하드웨어

동의어: Central Processing Unit, 중앙 처리 장치

GPU

시스템

Graphics Processing Unit. 그래픽 처리 장치. 병렬 처리에 특화된 프로세서로 그래픽 렌더링과 AI 연산에 사용

동의어: Graphics Processing Unit, 그래픽 처리 장치

RAM

시스템

Random Access Memory. 임의 접근 메모리. 프로그램 실행 중 데이터를 임시로 저장하는 휘발성 메모리

동의어: Random Access Memory

SSD

시스템

Solid State Drive. 반도체 기반 저장 장치. 기계식 하드디스크보다 빠른 읽기/쓰기 속도

동의어: Solid State Drive

AWS

시스템

Amazon Web Services. 아마존이 제공하는 클라우드 컴퓨팅 플랫폼

동의어: Amazon Web Services

EC2

시스템

Elastic Compute Cloud. AWS의 가상 서버 서비스. 클라우드에서 컴퓨팅 리소스를 제공

동의어: Elastic Compute Cloud

S3

시스템

Simple Storage Service. AWS의 객체 스토리지 서비스. 파일을 클라우드에 저장하고 관리

동의어: Simple Storage Service

Lambda

시스템

AWS의 서버리스 컴퓨팅 서비스. 서버 관리 없이 코드를 실행

동의어: AWS Lambda

I/O Multiplexing

시스템

하나의 프로세스가 여러 I/O 작업을 동시에 모니터링하는 기법. select, epoll, kqueue 등

동의어: I/O 멀티플렉싱

epoll

시스템

Linux의 I/O 이벤트 알림 메커니즘. select/poll보다 효율적으로 대량의 파일 디스크립터 처리

Mutex

시스템

Mutual Exclusion. 상호 배제 락. 공유 자원을 한 번에 한 스레드만 접근하도록 보장. lock() 획득, unlock() 해제. Critical Section(임계 영역) 보호. 소유권 있음(락 건 스레드만 해제). Deadlock, Priority Inversion 주의

동의어: 뮤텍스, Lock

Thread

시스템

프로세스 내 실행 단위. 같은 프로세스의 메모리(Code, Data, Heap) 공유, Stack만 독립. Context Switch 빠름(프로세스 대비). pthread(POSIX), Java Thread, C++ std::thread. 동기화(Mutex, Semaphore) 필요. Race Condition, Deadlock 주의

동의어: 스레드

Process

시스템

실행 중인 프로그램 인스턴스. 독립적 메모리 공간(Code, Data, Heap, Stack). PID(Process ID)로 식별. fork()로 생성, exec()로 프로그램 교체. PCB(Process Control Block)로 상태 관리. Context Switch 비용 높음

동의어: 프로세스

Bash

시스템

Bourne Again Shell. Linux/macOS의 기본 명령줄 셸. 스크립트 작성과 자동화에 사용

동의어: Bourne Again Shell

Shell Script

시스템

셸에서 실행되는 명령어들을 모아놓은 스크립트 파일. 반복 작업 자동화

동의어: 셸 스크립트

Cron

시스템

Unix 계열 시스템에서 주기적으로 작업을 실행하는 스케줄러

동의어: 크론

Environment Variable

시스템

운영체제에서 프로세스에 전달되는 동적 값. 설정 정보 저장에 사용

동의어: 환경 변수

PATH

시스템

실행 파일을 찾기 위한 디렉토리 목록을 담은 환경 변수

SQL

데이터베이스

Structured Query Language. 관계형 데이터베이스에서 데이터를 관리하기 위한 표준 질의 언어

동의어: Structured Query Language

NoSQL

데이터베이스

Not Only SQL. 비관계형 데이터베이스 총칭. Key-Value(Redis), Document(MongoDB), Column-Family(Cassandra), Graph(Neo4j). 유연 스키마, 수평 확장, CAP 정리(일관성 vs 가용성 트레이드오프). ACID 대신 BASE(Basically Available, Soft state, Eventually consistent)

동의어: Not Only SQL

ACID

데이터베이스

Atomicity(원자성), Consistency(일관성), Isolation(격리성), Durability(지속성). RDBMS 트랜잭션 안전성 4대 속성. 원자성: All-or-Nothing. 일관성: 제약 조건 유지. 격리성: 동시 실행 간섭 없음. 지속성: COMMIT 후 영구 보존

CAP Theorem

데이터베이스

CAP 정리. 분산 시스템에서 일관성(Consistency), 가용성(Availability), 분할 내성(Partition tolerance) 중 2가지만 동시에 만족할 수 있다는 이론

동의어: CAP 정리

ORM

데이터베이스

Object-Relational Mapping. 객체 지향 프로그래밍 언어에서 관계형 데이터베이스를 객체처럼 다루게 해주는 기술. SQL을 직접 작성하지 않고 코드로 쿼리를 표현. SQL 인젝션 자동 방지, 타입 안전성, 데이터베이스 마이그레이션 자동화

동의어: Object-Relational Mapping

CRUD

데이터베이스

Create, Read, Update, Delete. 데이터베이스의 기본 작업 4가지를 나타내는 약어

Index

데이터베이스

데이터베이스 검색 속도 향상 자료구조. B+Tree(MySQL InnoDB), LSM-Tree(RocksDB), Hash(PostgreSQL) 등. 책 색인처럼 컬럼 값→디스크 위치 매핑. WHERE, JOIN 성능 개선하나 INSERT/UPDATE 느림. Clustered(PK 정렬), Secondary(별도 저장)

동의어: 인덱스, DB Index

Transaction

데이터베이스

데이터베이스 논리적 작업 단위. ACID(원자성, 일관성, 격리성, 지속성) 보장. BEGIN→COMMIT/ROLLBACK. 격리 수준: Read Uncommitted, Read Committed, Repeatable Read, Serializable. MVCC(다중 버전 동시성 제어)로 락 최소화

동의어: 트랜잭션

N+1 Problem

데이터베이스

쿼리 1번으로 N개 데이터를 가져온 후, 각 데이터마다 추가 쿼리 N번을 실행하는 성능 문제

동의어: N+1 쿼리 문제

JOIN

데이터베이스

두 개 이상의 테이블을 연결하여 데이터를 조회하는 SQL 연산

동의어: 조인

Primary Key

데이터베이스

테이블에서 각 행을 고유하게 식별하는 컬럼. 중복과 NULL 불가

동의어: 기본 키, PK

Foreign Key

데이터베이스

다른 테이블의 기본 키를 참조하는 컬럼. 테이블 간 관계 정의

동의어: 외래 키, FK

Normalization

데이터베이스

데이터 중복을 제거하고 무결성을 보장하기 위해 테이블을 분리하는 과정

동의어: 정규화

Denormalization

데이터베이스

성능 향상을 위해 의도적으로 데이터 중복을 허용하는 기법

동의어: 비정규화

Sharding

데이터베이스

샤딩. 데이터베이스를 수평적으로 분할하여 여러 서버에 분산 저장하는 기법

동의어: 샤딩

Replication

데이터베이스

복제. 데이터베이스의 데이터를 여러 서버에 복사하여 가용성과 성능을 높이는 기법

동의어: 복제, 레플리케이션

MongoDB

데이터베이스

문서 지향 NoSQL 데이터베이스. JSON 형식으로 데이터 저장

Redis

데이터베이스

인메모리 키-값 저장소. 캐싱, 세션 관리, 실시간 데이터 처리에 사용

PostgreSQL

데이터베이스

오픈소스 관계형 데이터베이스. 고급 기능과 확장성 제공

동의어: Postgres

MySQL

데이터베이스

오픈소스 관계형 데이터베이스. 웹 애플리케이션에 널리 사용

RDS

데이터베이스

Relational Database Service. AWS의 관리형 관계형 데이터베이스 서비스

동의어: Relational Database Service

HTTP

네트워크

HyperText Transfer Protocol. OSI 7계층(응용 계층) 클라이언트-서버 통신 프로토콜. TCP 80번 포트. 요청(GET/POST/PUT/DELETE)과 응답(200/404/500) 구조. 무상태(Stateless), 텍스트 기반. HTTP/1.1(지속 연결), HTTP/2(멀티플렉싱), HTTP/3(QUIC) 진화

동의어: HyperText Transfer Protocol, HTTP/1.1, HTTP/2, HTTP/3

HTTPS

네트워크

HTTP Secure. SSL/TLS로 암호화된 HTTP 프로토콜. 안전한 데이터 전송 보장

동의어: HTTP Secure

TCP

네트워크

Transmission Control Protocol. OSI 4계층(전송 계층) 연결 지향 프로토콜. 3-way 핸드셰이크로 연결 수립, 순서 보장, 재전송, 흐름 제어, 혼잡 제어 제공. HTTP, SSH, FTP 등 신뢰성 필요 애플리케이션 사용. UDP 대비 느리나 안정적

동의어: Transmission Control Protocol

UDP

네트워크

User Datagram Protocol. OSI 4계층 비연결형 프로토콜. 핸드셰이크 없이 데이터그램 즉시 전송. 순서 보장/재전송 없음. 낮은 지연으로 DNS, VoIP, 게임, 라이브 스트리밍 사용. QUIC(HTTP/3)는 UDP 위에 신뢰성 추가

동의어: User Datagram Protocol

DNS

네트워크

Domain Name System. 도메인 이름(example.com)을 IP 주소(93.184.216.34)로 변환하는 분산 계층형 시스템. UDP 53번 포트 (512바이트 초과 시 TCP). 루트→TLD→권한(Authoritative)→재귀 서버 계층. A, AAAA, CNAME, MX, TXT 레코드

동의어: Domain Name System

IP

네트워크

Internet Protocol. 인터넷에서 데이터 패킷을 전송하기 위한 네트워크 계층 프로토콜

동의어: Internet Protocol

VPN

네트워크

Virtual Private Network. 공용 네트워크를 통해 안전한 사설 네트워크 연결을 제공하는 기술

동의어: Virtual Private Network

CDN

네트워크

Content Delivery Network. 콘텐츠를 지리적으로 분산된 서버에 캐싱하여 빠르게 제공하는 네트워크

동의어: Content Delivery Network

WebSocket

네트워크

HTTP 핸드셰이크 후 TCP 연결 유지, 양방향 실시간 통신 프로토콜. ws:// 또는 wss:// (암호화). 폴링 대비 낮은 지연, 적은 오버헤드. 채팅, 실시간 알림, 게임, 주식 시세. Socket.IO는 WebSocket + 폴백 라이브러리

동의어: 웹소켓

WebRTC

네트워크

Web Real-Time Communication. 브라우저 간 실시간 오디오/비디오 통신을 위한 기술

동의어: Web Real-Time Communication

RTMP

멀티미디어

Real-Time Messaging Protocol. Adobe가 개발한 TCP 기반 저지연 스트리밍 프로토콜. 1935번 포트 사용. 청크(Chunk) 단위 전송으로 멀티플렉싱 지원. 라이브 스트리밍 인제스트(Ingest) 사실상 표준. Flash 종료 후에도 OBS→서버 업로드 프로토콜로 현역

동의어: Real-Time Messaging Protocol, RTMPS, RTMPT

HLS

멀티미디어

HTTP Live Streaming. Apple이 2009년 개발한 HTTP 기반 적응형 스트리밍 프로토콜. M3U8 플레이리스트 + TS/fMP4 세그먼트 구조. ABR(Adaptive Bitrate) 지원으로 네트워크 상태에 따라 화질 자동 조절. IETF RFC 8216 표준. 가장 널리 사용되는 스트리밍 프로토콜

동의어: HTTP Live Streaming, HLS.js

DASH

멀티미디어

Dynamic Adaptive Streaming over HTTP. MPEG가 표준화한 HTTP 기반 적응형 스트리밍 프로토콜. MPD(Media Presentation Description) XML + fMP4/WebM 세그먼트. 코덱 중립적 설계. HLS의 오픈 표준 경쟁자. YouTube, Netflix가 주력 사용

동의어: MPEG-DASH, Dynamic Adaptive Streaming over HTTP

CMAF

멀티미디어

Common Media Application Format. ISO/IEC 23000-19 표준. HLS와 DASH를 통합한 공통 fMP4 패키징 포맷. 단일 인코딩으로 HLS/DASH 동시 지원. Chunked-CMAF로 저지연 스트리밍 가능 (2~3초). Apple과 Microsoft가 공동 주도

동의어: Common Media Application Format, Chunked CMAF

WebRTC

멀티미디어

Web Real-Time Communication. W3C/IETF 표준 실시간 P2P 통신 프레임워크. 브라우저 간 비디오/오디오/데이터 전송. ICE, STUN, TURN으로 NAT 통과. SDP로 미디어 협상. 0.1~0.5초 초저지연. Zoom, Discord, Google Meet 핵심 기술

동의어: Web Real-Time Communication, RTC

SRT

멀티미디어

Secure Reliable Transport. Haivision이 개발한 UDP 기반 저지연 스트리밍 프로토콜. UDT(UDP-based Data Transfer) 기반으로 패킷 손실 복구, 재전송, AES 암호화 지원. RTMP 대체 목적. 0.5~2초 지연. 원격 중계, 기여(Contribution) 인코딩 표준

동의어: Secure Reliable Transport, SRT Protocol

MSE

멀티미디어

Media Source Extensions. W3C 표준 JavaScript API. <video>/<audio> 태그에 동적으로 미디어 세그먼트를 공급. HLS/DASH 플레이어 구현 핵심 기술. SourceBuffer로 fMP4/WebM 청크 추가. ABR 로직을 JavaScript로 구현 가능

동의어: Media Source Extensions, MediaSource API

ABR

멀티미디어

Adaptive Bitrate Streaming. 네트워크 대역폭과 기기 성능에 따라 비디오 화질을 실시간 자동 조절하는 스트리밍 기술. HLS/DASH의 핵심 기능. 다중 비트레이트 인코딩 + 플레이어 알고리즘(BOLA, throughput-based)으로 구현

동의어: Adaptive Bitrate, 적응형 비트레이트, Adaptive Streaming

CDN

멀티미디어

Content Delivery Network. 지리적으로 분산된 서버 네트워크로 사용자에게 가까운 엣지 서버에서 콘텐츠 전송. 오리진 서버 부하 감소, 지연 시간 단축. HLS/DASH 스트리밍 필수 인프라. Cloudflare, Akamai, AWS CloudFront 등

동의어: Content Delivery Network, Content Distribution Network

Socket

네트워크

네트워크 통신을 위한 엔드포인트. IP 주소와 포트 번호로 식별되는 통신 접점

동의어: 소켓

Load Balancer

네트워크

여러 서버에 트래픽을 분산시켜 부하를 균등하게 배분하는 시스템

동의어: 로드 밸런서

Reverse Proxy

네트워크

클라이언트 요청을 받아 백엔드 서버로 전달하는 중간 서버. Nginx, HAProxy 등

동의어: 리버스 프록시

SSL Certificate

네트워크

HTTPS 통신을 위한 디지털 인증서. 웹사이트의 신원을 확인하고 암호화 제공

동의어: SSL 인증서

Port

네트워크

네트워크에서 프로세스를 식별하는 번호. 0-65535 범위

동의어: 포트

Localhost

네트워크

자기 자신의 컴퓨터를 가리키는 호스트명. IP 주소 127.0.0.1

동의어: 로컬호스트

Proxy

네트워크

클라이언트와 서버 사이에서 요청을 중계하는 서버

동의어: 프록시

NAT

네트워크

Network Address Translation. 사설 IP를 공인 IP로 변환하는 기술

동의어: Network Address Translation

Docker

DevOps

컨테이너 기반 가상화 플랫폼. 애플리케이션과 의존성을 이미지로 패키징, 격리된 컨테이너에서 실행. VM 대비 경량(공유 커널), 빠른 시작(초 단위). Dockerfile로 빌드, Docker Hub에서 공유. K8s, CI/CD 필수 도구

동의어: 도커

Kubernetes

DevOps

컨테이너 오케스트레이션 플랫폼. Docker 컨테이너를 클러스터(여러 노드)에 자동 배포, 스케일링, 장애 복구, 로드 밸런싱. Pod(컨테이너 그룹), Service(네트워크), Deployment(배포 관리). Google 개발, CNCF 관리

동의어: K8s, 쿠버네티스

CI/CD

DevOps

Continuous Integration/Continuous Deployment. 코드 커밋 시 자동 빌드/테스트(CI), 통과 시 자동 배포(CD). Jenkins, GitHub Actions, GitLab CI. 빠른 피드백, 버그 조기 발견, 배포 자동화로 개발 속도↑ 품질↑

동의어: Continuous Integration, Continuous Deployment, Continuous Delivery

Git

DevOps

분산 버전 관리 시스템. 코드 변경 이력을 추적하고 협업을 지원

동의어:

GitHub

DevOps

Git 저장소 호스팅 서비스. 코드 공유, 협업, CI/CD 기능 제공

동의어: 깃허브

Pull Request

DevOps

Git 기반 버전 관리 시스템에서 코드 변경 사항을 메인 브랜치에 병합하기 전에 검토를 요청하는 메커니즘. 코드 리뷰의 핵심 도구로, 팀원 간 비동기 협업과 지식 공유의 채널. GitLab에서는 Merge Request(MR)라고 부름

동의어: PR, Merge Request, MR

Branch

DevOps

Git에서 독립적인 작업 공간. 메인 코드에 영향 없이 개발 가능. 기능별로 브랜치를 나누고 PR을 통해 병합하는 것이 코드 리뷰의 기본 워크플로

동의어: 브랜치

Merge

DevOps

두 개 이상의 브랜치를 하나로 합치는 작업. 코드 리뷰가 완료되고 승인을 받은 후 PR을 메인 브랜치에 병합. CI 통과와 필수 코멘트 해소가 선행되어야 함

동의어: 머지, 병합

Rebase

DevOps

커밋 히스토리를 재작성하여 깔끔한 선형 히스토리를 만드는 Git 작업

동의어: 리베이스

Commit

DevOps

Git에서 변경 사항을 저장소에 기록하는 작업. PR은 하나 이상의 커밋으로 구성되며, 커밋을 의미 단위로 나누면 리뷰어가 변경 맥락을 이해하기 쉬움. 커밋 메시지는 "무엇을, 왜" 변경했는지 명확히 작성

동의어: 커밋

npm

DevOps

Node Package Manager. Node.js 패키지 관리 도구

동의어: NPM

Blue-Green Deployment

DevOps

블루-그린 배포. 두 개의 동일한 프로덕션 환경을 유지하며 무중단 배포를 수행하는 전략

동의어: 블루-그린 배포

Canary Deployment

DevOps

카나리 배포. 새 버전을 일부 사용자에게만 먼저 배포하여 테스트하는 전략

동의어: 카나리 배포

Rolling Deployment

DevOps

롤링 배포. 서버를 순차적으로 업데이트하여 무중단 배포를 수행하는 전략

동의어: 롤링 배포

Code Review

DevOps

다른 개발자가 작성한 코드를 검토하고 피드백을 주는 과정. 코드 품질 향상, 버그 발견, 지식 공유를 목적으로 함. PR(Pull Request)을 통해 이루어지며, 리뷰어가 코드 변경사항을 검토하고 승인 또는 수정 요청

동의어: 코드 리뷰, Peer Review

Draft PR

DevOps

Draft Pull Request. 병합 준비가 되지 않았지만, 초기 방향이나 설계를 먼저 공유하고 피드백을 받기 위한 PR 상태. 정식 리뷰 부담 없이 빠른 피드백 루프 형성

동의어: 초안 PR, WIP PR

Diff

DevOps

두 버전의 코드(또는 파일) 간 차이점을 보여주는 형식. +는 추가된 줄, -는 삭제된 줄을 나타냄. PR 리뷰 시 리뷰어가 보는 핵심 정보

동의어: 차이점, Difference

CODEOWNERS

DevOps

GitHub/GitLab에서 특정 경로나 파일의 "소유자"를 지정하는 파일 (.github/CODEOWNERS). 해당 영역이 변경되면 자동으로 리뷰 요청이 감. 병목 방지와 책임 소재 명확화

동의어: 코드 오너, Code Owners

Feature Flag

DevOps

코드에 조건문을 두어 특정 기능을 런타임에 켜고 끌 수 있게 하는 기법. 배포와 출시를 분리하여 미완성 기능을 main 브랜치에 병합 가능. A/B 테스트, 점진적 출시, 긴급 기능 비활성화에 활용

동의어: 기능 플래그, Feature Toggle

ESLint

DevOps

JavaScript/TypeScript의 정적 분석 도구. 코드 스타일과 잠재적 오류를 자동으로 검사하여 PR 리뷰가 로직에 집중할 수 있게 함. 규칙 커스터마이징 가능

동의어: 이에스린트

Prettier

DevOps

코드 포맷터로, 들여쓰기, 줄바꿈, 따옴표 등을 일관되게 자동 정리. "탭 vs 스페이스" 논쟁 종료. ESLint와 함께 사용하여 스타일은 Prettier, 로직 오류는 ESLint가 담당

동의어: 프리티어

Blocking Comment

DevOps

코드 리뷰에서 반드시 수정되어야 PR이 머지될 수 있는 필수 피드백. 보안, 버그, 정확성 이슈에 사용. Non-blocking Comment는 권장 사항으로 머지를 막지 않음

동의어: 블로킹 코멘트, Must Fix

Conventional Comments

DevOps

코드 리뷰 코멘트에 표준화된 레이블을 붙여 의도를 명확히 하는 방법론. question:, suggestion:, issue:, nitpick:, praise: 등의 접두어 사용. 작성자가 코멘트 의도를 빠르게 파악

동의어: 컨벤셔널 코멘트

Pair Review

DevOps

두 명의 리뷰어가 함께 코드를 보는 방식. 한 명은 세부 사항, 한 명은 큰 그림을 보거나, 시니어-주니어가 함께 리뷰. 복잡한 PR의 리뷰 품질 향상과 주니어 개발자 교육에 효과적

동의어: 페어 리뷰

Technical Debt

DevOps

기술 부채. 빠른 개발을 위해 품질을 희생한 결과, 나중에 더 큰 비용으로 되돌아오는 것. 임시방편 코드, 오래된 Feature Flag, 테스트 없는 코드, 문서화되지 않은 결정 등. 코드 리뷰로 사전 차단 가능

동의어: 기술부채, Tech Debt

XSS

보안

Cross-Site Scripting. 웹 애플리케이션에 악성 스크립트를 삽입하는 공격

동의어: Cross-Site Scripting, 크로스 사이트 스크립팅

CSRF

보안

Cross-Site Request Forgery. 사용자가 의도하지 않은 요청을 보내도록 유도하는 공격

동의어: Cross-Site Request Forgery, 크로스 사이트 요청 위조

SQL Injection

보안

SQL 인젝션. 사용자 입력을 검증 없이 SQL 쿼리에 직접 삽입할 때 발생하는 보안 취약점. 공격자가 임의의 SQL을 실행하여 데이터 유출, 변조, 삭제 가능. Prepared Statement나 ORM으로 방어

동의어: SQL 인젝션

Prepared Statement

보안

SQL 쿼리와 데이터를 분리해서 전송하는 방식. 데이터베이스가 쿼리 구조를 먼저 파싱하고, 데이터는 나중에 안전하게 바인딩. SQL 인젝션을 완벽 차단하며 같은 쿼리 반복 시 성능 향상

동의어: 준비된 문, Parameterized Query

SSL/TLS

보안

Secure Sockets Layer/Transport Layer Security. 네트워크 통신을 암호화하는 프로토콜

동의어: SSL, TLS

Hashing

보안

임의 크기의 데이터를 고정 크기의 값으로 변환하는 단방향 암호화 기법

동의어: 해싱, 해시

Encryption

보안

데이터를 암호화하여 권한이 없는 사용자가 읽을 수 없게 만드는 기법

동의어: 암호화

JWT

보안

JSON Web Token. Header(알고리즘), Payload(데이터), Signature(서명) 3부분 구조. Base64 인코딩. 서버 세션 불필요(Stateless), 서명으로 위변조 검증. Access Token(짧은 만료), Refresh Token(긴 만료) 조합. REST API 인증 표준

동의어: JSON Web Token

OAuth

보안

제3자 앱에 비밀번호 노출 없이 권한 위임하는 인증 프로토콜. "Google로 로그인" 구현 표준. Authorization Code, Implicit, Client Credentials, Password 4가지 Grant Type. Access Token + Refresh Token. OpenID Connect(OIDC)는 OAuth 2.0 확장

동의어: OAuth 2.0, OAuth2

Firewall

보안

네트워크 트래픽을 모니터링하고 차단하는 보안 시스템

동의어: 방화벽

IDE

일반

Integrated Development Environment. 통합 개발 환경. 코드 편집, 디버깅, 빌드 등을 통합한 개발 도구

동의어: Integrated Development Environment, 통합 개발 환경

CLI

일반

Command Line Interface. 명령줄 인터페이스. 텍스트 명령어로 프로그램을 제어하는 사용자 인터페이스

동의어: Command Line Interface, 명령줄 인터페이스

GUI

일반

Graphical User Interface. 그래픽 사용자 인터페이스. 아이콘, 버튼 등 시각적 요소로 프로그램을 제어하는 인터페이스

동의어: Graphical User Interface, 그래픽 사용자 인터페이스

SDK

일반

Software Development Kit. 소프트웨어 개발 키트. 특정 플랫폼이나 프레임워크를 위한 개발 도구 모음

동의어: Software Development Kit

Refactoring

일반

코드의 외부 동작은 유지하면서 내부 구조를 개선하는 작업. 가독성과 유지보수성 향상. 코드 리뷰에서 리팩터링은 별도 PR로 분리하는 것이 좋으며, 기능 추가와 섞지 않아야 리뷰가 쉬움

동의어: 리팩토링

Debugging

일반

프로그램의 버그를 찾아 수정하는 과정. 오류 원인을 분석하고 해결. 코드 리뷰는 코드가 배포되기 전에 잠재적 버그를 발견하여 디버깅 비용을 줄이는 효과적인 방법

동의어: 디버깅

Compilation

일반

소스 코드를 기계어나 중간 코드로 변환하는 과정. 컴파일러가 수행

동의어: 컴파일

Runtime

일반

프로그램이 실행되는 시점 또는 실행 환경. 컴파일 타임과 대비되는 개념

동의어: 런타임

Syntax

일반

프로그래밍 언어의 문법 규칙. 코드를 작성하는 형식과 구조

동의어: 문법, 구문

Semantics

일반

프로그램 코드의 의미. 문법적으로 올바른 코드가 실제로 무엇을 수행하는지

동의어: 의미론

Interpreter

일반

소스 코드를 한 줄씩 읽어 즉시 실행하는 프로그램. Python, JavaScript 등

동의어: 인터프리터

Compiler

일반

소스 코드 전체를 기계어로 변환하는 프로그램. C, C++, Rust 등

동의어: 컴파일러

Garbage Collection

일반

사용하지 않는 메모리를 자동으로 회수하는 메모리 관리 기법

동의어: GC, 가비지 컬렉션

Memory Leak

일반

프로그램이 사용한 메모리를 해제하지 않아 메모리가 계속 증가하는 문제

동의어: 메모리 누수

Async/Await

일반

비동기 프로그래밍을 동기 코드처럼 작성할 수 있게 하는 문법. Promise 기반

동의어: 비동기

Promise

일반

비동기 작업의 최종 완료 또는 실패를 나타내는 객체. then/catch로 처리

동의어: 프로미스

Callback

일반

다른 함수에 인자로 전달되어 나중에 실행되는 함수

동의어: 콜백

Closure

일반

함수가 선언될 때의 스코프를 기억하여 외부 변수에 접근할 수 있는 함수

동의어: 클로저

Pointer

일반

메모리 주소를 저장하는 변수. C/C++에서 메모리를 직접 제어

동의어: 포인터

Reference

일반

변수의 별칭. 포인터와 달리 null이 될 수 없고 재할당 불가

동의어: 레퍼런스, 참조

RAII

일반

Resource Acquisition Is Initialization. 리소스 획득은 초기화. 객체의 생성자에서 리소스를 획득하고 소멸자에서 해제하는 C++ 패턴

동의어: Resource Acquisition Is Initialization

Smart Pointer

일반

스마트 포인터. 메모리를 자동으로 관리하는 C++ 포인터 래퍼. unique_ptr, shared_ptr, weak_ptr 등

동의어: 스마트 포인터

Move Semantics

일반

이동 의미론. C++11에서 도입된 기능으로 객체의 소유권을 효율적으로 이전하는 메커니즘

동의어: 이동 의미론

Perfect Forwarding

일반

완벽한 전달. 템플릿 함수에서 인자를 원본 타입 그대로 다른 함수로 전달하는 C++ 기법

동의어: 완벽한 전달

Template

일반

타입을 매개변수로 받는 제네릭 프로그래밍 기능. C++, Java 등

동의어: 템플릿, Generic

Template Metaprogramming

일반

템플릿 메타프로그래밍. C++ 템플릿을 사용하여 컴파일 타임에 코드를 생성하는 기법

동의어: 템플릿 메타프로그래밍, TMP

STL

일반

Standard Template Library. C++의 표준 라이브러리. 컨테이너, 알고리즘, 반복자 제공

동의어: Standard Template Library

Unit Test

일반

개별 함수나 모듈을 독립적으로 테스트하는 기법. 코드 리뷰에서 새로운 기능이나 버그 수정에 대한 테스트 추가 여부를 확인하는 것이 중요. CI/CD에서 자동 실행되어 PR 품질을 보장

동의어: 유닛 테스트, 단위 테스트

Integration Test

일반

여러 모듈이 함께 동작하는지 테스트하는 기법. API 엔드포인트, 데이터베이스 연동 등 시스템 간 통합을 검증. 코드 리뷰에서 외부 시스템과의 상호작용 변경 시 통합 테스트 추가 확인

동의어: 통합 테스트

E2E Test

일반

End-to-End Test. 사용자 관점에서 전체 시스템을 테스트하는 기법

동의어: End-to-End Test, E2E 테스트

TDD

일반

Test-Driven Development. 테스트를 먼저 작성하고 코드를 구현하는 개발 방법론

동의어: Test-Driven Development

Mock

일반

테스트에서 실제 객체를 대신하는 가짜 객체. 의존성 격리에 사용

동의어: 모킹, Mocking

pip

일반

Python 패키지 설치 도구. PyPI에서 패키지를 다운로드하고 관리

동의어: Pip

Virtual Environment

일반

Python 프로젝트별로 독립된 패키지 환경을 제공하는 도구

동의어: 가상 환경, venv

Decorator

일반

함수나 클래스를 수정하지 않고 기능을 추가하는 디자인 패턴

동의어: 데코레이터

Generator

일반

값을 하나씩 생성하는 이터레이터. yield 키워드로 구현

동의어: 제너레이터

List Comprehension

일반

Python에서 리스트를 간결하게 생성하는 문법

동의어: 리스트 컴프리헨션

LLM

일반

Large Language Model. 대규모 텍스트 데이터로 학습된 언어 모델. GPT, Claude 등

동의어: Large Language Model

Prompt Engineering

일반

AI 모델에서 원하는 결과를 얻기 위해 입력 프롬프트를 최적화하는 기법

동의어: 프롬프트 엔지니어링

Fine-tuning

일반

사전 학습된 모델을 특정 작업에 맞게 추가 학습시키는 과정

동의어: 파인튜닝

Token

일반

LLM에서 텍스트를 처리하는 기본 단위. 단어의 일부 또는 전체

동의어: 토큰

Context Window

일반

LLM이 한 번에 처리할 수 있는 최대 토큰 수

동의어: 컨텍스트 윈도우

Codec

멀티미디어

Coder-Decoder의 합성어. 디지털 데이터를 압축(인코딩)하여 저장/전송하고, 재생 시 원본으로 복원(디코딩)하는 알고리즘 및 구현체. 비디오(H.264, AV1), 오디오(AAC, Opus), 이미지(JPEG, WebP) 등 다양한 미디어 타입에 적용

동의어: 코덱, Coder-Decoder

Bitrate

멀티미디어

단위 시간당 처리되는 비트 수. 비디오/오디오 스트림에서 초당 전송되는 데이터 양을 의미하며 kbps, Mbps 단위 사용. CBR(Constant), VBR(Variable), ABR(Average) 방식 존재. 높을수록 화질/음질 향상되나 파일 크기 및 대역폭 증가

동의어: 비트레이트, Bit Rate, bps, kbps, Mbps

H.264

멀티미디어

AVC(Advanced Video Coding). MPEG-4 Part 10으로 표준화된 비디오 압축 코덱. 블록 기반 움직임 보상과 가변 블록 크기(4×4~16×16), 인트라 예측, 디블로킹 필터를 사용하여 이전 세대 대비 최대 50% 압축률 향상

동의어: AVC, MPEG-4 AVC, MPEG-4 Part 10

H.265

멀티미디어

HEVC(High Efficiency Video Coding). MPEG-H Part 2로 표준화된 차세대 비디오 압축 코덱. H.264 대비 동일 화질에서 약 50% 비트레이트 절감. CTU(Coding Tree Unit) 최대 64×64, 35가지 인트라 예측 모드, 개선된 움직임 보상과 SAO 필터 적용

동의어: HEVC, MPEG-H Part 2

VP9

멀티미디어

Google이 개발한 로열티 프리 오픈소스 비디오 코덱. VP8의 후속작으로 H.264 대비 50%, HEVC와 유사한 압축 효율. 64×64 슈퍼블록, 10가지 인트라 예측 모드, 8×8 ADST/DCT 변환 사용. YouTube의 4K 스트리밍 주력 코덱 (2013~2021)

동의어: VP9.0

AV1

멀티미디어

AOMedia Video 1. Alliance for Open Media(AOMedia)가 2018년 출시한 로열티 프리 오픈소스 비디오 코덱. VP9 대비 30%, HEVC 대비 50% 압축률 개선. 128×128 슈퍼블록, 71가지 인트라 예측 모드, CDEF/Restoration 필터 등 최신 압축 기술 총망라

동의어: AOMedia Video 1

MP4

멀티미디어

MPEG-4 Part 14. ISO Base Media File Format(ISO BMFF) 기반 컨테이너. H.264/H.265/AV1 비디오, AAC/MP3/Opus 오디오 지원. Atom(Box) 구조로 메타데이터(moov), 미디어 데이터(mdat), 인덱스(stbl) 저장. 스트리밍 최적화(Fast Start) 가능

동의어: MPEG-4 Part 14, .mp4, M4V, M4A

WebM

멀티미디어

Google이 2010년 공개한 로열티 프리 오픈소스 컨테이너 포맷. Matroska(MKV) 기반 EBML 구조 사용. VP8/VP9/AV1 비디오, Vorbis/Opus 오디오만 허용. HTML5 <video> 표준 포맷으로 Chrome/Firefox 네이티브 지원

동의어: .webm

MPEG-TS

멀티미디어

MPEG Transport Stream. ISO/IEC 13818-1 표준 컨테이너. 188바이트 고정 패킷 구조로 에러 복원력 강함. DVB, ATSC 디지털 방송 표준. HLS 세그먼트 포맷 (레거시). 실시간 스트리밍과 방송 송출에 특화

동의어: Transport Stream, MPEG Transport Stream, .ts, M2TS

fMP4

멀티미디어

Fragmented MP4. ISO BMFF 기반 스트리밍 최적화 컨테이너. 단일 moov(초기화 세그먼트) + 다수 moof+mdat(미디어 세그먼트) 구조. HLS, DASH, CMAF 표준 포맷. TS 대비 효율적, HDR/멀티오디오 지원

동의어: Fragmented MP4, frag-MP4, .m4s, CMAF

MKV

멀티미디어

Matroska Video. 오픈소스 범용 컨테이너. EBML(Extensible Binary Meta Language) 기반 유연한 구조. 거의 모든 코덱, 무제한 트랙, 챕터, 첨부파일 지원. 고화질 보관 및 팬서브 표준

동의어: Matroska, .mkv, .mka, .mks

MOV

멀티미디어

QuickTime File Format. Apple이 개발한 멀티미디어 컨테이너. ISO BMFF 기반 (MP4와 구조 동일). ProRes, H.264, H.265 등 지원. Final Cut Pro, DaVinci Resolve 네이티브 포맷. MP4와 상호 호환 가능

동의어: QuickTime, .mov, .qt

AVI

멀티미디어

Audio Video Interleave. Microsoft가 1992년 개발한 레거시 컨테이너. RIFF(Resource Interchange File Format) 기반. DivX, Xvid 시대 주력 포맷. 4GB 파일 크기 제한, 가변 프레임레이트 미지원

동의어: .avi, Audio Video Interleave

FLV

멀티미디어

Flash Video. Adobe Flash Player 전용 컨테이너. H.264/VP6 비디오, AAC/MP3 오디오. 2000년대 웹 동영상 표준 (YouTube 초기). Flash 종료(2020)로 사실상 사멸. RTMP 스트리밍 컨테이너

동의어: .flv, Flash Video, F4V

Container Format

멀티미디어

비디오, 오디오, 자막, 메타데이터, 챕터 정보를 단일 파일에 멀티플렉싱하는 포맷. 코덱과 독립적으로 다양한 스트림을 패키징. MP4는 H.264/AAC, MKV는 거의 모든 코덱 지원. 파일 확장자와 컨테이너는 대체로 일치하나 .mp4 안에 H.265/Opus도 가능

동의어: 컨테이너 포맷, Wrapper Format, File Format

AAC

멀티미디어

Advanced Audio Coding. MPEG-2 Part 7 및 MPEG-4 Part 3로 표준화된 오디오 압축 코덱. MP3 대비 동일 비트레이트에서 약 30% 향상된 음질. 1024 샘플 MDCT 변환, 스펙트럴 밴드 복제(SBR), 파라메트릭 스테레오(PS) 등 고급 기술 적용

동의어: Advanced Audio Coding, MPEG-2 AAC, MPEG-4 AAC

GOP

멀티미디어

Group of Pictures. 비디오 압축에서 하나의 I-프레임(Intra, 키프레임)과 그 뒤를 따르는 P/B-프레임들로 구성된 독립적 단위. GOP 크기는 I-프레임 간격을 의미하며 압축률, 탐색 속도, 에러 복원력에 영향. GOP=30은 30프레임마다 키프레임 삽입

동의어: Group of Pictures, GoP

FFmpeg

멀티미디어

오픈소스 멀티미디어 프레임워크. 비디오/오디오 디코딩, 인코딩, 트랜스코딩, 스트리밍, 필터링 등 거의 모든 미디어 처리 가능. libavcodec(코덱), libavformat(컨테이너), libavfilter(필터), libswscale(스케일링) 등 라이브러리 제공. 500+ 코덱, 300+ 포맷 지원

Opus

멀티미디어

IETF가 표준화한 로열티 프리 오픈소스 오디오 코덱. 6kbps~510kbps 가변 비트레이트, 6kHz~48kHz 대역폭 지원. 음성과 음악 모두 최적화. Silk(음성) + CELT(음악) 하이브리드 구조. 5~120ms 저지연으로 VoIP, 스트리밍, 저장 등 모든 용도 대응

동의어: IETF Opus

MP3

멀티미디어

MPEG-1/MPEG-2 Audio Layer III. 1993년 출시된 손실 오디오 압축 코덱. 심리음향 모델 기반 MDCT 변환으로 원본 대비 약 1/10 압축. 32~320kbps 비트레이트. 특허 만료(2017)로 완전 무료. 가장 범용적인 오디오 포맷

동의어: MPEG-1 Audio Layer III, MPEG-2 Audio Layer III, .mp3

FLAC

멀티미디어

Free Lossless Audio Codec. 무손실 오디오 압축 코덱. 원본 대비 약 50~60% 압축, 완벽한 복원 가능. 선형 예측 코딩(LPC) 사용. 오픈소스, 로열티 프리. 24bit/192kHz 고해상도 오디오 지원. 고음질 보관 및 오디오파일 표준

동의어: Free Lossless Audio Codec, .flac

Vorbis

멀티미디어

Xiph.Org가 개발한 오픈소스 손실 오디오 코덱. MP3 대체 목적. MDCT 변환 기반, MP3/AAC 유사 음질에서 로열티 프리. OGG 컨테이너와 결합 (.ogg). 웹 게임, 오픈소스 프로젝트에서 사용

동의어: Ogg Vorbis, .ogg

OpenGL

일반

Open Graphics Library. 크로스 플랫폼 2D/3D 그래픽스 렌더링 API

동의어: Open Graphics Library

Vulkan

일반

저수준 그래픽스 API. OpenGL보다 세밀한 제어와 높은 성능 제공

DirectX

일반

Microsoft의 멀티미디어 API 모음. Windows 게임 개발에 주로 사용

Shader

일반

GPU에서 실행되는 작은 프로그램. 정점 변환, 픽셀 색상 계산 등을 수행

동의어: 셰이더

Vertex

일반

3D 공간의 점. 위치, 색상, 텍스처 좌표 등의 속성을 가짐

동의어: 정점

Texture

일반

3D 모델 표면에 입히는 이미지. 사실적인 렌더링을 위해 사용

동의어: 텍스처

FPS

일반

Frames Per Second. 초당 프레임 수. 높을수록 부드러운 화면 표시

동의어: Frames Per Second

Rendering

일반

3D 모델을 2D 이미지로 변환하는 과정. 조명, 텍스처, 그림자 등을 계산

동의어: 렌더링

Ray Tracing

일반

빛의 경로를 추적하여 사실적인 그래픽을 생성하는 렌더링 기법

동의어: 레이 트레이싱

Go

일반

Google이 개발한 오픈소스 프로그래밍 언어. 동시성 처리와 간결한 문법이 특징

동의어: Golang, 고

Rust

일반

메모리 안전성과 동시성을 보장하는 시스템 프로그래밍 언어. 소유권 시스템이 특징

동의어: 러스트

Goroutine

일반

Go 언어의 경량 스레드. 수천 개를 동시에 실행할 수 있을 정도로 효율적

동의어: 고루틴

Channel

일반

Go 언어에서 고루틴 간 통신을 위한 타입. 동시성 패턴 구현에 사용

동의어: 채널

Sanitizer

일반

메모리 오류, 데이터 레이스 등을 런타임에 검출하는 도구. ASan, UBSan 등

동의어: 새니타이저

Valgrind

일반

메모리 누수와 오류를 검출하는 동적 분석 도구. Linux에서 주로 사용

CMake

일반

크로스 플랫폼 빌드 시스템 생성 도구. C/C++ 프로젝트 빌드 관리

Make

일반

빌드 자동화 도구. Makefile을 읽어 컴파일과 링크를 수행

Undefined Behavior

일반

C/C++에서 결과가 정의되지 않은 동작. 컴파일러에 따라 다르게 동작할 수 있음

동의어: UB, 미정의 동작

Segmentation Fault

일반

잘못된 메모리 접근으로 인한 오류. C/C++에서 흔히 발생

동의어: 세그폴트, Segfault

Race Condition

일반

경쟁 조건. 여러 프로세스·스레드가 공유 자원에 동시 접근할 때, 실행 순서에 따라 결과가 달라지는 버그. 락(Mutex), 트랜잭션, 원자적 연산으로 해결. 비동기 코드에서 자주 발생

동의어: 경쟁 조건, Race

Type Safety

일반

타입 안전성. 컴파일 타임 또는 런타임에 데이터 타입이 보장되는 정도. TypeScript, Rust 같은 언어가 강한 타입 안전성을 제공. 코드 리뷰 시 리뷰어의 추론 부담을 줄이고 리팩터링을 안전하게 만듦

동의어: 타입 안전성, 타입 세이프

Breaking Change

일반

기존 API 사용자나 코드에 영향을 주어 호환성이 깨지는 변경 사항. 함수 시그니처 변경, API 응답 형식 변경, 환경 변수 추가/제거 등. Semantic Versioning에서 메이저 버전 업데이트. CHANGELOG와 마이그레이션 가이드 필수

동의어: 호환성 깨짐, 브레이킹 체인지

Big-O Notation

일반

Big-O 표기법. 알고리즘의 시간·공간 복잡도를 표현하는 수학 표기법. 입력 크기 n이 커질 때 실행 시간이 어떻게 증가하는지 나타냄. O(1), O(log n), O(n), O(n log n), O(n²), O(2ⁿ) 등

동의어: 빅오, 시간복잡도, 공간복잡도

Vertical Slice

일반

수직 슬라이스. 소프트웨어 아키텍처를 "계층"이 아닌 "기능"으로 수직으로 잘라내는 접근법. UI → API → DB까지 얇게, 하지만 완전하게 구현. 작은 PR을 만들고 각 PR이 독립적으로 배포 가능하게 함

동의어: 수직 슬라이스, Vertical Slicing

Working Memory

일반

작업 기억 용량. 인간이 동시에 처리할 수 있는 정보의 양으로, 심리학에서는 약 7±2개 항목. diff가 500줄이면 리뷰어가 추적 불가. 작은 PR, 명확한 네이밍이 리뷰 품질을 높이는 과학적 근거

동의어: 작업 기억, 작업 기억 용량

Lint

일반

린트. 소스 코드를 정적으로 분석해서 스타일, 문법 오류, 잠재적 버그를 찾아내는 도구의 총칭. ESLint, Pylint, golangci-lint 등. 코드 리뷰 전에 자동으로 실행하여 스타일 논쟁을 제거

동의어: 린트, Linter, 린터