DTO(Data Transfer Object)は、プロセス間でデータを送受信するオブジェクトです。この手法を使用することで、機密情報が公開されることなく、2つのシステム(APIとサーバーなど)の間の通信が可能になります。
DTOは、プログラミングの知識がある人は皆知っているソリューションです。開発者であれば、DTOが何であり、どのような役割を果たすかをおそらくご存知でしょう。しかしながら、一般的なユーザーがDTOを理解するのはかなり難しいかもしれません。
できる限りわかりやすい言葉でDTOを説明するように心がけますが、その役割を強調するために少し技術的な説明になってしまう部分もあるかもしれません。
DTOとは?
前述のとおり、DTOはData Transfer Objectの略称で、名前が示すように、データを転送するためのオブジェクトです。
DTOは、Python、C++、Javaなどのオブジェクト指向プログラミング(OOP)言語環境で使用され、簡単に開発し、更新できます。
OOP環境では、「call(呼び出し)」のシステムが利用され、それぞれがデータルックアップに少し似ていて、時間と処理速度の両方が必要とされます。注意しないと、隠しておきたい次のような機密データがcallによって公開されてしまう可能性もあります。
- 従業員の住所
- 口座番号
- 社会保障番号
- ビジネスログイン
あるプログラマーが説明しているように、会社に入る際に従業員の名前と写真が必要になる場合があります。名前と顔が一致することを確認するためにこれらのデータを提供する必要がありますが、データベースに保存されている、その従業員に関する他の情報を提供する必要はありません。DTOは、必要な情報だけを転送できます。