Dev Terms

v0.dev (v0.app)

Vercel이 만든 AI 기반 UI 생성 도구. 자연어 프롬프트를 입력하면 React, Tailwind CSS, shadcn/ui 기반의 프론트엔드 코드를 즉시 생성해준다. 2023년 말 출시 이후 단순 컴포넌트 생성에서 풀스택 앱 빌더로 진화했으며, GitHub 연동과 Vercel 자동 배포를 지원한다. 현재 도메인은 v0.app으로 이전되었다.

간이과세자

연 매출 1억400만원 미만의 개인사업자가 선택할 수 있는 부가세 과세유형입니다. 일반과세자(부가세율 10%)와 달리 업종별 1.5~4% 수준의 낮은 부가세율을 적용받으며 부가세 신고도 연 1회로 줄어듭니다. 다만 매입세액 공제가 제한적이라 서버비나 장비 등 매입이 큰 사업은 일반과세자가 더 유리할 수 있습니다. 처음 등록 시 매출이 적다면 간이로 시작하고, 매출이 커지면 자동으로 일반과세자로 전환됩니다.

EC2 (Elastic Compute Cloud)

AWS가 제공하는 가상 서버 서비스로 클라우드 컴퓨팅의 사실상 표준 역할을 한다. 사용자는 인스턴스 타입(CPU·메모리·네트워크 조합)과 OS 이미지(AMI)를 선택해 몇 분 안에 서버를 띄울 수 있고, 시간 단위 또는 초 단위로 과금된다. 다양한 워크로드에 맞춘 인스턴스 패밀리(범용 T·M, 컴퓨팅 C, 메모리 R, GPU P·G 등)와 EBS·VPC·IAM 같은 주변 서비스가 결합돼 운영 유연성이 높다.

RLS (Row Level Security)

PostgreSQL의 행 수준 보안 기능입니다. 한 테이블 안에서 어떤 행을 누가 볼 수 있는지 정책으로 정의해 데이터베이스 레벨에서 자동 필터링합니다. Supabase는 이 기능을 적극 활용해 백엔드 서버 없이도 클라이언트가 직접 DB에 접근할 수 있게 만듭니다. RLS 정책을 한번 작성해두면 모든 쿼리에 자동 적용되어 휴먼 에러로 인한 보안 사고를 줄여줍니다.

Supabase

PostgreSQL을 기반으로 백엔드 기능을 한 번에 제공하는 오픈소스 BaaS(Backend as a Service) 플랫폼입니다. 데이터베이스, 인증, 파일 스토리지, 실시간 구독, 서버리스 함수를 통합 제공하며 Firebase의 오픈소스 대안으로 자주 언급됩니다. 스타트업과 개인 개발자가 빠르게 프로덕트를 출시할 때 인프라 부담을 크게 줄여주는 도구입니다.

웹 브라우저(Web Browser)

URL로 지정된 리소스를 가져와서 사용자에게 표현하는 프로그램. 크롬, 엣지, 파이어폭스, 사파리 등이 해당한다. 내부적으로는 렌더링 엔진(Blink, WebKit, Gecko)과 JavaScript 엔진(V8, JavaScriptCore, SpiderMonkey)으로 구성된다. 이름은 "웹 전용"처럼 들리지만 실제로는 HTTP, file, FTP 등 다양한 스킴으로 식별된 리소스를 다룰 수 있는 범용 리소스 뷰어에 가깝다.

Claude Code

Anthropic이 개발한 터미널 기반 에이전트 코딩 도구로, Claude 모델을 CLI에서 직접 호출해 코드 작성·수정·디버깅·리팩터링을 수행합니다. 단순 채팅이 아니라 파일 시스템 접근과 Bash 실행 권한을 가지고 실제 작업을 수행하는 에이전트이며, npm으로 설치해 `claude` 명령으로 사용합니다. Pro/Max 구독 또는 API 키로 인증합니다.

Swap

물리 메모리(RAM)가 부족할 때 디스크 공간을 임시 메모리처럼 사용하는 기술입니다. 실제 RAM보다 느리지만 메모리 부족으로 인한 프로세스 강제 종료(OOM Killer)를 막아줍니다. Swap은 파티션 형태와 파일 형태 두 가지로 구현할 수 있는데, 파일 형태는 유연하게 크기를 조정할 수 있어 최근 리눅스 배포판에서 많이 쓰입니다. 라즈베리파이처럼 메모리가 제한된 환경에서 특히 유용합니다.

Swap (스왑)

RAM이 부족할 때 디스크의 일부 공간을 메모리처럼 사용하는 기술이다. 물리 메모리가 가득 차면 덜 쓰이는 페이지를 Swap 영역으로 내려놓고 RAM을 확보한다. OOM Killer가 프로세스를 죽이기 전의 완충장치 역할을 하지만, 디스크 I/O가 발생하므로 RAM보다 훨씬 느리다. Swap이 과도하게 사용되면 thrashing이 발생하면서 시스템이 느려지기 때문에 "필요할 때만 최소한으로 쓰이는 것"이 이상적이다.

Metaspace

