إِذا لَم يَكُن عَونٌ مِنَ اللَهِ للِفَتى
فَأَكثَرُ ما يَجني عَلَيهِ اِجتِهادُهُ
صباح الخير 🤍.
فَأَكثَرُ ما يَجني عَلَيهِ اِجتِهادُهُ
صباح الخير 🤍.
❤2
مصطلح DTO هو اختصار لـ Data Transfer Object (كائن نقل البيانات). في هندسة البرمجيات، هو عبارة عن كائن أو فئة (Class) تُستخدم لتغليف البيانات ونقلها بين أجزاء النظام المختلفة، وخاصة بين واجهة برمجة التطبيقات (API) وقاعدة البيانات، أو بين الخادم (Server) والعميل (Client).
السمة الأساسية للـ DTO هي أنه لا يحتوي على أي منطق برمجي (Business Logic) أو عمليات معقدة؛ فهو يقتصر فقط على الخصائص (Properties) لتمثيل البيانات المطلوبة.
لماذا نعتمد على الـ DTO في بناء الأنظمة؟
الأمان وإخفاء البيانات: غالباً ما تحتوي نماذج قاعدة البيانات (Entities/Models) على بيانات حساسة لا يجب أن تظهر للعميل. على سبيل المثال، نموذج المستخدم قد يحتوي على كلمة المرور المشفرة (Password Hash). باستخدام الـ DTO، أنت تنشئ كائناً جديداً يحتوي فقط على البيانات الآمنة (مثل الاسم والبريد الإلكتروني) لإرسالها.
تحسين الأداء وتقليل حجم البيانات (Payload): عند استدعاء بيانات من الخادم، قد لا تحتاج الواجهة الأمامية إلى كل التفاصيل الموجودة في قاعدة البيانات. الـ DTO يسمح لك بإرسال الحقول المطلوبة فقط، مما يقلل من استهلاك عرض النطاق الترددي (Bandwidth) ويسرع استجابة النظام.
الفصل الاستراتيجي بين الطبقات (Decoupling): الـ DTO يعمل كعقد (Contract) ثابت بين الـ Backend والـ Frontend. إذا اضطررت لاحقاً لتغيير هيكل قاعدة البيانات، فلن يتأثر العميل أو التطبيق الأمامي، لأنك ستقوم فقط بتعديل طريقة تحويل البيانات (Mapping) لتبقى مخرجات الـ DTO كما هي.
توضيح برمجي بسيط
إذا كان لديك نموذج مستخدم في قاعدة البيانات بهذا الشكل:
لإرسال بيانات المستخدم إلى الواجهة الأمامية دون تعريض الأمان للخطر، تقوم بإنشاء DTO مخصص:
ابحث عنه واين تستخدمه وفي اي معمارية من معماريات البرمجة في الباك ؟
طيب التقنية مش مهم سي شارب او غيرها المفهوم واحد بكل اللغات والاطر
السمة الأساسية للـ DTO هي أنه لا يحتوي على أي منطق برمجي (Business Logic) أو عمليات معقدة؛ فهو يقتصر فقط على الخصائص (Properties) لتمثيل البيانات المطلوبة.
لماذا نعتمد على الـ DTO في بناء الأنظمة؟
الأمان وإخفاء البيانات: غالباً ما تحتوي نماذج قاعدة البيانات (Entities/Models) على بيانات حساسة لا يجب أن تظهر للعميل. على سبيل المثال، نموذج المستخدم قد يحتوي على كلمة المرور المشفرة (Password Hash). باستخدام الـ DTO، أنت تنشئ كائناً جديداً يحتوي فقط على البيانات الآمنة (مثل الاسم والبريد الإلكتروني) لإرسالها.
تحسين الأداء وتقليل حجم البيانات (Payload): عند استدعاء بيانات من الخادم، قد لا تحتاج الواجهة الأمامية إلى كل التفاصيل الموجودة في قاعدة البيانات. الـ DTO يسمح لك بإرسال الحقول المطلوبة فقط، مما يقلل من استهلاك عرض النطاق الترددي (Bandwidth) ويسرع استجابة النظام.
الفصل الاستراتيجي بين الطبقات (Decoupling): الـ DTO يعمل كعقد (Contract) ثابت بين الـ Backend والـ Frontend. إذا اضطررت لاحقاً لتغيير هيكل قاعدة البيانات، فلن يتأثر العميل أو التطبيق الأمامي، لأنك ستقوم فقط بتعديل طريقة تحويل البيانات (Mapping) لتبقى مخرجات الـ DTO كما هي.
توضيح برمجي بسيط
إذا كان لديك نموذج مستخدم في قاعدة البيانات بهذا الشكل:
C#public class User {
public int Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
public string PasswordHash { get; set; }
public DateTime CreatedAt { get; set; }
}لإرسال بيانات المستخدم إلى الواجهة الأمامية دون تعريض الأمان للخطر، تقوم بإنشاء DTO مخصص:
C#public class UserResponseDTO {
public int Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
}ابحث عنه واين تستخدمه وفي اي معمارية من معماريات البرمجة في الباك ؟
طيب التقنية مش مهم سي شارب او غيرها المفهوم واحد بكل اللغات والاطر
اليوم 06/06/2026 😅
تاريخ مميز وجميل، فقلنا نذكركم
ونوصيكم بالدعاء🤍
دمتم بخير.
✍️المهندس
تاريخ مميز وجميل، فقلنا نذكركم
ونوصيكم بالدعاء🤍
دمتم بخير.
✍️المهندس
ماذا لو انقطع الإنترنت وبقي حاسوبك يعمل؟ ⚡
مشروع نوماد هو خادم بقاء يعمل دون اتصال بالإنترنت، ويعمل على حاسوب صغير دون الحاجة إلى خدمات سحابية أو اشتراكات أو اتصال بالإنترنت.
يتضمن المشروع ميزات مثل الذكاء الاصطناعي، ويكيبيديا، الخرائط، المراجع الطبية، أدلة البقاء، دورات أكاديمية خان، وخاصية البحث الذكي عن المستندات.
في عالم يعتمد بشكل كبير على الحوسبة السحابية، يُذكّرنا هذا المشروع بأهمية التقنيات المحلية.
الرابط : https://github.com/Crosstalk-Solutions/project-nomad
_
#GhaniWeb #تقنية #technews #الجميع
مشروع نوماد هو خادم بقاء يعمل دون اتصال بالإنترنت، ويعمل على حاسوب صغير دون الحاجة إلى خدمات سحابية أو اشتراكات أو اتصال بالإنترنت.
يتضمن المشروع ميزات مثل الذكاء الاصطناعي، ويكيبيديا، الخرائط، المراجع الطبية، أدلة البقاء، دورات أكاديمية خان، وخاصية البحث الذكي عن المستندات.
في عالم يعتمد بشكل كبير على الحوسبة السحابية، يُذكّرنا هذا المشروع بأهمية التقنيات المحلية.
الرابط : https://github.com/Crosstalk-Solutions/project-nomad
_
#GhaniWeb #تقنية #technews #الجميع
GitHub
GitHub - Crosstalk-Solutions/project-nomad: Project N.O.M.A.D, is a self-contained, offline survival computer packed with critical…
Project N.O.M.A.D, is a self-contained, offline survival computer packed with critical tools, knowledge, and AI to keep you informed and empowered—anytime, anywhere. - Crosstalk-Solutions/project-n...