Ma'lumot uzatish ob'ekti - Data transfer object

Dasturlash sohasida a ma'lumotlar uzatish ob'ekti (DTO[1][2]) - bu jarayonlar o'rtasida ma'lumotlarni olib boruvchi ob'ekt. Uni ishlatish motivlari shundan iboratki, jarayonlar orasidagi aloqa odatda har bir qo'ng'iroq qimmat operatsiya bo'lgan masofaviy interfeyslarga (masalan, veb-xizmatlarga) murojaat qiladi.[2] Har bir qo'ng'iroq narxining katta qismi mijoz va server o'rtasidagi qaytish vaqti bilan bog'liq bo'lganligi sababli, qo'ng'iroqlar sonini kamaytirishning bir usuli bu uzatiladigan ma'lumotlarni yig'adigan ob'ektdan (DTO) foydalanishdir. bir nechta qo'ng'iroqlar orqali, lekin bu faqat bitta qo'ng'iroq orqali amalga oshiriladi.[2]

Ma'lumot uzatish ob'ektlari orasidagi farq va biznes ob'ektlari yoki ma'lumotlarga kirish ob'ektlari DTO o'z ma'lumotlarini saqlash, olish, ketma-ketlashtirish va deserializatsiya qilishdan tashqari hech qanday xatti-harakatga ega emasligi (mutatorlar, kiruvchilar, tahlilchilar va serializatorlar ). Boshqacha qilib aytganda, DTOlar oddiy ob'ektlar bo'lib, ular hech qanday ish mantig'iga ega bo'lmasligi kerak, lekin sim orqali ma'lumotlarni uzatish uchun ketma-ketlashtirish va deserializatsiya mexanizmlarini o'z ichiga olishi mumkin.[1]

Bu naqsh masofaviy interfeyslardan tashqarida ko'pincha noto'g'ri ishlatiladi. Bu muallifning javobini keltirib chiqardi[3] bu erda u DTOlarning asosiy maqsadi qimmat masofali qo'ng'iroqlarda ma'lumotlarni almashtirish ekanligini takrorlaydi.

Terminologiya

A qiymat ob'ekti DTO emas. Ikki atama ilgari Java dasturchilari tomonidan kelishilgan.[2]

Adabiyotlar

  1. ^ a b MSDN (2010). Ma'lumot uzatish ob'ekti. Microsoft MSDN Kutubxona. Olingan https://msdn.microsoft.com/en-us/library/ms978717.aspx.
  2. ^ a b v d Fowler, Martin (2010). Ma'lumot uzatish ob'ekti. Enterprise Application Architecture naqshlari. Olingan http://martinfowler.com/eaaCatalog/dataTransferObject.html.
  3. ^ LocalDTO. Olingan http://martinfowler.com/bliki/LocalDTO.html.

Tashqi havolalar