✅ CRUD?
CRUD는 데이터베이스와 소프트웨어 개발에서 기본적인 데이터 조작 기능을 가리키는 약어입니다. CRUD는 Create, Read, Update, Delete의 첫 글자들로 이루어져 있으며, 각각 다음과 같은 기능을 나타냅니다.
1. Create (생성):
Create는 데이터를 생성하거나 새로운 레코드를 데이터베이스에 추가하는 작업을 의미합니다. 이는 새로운 데이터를 입력하여 데이터베이스 테이블에 새 레코드를 만드는 것을 포함합니다.
2. Read (읽기):
Read는 데이터베이스에서 데이터를 읽어오는 작업을 의미합니다. 이는 데이터를 검색하거나 특정 조건에 맞는 레코드를 조회하는 것을 말합니다.
3. Update (갱신):
Update는 이미 존재하는 데이터를 수정하는 작업을 의미합니다. 데이터베이스 테이블에서 특정 레코드를 찾아 내용을 갱신하거나 변경하는 것을 포함합니다.
4. Delete (삭제):
Delete는 데이터베이스에서 레코드를 삭제하는 작업을 의미합니다. 더 이상 필요하지 않은 데이터를 데이터베이스에서 제거하는 것을 말합니다.
✅ CRUD 예시
가장 기본적인 예시로 사용자 정보를 다루는 블로그 데이터베이스를 가정해 보겠습니다.
1. Create (생성):
새로운 사용자가 블로그에 가입했을 때, 사용자 정보를 데이터베이스에 생성합니다. 사용자의 이름, 이메일, 비밀번호 등의 정보를 입력하여 새로운 레코드를 생성합니다.
2. Read (읽기):
사용자가 블로그에 로그인할 때, 해당 사용자의 정보를 데이터베이스에서 읽어옵니다. 이를 통해 로그인 과정에서 입력된 정보가 데이터베이스에 있는지 확인할 수 있습니다.
3. Update (갱신):
사용자가 자신의 프로필 정보를 변경하고 저장할 때, 데이터베이스에서 해당 사용자의 정보를 찾아 업데이트합니다. 예를 들어, 사용자가 새로운 이메일 주소로 변경하면 데이터베이스에 이를 반영합니다.
4. Delete (삭제):
사용자가 블로그 회원탈퇴를 요청하면, 해당 사용자의 정보를 데이터베이스에서 삭제합니다. 이제는 더 이상 사용자 정보가 데이터베이스에 남지 않습니다.
CRUD는 데이터베이스 및 소프트웨어 개발에서 가장 기본적이면서 중요한 기능들을 포함하고 있습니다. 이를 통해 데이터를 관리하고 조작할 수 있으며, 대부분의 웹 애플리케이션과 소프트웨어에서 필수적으로 사용됩니다.
✅ CRUD vs REST?
REST
REST는 Representational State Transfer의 약어로, 웹 서비스를 위한 아키텍처 스타일입니다. REST는 자원을 URI(Uniform Resource Identifier)로 표현하고, HTTP 메서드를 사용하여 해당 자원을 조작하는 방식을 기술합니다. 주로 웹 서비스를 설계할 때, 클라이언트와 서버 간의 통신을 위해 REST 아키텍처를 사용합니다.
CURD vs REST
- 의미:
- CRUD는 데이터 조작에 초점을 두는 기본적인 데이터베이스 작업을 가리킵니다.
- REST는 웹 서비스의 아키텍처 스타일로, 클라이언트와 서버 간의 통신을 위한 규칙과 원칙을 제공합니다.
- 범위:
- CRUD는 데이터베이스 내에서 데이터 조작에 한정됩니다.
- REST는 웹 서비스 설계와 관련되며, HTTP와 같은 프로토콜을 기반으로 하여 네트워크를 통해 자원을 다룹니다.
- 기능 vs. 아키텍처:
- CRUD는 데이터 조작에 필요한 기능들을 가리키는 것으로, 데이터베이스 개발과 관련하여 구체적인 작업을 제공합니다.
- REST는 웹 서비스를 위한 아키텍처 스타일로, 서버와 클라이언트 간의 통신을 어떻게 해야 하는지에 대한 원칙을 제시합니다.
- 데이터 중심 vs. 자원 중심:
- CRUD는 데이터베이스에서 데이터의 생성, 읽기, 수정, 삭제와 같이 데이터 중심의 작업에 초점을 둡니다.
- REST는 자원을 중심으로 웹 서비스를 설계하며, 자원을 고유한 URI로 표현하고 해당 자원을 조작하는 방식을 제공합니다.
요약하면, CRUD는 데이터베이스 내에서 기본적인 데이터 조작을 나타내는 반면, REST는 웹 서비스를 위한 아키텍처 스타일로, 자원 중심의 웹 서비스 설계에 관한 원칙과 규칙을 제시합니다. 웹 개발에서는 두 개념이 함께 사용되며, RESTful API를 통해 클라이언트가 서버와 상호작용하면서 CRUD 기능을 이용하여 데이터를 조작합니다.
'개발 > TIL' 카테고리의 다른 글
[Spring] unsupported class file major version 64 에러 (0) | 2023.09.07 |
---|---|
[Spring] REST, REST API, RESTful ? (0) | 2023.07.31 |
[Spring] Spring Boot Basics (0) | 2023.07.10 |
[Visual Studio Code] vs code 터미널로 C, C++ 컴파일&실행하기 (0) | 2023.06.28 |
[컴퓨터구조] 컴퓨터 구조의 큰 그림 (0) | 2023.06.25 |