PHpullh

PHP · 패턴

DTO 매퍼

외부 데이터 구조를 내부 DTO로 변환하는 매퍼 패턴 예제입니다.

패턴중급dtomappertransform

핵심 설명

외부 데이터 구조를 내부 DTO로 변환하는 매퍼 패턴 예제입니다.

PHP code

<?php
readonly class UserDto {
    public function __construct(public int $id, public string $name) {}
}

function mapUser(array $row): UserDto {
    return new UserDto($row['id'], $row['name']);
}

print_r(mapUser(['id' => 1, 'name' => 'Kim']));

학습 팁

패턴 예제는 클래스 수보다 의존성 방향과 책임 분리를 중심으로 읽는 것이 더 중요합니다.

주의할 점

패턴을 적용하더라도 구현체에 강하게 결합되면 오히려 변경 비용이 커집니다.

자주 묻는 질문

DTO 매퍼란 무엇인가요?

외부 데이터 구조를 내부 DTO로 변환하는 매퍼 패턴 예제입니다.

DTO 매퍼 학습 시 주의할 점은 무엇인가요?

패턴을 적용하더라도 구현체에 강하게 결합되면 오히려 변경 비용이 커집니다.