JVM이 로드된 클래스의 메타데이터(클래스 구조, 메서드 정보, 상수 풀 등)를 저장하는 네이티브 메모리 영역이다. Java 8부터 PermGen을 대체했으며 힙 바깥에 위치하므로 `-Xmx`에 포함되지 않는다. 기본적으로 상한이 없어 무한정 커질 수 있고, 이 때문에 `-XX:MaxMetaspaceSize`를 명시적으로 설정하지 않으면 OS 메모리를 모두 소진할 위험이 있다.

sudoers

`/etc/sudoers` 파일 또는 `/etc/sudoers.d/` 디렉터리 안의 설정 파일을 가리키는 용어로, sudo 명령의 권한 규칙을 정의한다. 어떤 사용자가 어떤 호스트에서 어떤 명령을 어떤 사용자 권한으로 실행할 수 있는지를 기술하며, 직접 편집할 때는 문법 오류로 시스템 접근이 잠기는 것을 막기 위해 반드시 `visudo` 명령을 사용해야 한다.

sudo

Substitute User Do의 약자로, 다른 사용자(주로 root)의 권한으로 명령을 실행할 수 있게 해주는 유닉스 계열 시스템의 핵심 명령입니다. 권한 상승 시 사용자의 비밀번호를 확인하고, 실행된 모든 명령은 로그에 기록되어 감사 추적이 가능합니다. 관리자 권한이 필요한 작업을 root 계정으로 직접 로그인하지 않고도 수행할 수 있게 해줍니다.

UserDetailsServiceAutoConfiguration

Spring Boot가 제공하는 자동 구성 클래스로, Spring Security가 클래스패스에 있고 사용자 정의 인증 빈이 없을 때 `InMemoryUserDetailsManager`와 랜덤 비밀번호를 가진 기본 계정(user)을 생성한다. 개발 초기 빠른 테스트를 위한 편의 기능이지만 prod 환경에서는 혼란을 일으킬 수 있어 JWT처럼 다른 인증 방식을 쓸 때는 명시적으로 비활성화하는 것이 바람직하다.

VC (Verifiable Credential, 검증 가능한 자격 증명)

특정 주체의 자격·속성·권한을 Issuer 가 디지털 서명하여 발급한 자격 증명. 자격증, 신분증, 졸업장, 면허증 등 실세계의 다양한 인증 정보를 디지털 형태로 표현할 수 있다. 서명이 포함되어 있어 제3자가 Issuer 공개키로 위변조 여부를 검증할 수 있고, 사용자는 이 VC 를 Wallet 에 보관했다가 필요할 때 Verifier 에게 제시한다.

DID (Decentralized Identifier)

중앙 기관에 의존하지 않고 사용자가 자신의 식별자를 직접 소유하고 통제하는 분산 신원 체계. `did:<method>:<identifier>` 형식의 URI 로 표현된다. 기존 중앙집중식 ID 체계와 달리 특정 플랫폼에 종속되지 않고 사용자가 여러 서비스에서 동일한 신원을 재사용할 수 있다. W3C 표준으로 명세되어 있으며 블록체인 등 분산 원장과 함께 사용되는 경우가 많다.

Play Billing Library와 AIDL 방식

안드로이드 인앱결제를 구현하는 공식 라이브러리입니다. 예전에는 앱이 Play 스토어 앱과 AIDL(Android Interface Definition Language)로 직접 통신하는 v2·v3 방식을 썼으나, 보안과 기능 확장을 위해 현재는 Billing Library 5.x·6.x(비-AIDL) 사용이 의무화됐습니다. Play Console은 AIDL 기반 코드가 포함된 앱에 경고를 띄우며 장기적으로 출시를 제한할 수 있습니다.

R8 (minifyRelease)

Android 빌드 파이프라인의 코드 축소·난독화·최적화 단계입니다. 사용하지 않는 클래스·메서드·리소스를 제거하고 식별자를 짧은 이름으로 바꿔 APK 크기를 줄이며 역공학 난이도를 높입니다. 참조만 있고 실제 클래스가 없는 경우 "Missing class" 에러를 내어 빌드가 중단되므로, 선택적 의존성을 가진 라이브러리와 자주 충돌합니다.

패키지명 (Package Name / Application ID)

Android에서 앱을 고유하게 식별하는 문자열로, 일반적으로 `com.회사명.앱명` 형태의 역도메인 표기법을 사용한다. Google Play Store에 등록된 후에는 변경이 불가능하므로 배포 전에 반드시 확정해야 한다. `android/app/build.gradle`의 `applicationId` 항목으로 지정된다.

FVM (Flutter Version Manager)

Flutter SDK의 버전을 프로젝트 단위로 관리하는 CLI 도구. 글로벌 버전과 로컬 버전을 분리해 관리하며, 여러 프로젝트가 서로 다른 Flutter 버전을 사용하는 환경에서 충돌 없이 안정적인 빌드를 가능하게 한다. `fvm global`로 기본 버전을 지정하고, `fvm use`로 프로젝트별 버전을 고정할 수 있다.

Agent-First (에이전트 퍼스트)

개발자가 직접 코드를 작성하는 대신 AI 에이전트에게 고수준 작업을 위임하고, 에이전트가 계획·실행·검증까지 자율적으로 처리하는 개발 패러다임. 기존 AI 어시스턴트가 코드를 제안하는 수동적 역할이었다면, 에이전트 퍼스트는 AI가 능동적으로 개발 흐름 전체를 주도한다는 점에서 패러다임 전환으로 평가받는다.

© 2026 Devez Blog