Flutter

【Flutter】Dtoについて解説

 

 

 

そのそもDtoってなに?

Domain Transfer Objectの略

Repositoryによる通信結果の値を表現するもの

→Repositoryがわからない方はこちら。

アプリケーション内や外部システムとの間で

特徴

データ構造の定義で用いられる(domain)

2、シリアライズとデシリアライズ

JSONなどのフォーマットでデータを送受信する際にDTOはそのデータをオブジェクトに変換したりオブジェクトをデータに変換したりする。

3、型安全の向上

DTOを使用することでデータの型が保証され、エラー発生を防ぐことができる。

 

6つの利点

①データのカプセル化

APIレスポンスから受け取ったデータをそのままUIに渡さないでDTOを介して必要なデータだけ送信する。

 

②ドメイン層との分離

アプリケーションのビジネスロジック(ドメイン層)とデータのやり取り(データ層)を分離できる為、アーキテクチャが明確になりやすい。

ドメインモデルが変更されてもデータのやり取りを担うDTOには影響がない。

 

③セキュリティの向上が見込める点

DTOを用いると不要なフィールドをAPIレスポンスに含めないようにできる。

 

④柔軟なデータ変換

 

⑤パフォーマンスの最適化

 

⑥テストが簡単になる

 

 

 

 

 

 

 

 

-Flutter