본문 바로가기

앱 개발/Kotlin_Android

DTO, DTA, Entity

1) DTO (Data Transfer Object)
계층 간 데이터를 전송할 때 사용되는 객체이다. 주로 네트워크 통신, API 응답, 서비스 간 데이터 교환 시 사용된다.

- 특징
비즈니스 로직을 포함하지 않고 데이터만 보유한다.
네트워크를 통해 전송하거나 파일로 저장할 수 있도록 직렬화가 가능해야 한다.
데이터를 받아 사용하는 측에서는 주로 읽기 전용으로 사용한다.

- 예시
data class UserDTO(
    val id: Long,
    val name: String,
    val email: String
)


2) DTA (Data Transfer Architecture)
데이터 전송을 위한 아키텍처나 패턴을 말한다. 컨텍스트에 따라 달라질 수 있다.

- 특징
시스템 간 데이터 전송을 효율적으로 설계하는 패턴이나 아키텍처를 말한다.
REST, GraphQL, gRPC 등의 다양한 데이터 전송 방법을 포함할 수 있다.

- 예시
RESTful API: HTTP 프로토콜을 이용해 데이터를 전송하는 일반적인 방법
GraphQL: 클라이언트가 필요한 데이터만 요청하고 받는 쿼리 언어


3) Entity
Entity는 데이터베이스 테이블과 매핑되는 객체로서 데이터베이스의 한 행(row)을 나타낸다. 주로 ORM (Object-Relational Mapping) 프레임워크에서 사용된다.

- 특징
데이터베이스와 직접적으로 매핑되어 데이터를 영속적으로 저장한다.
비즈니스 로직을 포함할 수 있다.
데이터를 읽고 쓰는 기능을 모두 포함한다.

- 예시
@Entity(tableName = "users")
data class UserEntity(
    @PrimaryKey(autoGenerate = true) val id: Long,
    val name: String,
    val email: String
)

 

 

(참고) https://charlezz.com/?p=45391

728x90

'앱 개발 > Kotlin_Android' 카테고리의 다른 글

검색 결과 화면을 유지하기  (0) 2024.06.25
무한 스크롤 기능 구현  (0) 2024.06.19
Process, Thread  (0) 2024.06.13
MVVM 패턴 사용 이유  (0) 2024.06.11
Android 4대 컴포넌트  (0) 2024.06.07