<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://www.gaonwiki.com/w/index.php?action=history&amp;feed=atom&amp;title=CRUD</id>
	<title>CRUD - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="https://www.gaonwiki.com/w/index.php?action=history&amp;feed=atom&amp;title=CRUD"/>
	<link rel="alternate" type="text/html" href="https://www.gaonwiki.com/w/index.php?title=CRUD&amp;action=history"/>
	<updated>2026-07-18T11:11:53Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://www.gaonwiki.com/w/index.php?title=CRUD&amp;diff=107993&amp;oldid=prev</id>
		<title>Gaon12: 시작</title>
		<link rel="alternate" type="text/html" href="https://www.gaonwiki.com/w/index.php?title=CRUD&amp;diff=107993&amp;oldid=prev"/>
		<updated>2025-12-14T12:53:44Z</updated>

		<summary type="html">&lt;p&gt;시작&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;C&amp;#039;&amp;#039;&amp;#039;reate, &amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;ead, &amp;#039;&amp;#039;&amp;#039;U&amp;#039;&amp;#039;&amp;#039;pdate, &amp;#039;&amp;#039;&amp;#039;D&amp;#039;&amp;#039;&amp;#039;elete&lt;br /&gt;
&lt;br /&gt;
== 개요 ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;CRUD&amp;#039;&amp;#039;&amp;#039;(크루드)는 데이터베이스나 애플리케이션에서 수행하는 4가지 기본 작업을 의미하는 약어이다. &lt;br /&gt;
&lt;br /&gt;
생성(&amp;#039;&amp;#039;&amp;#039;C&amp;#039;&amp;#039;&amp;#039;reate), 읽기(&amp;#039;&amp;#039;&amp;#039;R&amp;#039;&amp;#039;&amp;#039;ead), 수정(&amp;#039;&amp;#039;&amp;#039;U&amp;#039;&amp;#039;&amp;#039;pdate), 삭제(&amp;#039;&amp;#039;&amp;#039;D&amp;#039;&amp;#039;&amp;#039;elete)의 앞글자를 따서 만든 용어로, [[프로그래밍]]이나 [[데이터베이스]] 설계에서 가장 기초적이면서도 필수적인 개념이다.&amp;lt;ref&amp;gt;너무 기초적인 나머지 개발자 면접에서 &amp;quot;CRUD가 뭐예요?&amp;quot;라는 질문을 받으면 당황스러울 수 있다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 상세 ==&lt;br /&gt;
=== 역사 ===&lt;br /&gt;
CRUD라는 용어는 1983년 James Martin의 저서 &amp;quot;Managing the Data-base Environment&amp;quot;에서 처음 사용되었다. 이후 데이터베이스 시스템과 [[RESTful API]] 설계의 기본 원칙으로 자리잡았다.&lt;br /&gt;
&lt;br /&gt;
재미있게도, [[SQL]]에서는 CRUD를 각각 &amp;#039;&amp;#039;&amp;#039;INSERT&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;SELECT&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;UPDATE&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;DELETE&amp;#039;&amp;#039;&amp;#039;라는 명령어로 구현한다. 앞글자를 따면 ISUD가 되는데, 발음하기 어려워서인지 CRUD가 표준 용어로 굳어졌다.&amp;lt;ref&amp;gt;사실 Create는 INSERT뿐만 아니라 CREATE TABLE 같은 명령도 포함할 수 있어서 더 포괄적인 의미를 갖는다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 각 작업의 의미 ===&lt;br /&gt;
&lt;br /&gt;
==== Create (생성) ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;새로운 데이터를 만드는 작업&amp;#039;&amp;#039;&amp;#039;이다. &lt;br /&gt;
&lt;br /&gt;
* [[데이터베이스]]에서는 새로운 레코드(행)를 추가한다.&lt;br /&gt;
* [[SQL]]에서는 주로 &amp;#039;&amp;#039;&amp;#039;INSERT&amp;#039;&amp;#039;&amp;#039; 문을 사용한다.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;예시:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[가온 위키]]에 새 문서를 작성하는 행위&lt;br /&gt;
* [[인스타그램]]에 사진을 업로드하는 행위&lt;br /&gt;
* 회원가입을 할 때 새로운 사용자 정보가 데이터베이스에 저장되는 과정&lt;br /&gt;
* [[유튜브]]에 동영상을 업로드하는 행위&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
INSERT INTO users (name, email, age) &lt;br /&gt;
VALUES (&amp;#039;홍길동&amp;#039;, &amp;#039;hong@example.com&amp;#039;, 25);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Read (읽기) ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;저장된 데이터를 조회하는 작업&amp;#039;&amp;#039;&amp;#039;이다.&lt;br /&gt;
&lt;br /&gt;
* 가장 빈번하게 일어나는 작업이다.&amp;lt;ref&amp;gt;당신이 지금 이 문서를 보고 있는 것도 Read 작업이다!&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [[SQL]]에서는 &amp;#039;&amp;#039;&amp;#039;SELECT&amp;#039;&amp;#039;&amp;#039; 문을 사용한다.&lt;br /&gt;
* CRUD 중 유일하게 데이터를 변경하지 않는 작업이다.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;예시:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* 이 [[가온 위키]] 문서를 읽고 있는 당신의 행위&lt;br /&gt;
* [[네이버]]에서 검색 결과를 보는 행위&lt;br /&gt;
* [[쿠팡]]에서 상품 목록을 스크롤하는 행위&lt;br /&gt;
* [[카카오톡]] 대화 내역을 확인하는 행위&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SELECT * FROM users WHERE age &amp;gt;= 20;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Update (수정) ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;기존 데이터를 변경하는 작업&amp;#039;&amp;#039;&amp;#039;이다.&lt;br /&gt;
&lt;br /&gt;
* [[SQL]]에서는 &amp;#039;&amp;#039;&amp;#039;UPDATE&amp;#039;&amp;#039;&amp;#039; 문을 사용한다.&lt;br /&gt;
* 잘못 사용하면 &amp;#039;&amp;#039;&amp;#039;WHERE 절 빼먹기&amp;#039;&amp;#039;&amp;#039; 사고가 발생할 수 있다.~~그러면 모든 데이터가 똑같이 변한다~~&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;예시:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[가온 위키]] 문서를 수정하는 행위&lt;br /&gt;
* [[인스타그램]] 프로필 사진을 바꾸는 행위&lt;br /&gt;
* 비밀번호를 변경하는 행위&lt;br /&gt;
* 장바구니에 담긴 상품의 수량을 변경하는 행위&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
UPDATE users &lt;br /&gt;
SET age = 26 &lt;br /&gt;
WHERE name = &amp;#039;홍길동&amp;#039;;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;주의사항:&amp;#039;&amp;#039;&amp;#039; WHERE 절을 빼먹으면...&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
UPDATE users SET age = 26;&lt;br /&gt;
-- 모든 사용자의 나이가 26세가 된다. 끔찍하다.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Delete (삭제) ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;데이터를 제거하는 작업&amp;#039;&amp;#039;&amp;#039;이다.&lt;br /&gt;
&lt;br /&gt;
* [[SQL]]에서는 &amp;#039;&amp;#039;&amp;#039;DELETE&amp;#039;&amp;#039;&amp;#039; 문을 사용한다.&lt;br /&gt;
* ~~실수로 지우면 복구가 어려울 수 있어서 가장 무서운 작업이다~~&amp;lt;ref&amp;gt;그래서 실무에서는 실제로 삭제하지 않고 &amp;#039;deleted&amp;#039; 플래그만 true로 바꾸는 소프트 삭제(Soft Delete)를 많이 사용한다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;예시:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[페이스북]] 게시글을 삭제하는 행위&lt;br /&gt;
* [[트위터]]([[X]]) 트윗을 지우는 행위&lt;br /&gt;
* 회원 탈퇴를 하는 행위&lt;br /&gt;
* [[아마존]] 장바구니에서 상품을 제거하는 행위&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
DELETE FROM users WHERE name = &amp;#039;홍길동&amp;#039;;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;절대 하지 말아야 할 실수:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
DELETE FROM users;&lt;br /&gt;
-- WHERE 절이 없으면 테이블의 모든 데이터가 삭제된다.&lt;br /&gt;
-- 이 순간 당신의 커리어도 함께 삭제될 수 있다.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 실제 적용 ==&lt;br /&gt;
=== 웹 개발에서의 CRUD ===&lt;br /&gt;
거의 모든 웹 애플리케이션은 CRUD를 기반으로 동작한다고 해도 과언이 아니다.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;게시판을 예로 들면:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Create&amp;#039;&amp;#039;&amp;#039;: 게시글 작성&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Read&amp;#039;&amp;#039;&amp;#039;: 게시글 목록 보기, 게시글 상세보기&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Update&amp;#039;&amp;#039;&amp;#039;: 게시글 수정&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Delete&amp;#039;&amp;#039;&amp;#039;: 게시글 삭제&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;쇼핑몰을 예로 들면:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Create&amp;#039;&amp;#039;&amp;#039;: 상품 등록, 주문 생성&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Read&amp;#039;&amp;#039;&amp;#039;: 상품 목록 조회, 주문 내역 확인&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Update&amp;#039;&amp;#039;&amp;#039;: 장바구니 수량 변경, 배송지 수정&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Delete&amp;#039;&amp;#039;&amp;#039;: 장바구니 상품 제거, 주문 취소&lt;br /&gt;
&lt;br /&gt;
=== HTTP 메서드와의 관계 ===&lt;br /&gt;
[[HTTP]] 메서드는 본래 &amp;#039;&amp;#039;&amp;#039;웹 리소스를 전송하고 조작하기 위한 프로토콜&amp;#039;&amp;#039;&amp;#039;이며, CRUD를 위해 설계된 것이 아니다.&amp;lt;ref&amp;gt;HTTP는 1991년 팀 버너스리가 만들었고, CRUD는 1983년부터 쓰인 데이터베이스 용어다. 애초에 목적이 달랐다.&amp;lt;/ref&amp;gt; &lt;br /&gt;
&lt;br /&gt;
하지만 [[REST API]] 설계 방법론이 등장하면서, &amp;#039;&amp;#039;&amp;#039;관례적으로&amp;#039;&amp;#039;&amp;#039; CRUD 작업을 HTTP 메서드에 매핑하는 패턴이 널리 사용되고 있다:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! CRUD !! 관례적으로 사용되는&amp;lt;br/&amp;gt;HTTP 메서드 !! 예시 URL !! 비고&lt;br /&gt;
|-&lt;br /&gt;
| Create || POST || /users || REST API에서 리소스 생성에 주로 사용&lt;br /&gt;
|-&lt;br /&gt;
| Read || GET || /users 또는 /users/1 || HTTP 명세상 안전한(Safe) 메서드&lt;br /&gt;
|-&lt;br /&gt;
| Update || PUT/PATCH || /users/1 || PUT은 전체 교체, PATCH는 부분 수정&amp;lt;ref&amp;gt;실무에서는 이 구분이 애매하게 쓰이는 경우가 많다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Delete || DELETE || /users/1 || HTTP 명세상 멱등성(Idempotent)을 가짐&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;주의할 점:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* HTTP 메서드는 원래 &amp;#039;&amp;#039;&amp;#039;리소스의 표현(Representation)을 전송&amp;#039;&amp;#039;&amp;#039;하기 위한 것이다.&lt;br /&gt;
* GET은 &amp;quot;데이터를 가져와라&amp;quot;, POST는 &amp;quot;서버로 데이터를 보내라&amp;quot;는 의미가 원래 목적이었다.&lt;br /&gt;
* REST 아키텍처에서 이를 CRUD와 연결지은 것은 &amp;#039;&amp;#039;&amp;#039;설계 관례&amp;#039;&amp;#039;&amp;#039;일 뿐, HTTP 표준의 원래 의도는 아니다.&lt;br /&gt;
* 실제로 POST로 모든 작업(조회, 수정, 삭제)을 처리하는 API도 존재한다.&amp;lt;ref&amp;gt;[[GraphQL]]이 대표적이다. 모든 요청을 POST로 보낸다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== RESTful API 설계 패턴 ===&lt;br /&gt;
2000년 Roy Fielding의 박사 논문에서 제안된 [[REST]] 아키텍처 스타일이 유행하면서, CRUD를 HTTP 메서드로 표현하는 것이 &amp;#039;&amp;#039;&amp;#039;사실상의 표준(de facto standard)&amp;#039;&amp;#039;&amp;#039;이 되었다.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;REST의 핵심 원칙:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* 리소스를 URL로 표현한다 (/users/123)&lt;br /&gt;
* HTTP 메서드로 리소스에 대한 행위를 표현한다&lt;br /&gt;
* 상태를 전이시킨다 (Representational State Transfer)&lt;br /&gt;
&lt;br /&gt;
이 과정에서 HTTP 메서드가 CRUD와 &amp;#039;&amp;#039;&amp;#039;우연히도 잘 매칭&amp;#039;&amp;#039;&amp;#039;되어, 개발자들이 자연스럽게 연결지어 사용하게 되었다.&amp;lt;ref&amp;gt;하지만 HTTP OPTIONS, HEAD, TRACE 같은 메서드는 CRUD와 전혀 상관없다. 애초에 다른 목적이었으니까.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 프레임워크에서의 구현 ===&lt;br /&gt;
대부분의 웹 프레임워크는 CRUD 작업을 쉽게 구현할 수 있도록 도와준다.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Django]]의 경우:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# Create&lt;br /&gt;
user = User.objects.create(name=&amp;#039;홍길동&amp;#039;, email=&amp;#039;hong@example.com&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
# Read&lt;br /&gt;
users = User.objects.all()&lt;br /&gt;
user = User.objects.get(id=1)&lt;br /&gt;
&lt;br /&gt;
# Update&lt;br /&gt;
user.age = 26&lt;br /&gt;
user.save()&lt;br /&gt;
&lt;br /&gt;
# Delete&lt;br /&gt;
user.delete()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Spring Boot]]의 경우:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
// Create&lt;br /&gt;
userRepository.save(user);&lt;br /&gt;
&lt;br /&gt;
// Read&lt;br /&gt;
userRepository.findAll();&lt;br /&gt;
userRepository.findById(1L);&lt;br /&gt;
&lt;br /&gt;
// Update&lt;br /&gt;
user.setAge(26);&lt;br /&gt;
userRepository.save(user);&lt;br /&gt;
&lt;br /&gt;
// Delete&lt;br /&gt;
userRepository.delete(user);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 한계와 비판 ==&lt;br /&gt;
CRUD는 매우 유용한 개념이지만, 모든 비즈니스 로직을 CRUD로만 설명하기에는 부족한 면이 있다.&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;복잡한 비즈니스 로직&amp;#039;&amp;#039;&amp;#039;: 단순 CRUD로 표현하기 어려운 복잡한 작업들이 존재한다. 예를 들어, &amp;quot;송금하기&amp;quot;는 단순히 데이터를 생성하거나 수정하는 것 이상의 의미를 갖는다.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;도메인 주도 설계(DDD)&amp;#039;&amp;#039;&amp;#039;: 최근에는 CRUD 중심이 아닌 비즈니스 도메인 중심의 설계가 강조되고 있다.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;이벤트 소싱&amp;#039;&amp;#039;&amp;#039;: CRUD 대신 모든 변경사항을 이벤트로 기록하는 방식도 존재한다.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;CQRS 패턴&amp;#039;&amp;#039;&amp;#039;: 명령(Command)과 조회(Query)를 분리하는 패턴으로, 단순 CRUD를 넘어선다.&lt;br /&gt;
&lt;br /&gt;
하지만 이런 비판에도 불구하고, CRUD는 여전히 데이터 처리의 기본 개념으로 널리 사용되고 있다.&amp;lt;ref&amp;gt;결국 복잡한 시스템도 뜯어보면 CRUD의 조합인 경우가 많다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 여담 ==&lt;br /&gt;
* &amp;quot;CRUD 개발자&amp;quot;라는 표현이 있는데, 단순히 CRUD만 반복하는 개발자를 다소 비하하는 의미로 쓰인다. ~~하지만 현실의 대부분 개발자가 하는 일이 CRUD 구현이다~~&amp;lt;ref&amp;gt;물론 CRUD를 잘 구현하는 것도 쉬운 일이 아니다. 성능, 보안, 동시성 등 고려할 것이 많다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* SQL을 배울 때 가장 먼저 배우는 것이 CRUD 작업이다. 그만큼 기본이자 핵심이다.&lt;br /&gt;
&lt;br /&gt;
* 게임 개발에서도 CRUD 개념이 적용된다. [[MMORPG]]에서 아이템을 얻고(Create), 인벤토리를 확인하고(Read), 강화하고(Update), 버리는(Delete) 것이 모두 CRUD다.&lt;br /&gt;
&lt;br /&gt;
* [[Git]]에도 비슷한 개념이 있다: add(Create), log/show(Read), commit --amend(Update), rm(Delete)&lt;br /&gt;
&lt;br /&gt;
* 개발자들 사이에서 &amp;quot;오늘도 CRUD나 짜야지&amp;quot;라는 말은 일종의 자조적인 농담으로 쓰인다.&lt;br /&gt;
&lt;br /&gt;
* HTTP와 CRUD를 동일시하는 것은 흔한 오해다. HTTP는 &amp;#039;&amp;#039;&amp;#039;Hypertext Transfer Protocol&amp;#039;&amp;#039;&amp;#039;로 웹 문서를 전송하기 위한 프로토콜이고, CRUD는 데이터베이스 작업 개념이다. 둘이 REST API에서 만났을 뿐이다.&amp;lt;ref&amp;gt;마치 땅콩버터와 젤리가 만나 PB&amp;amp;J 샌드위치가 된 것처럼, 원래는 별개였던 두 개념이 조합되어 새로운 패턴이 탄생했다.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 관련 문서 ==&lt;br /&gt;
* [[데이터베이스]]&lt;br /&gt;
* [[SQL]]&lt;br /&gt;
* [[REST API]]&lt;br /&gt;
* [[HTTP]]&lt;br /&gt;
* [[웹 개발]]&lt;br /&gt;
* [[ORM]]&lt;br /&gt;
* [[RESTful]]&lt;br /&gt;
* [[API]]&lt;br /&gt;
* [[백엔드]]&lt;br /&gt;
* [[프레임워크]]&lt;br /&gt;
* [[GraphQL]]&lt;br /&gt;
* [[CQRS]]&lt;br /&gt;
&lt;br /&gt;
== 각주 ==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[분류:프로그래밍]]&lt;br /&gt;
[[분류:데이터베이스]]&lt;br /&gt;
[[분류:웹 개발]]&lt;br /&gt;
[[분류:소프트웨어 공학]]&lt;/div&gt;</summary>
		<author><name>Gaon12</name></author>
	</entry>
</feed>