الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التطبيقات متعددة الطبقات N-tier طريقة Ruby on Rails) model-view-controllerII

بدأه fkugd2003 في 30 مارس 2010 · 3 رد · 2,198 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم.

قمت بتغيير الموديل ليشابه الاسلوب التي تعتمده ruby on rails اسلوب model-view-controller

استعملت قاعدة بيانات الاكسس كتجربة لكني لم اكمل الفكرة كاملة لانني انتظر اراءكم

ارجو المراجعة

ملاحظة لم اصف الويب سرفيس لاني سانتظر حتى انجح في تنفيد العملية على desk app

في نقس الوقت اهتمدت على design pattern lk k,u من نوع singleton لاجبار الطبقة على ان تكون نسخة واحدة لكن الجاصية غير مفعلة حاليا

D7DbTiersEssai2.rar

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 6 أبريل 2010 في 12:15

العمل كثير و الوقت قليل أعاننا الله

seo zen SEO Enlightment amazon danbo

#2

السلام عليكم

اخي امين ارى ان موضوعك يستحق الاهتمام كما اني لم افهم هذه الطكريقة لهذا وضعتها هنا في موضوع جديد كي يتسنى لك شرحه و النقاش معا .

بدات الان في قراءت مواضيع عن هذه الطريقة التي لم اكن اعرفها .

post-1034-12699651681876_thumb.gif

post-1034-12699651758887_thumb.jpg

تم تعديل هذه المشاركة بواسطة زكيري عبد العالي في 30 مارس 2010 في 19:06

#3

السلام عليكم

ماهو ال MVC

يمكن ان تعتبر ا نال MVC عبارة عن نمط يستعمل لحل الكثير من مشاكل تطوير التطبيقات خاصة الضخمة و المعقدة (التي يمكن ان تتجاوز 10 الى 100 سنة في التطوير) لكنه للأسف لا ينفع مع التطبيقات من الحجم الصغير.

ربما يتساءل البعض عن هذا النمط و قدمه في عالم البرمجة فقط لانهم لم يسمعوا به من قبل الا انه قديم قدم ايام لغة smalltalk التي تعتبر اب البرمجة الشيئية و قد اخترع من طرف احد مبرمجي تلك اللغة Trygve Reenskaug

• Model يحتوي على الأصناف التي سوف تستعملها في مشروعك للتعامل مع قاعدة البيانات

• View يحتوي على الأصناف التي سوف تستعملها لعرض معلومات المأخوذة من Model

• Controller عبارة عن طبقة وسبطية تربط بين الطبقتين السابقتين فهو يعطيك القدرة على الحصول على المعلومات من طبقة الموديل و التحكم في إظهارها على view

الان لنقفز الى المشروع

post-64798-12703675144_thumb.png

لنبدأ مع دلفي

قم بانشاء مجموعة مشاريع

post-64798-12703675494388_thumb.png

ألفكرة لا تختلف على مقال الاخ زكيري نفس العمليات على الباكجات

في نفس الوقت لا تنس ان تحافظ على شكل ملفاتك كالتالي

post-64798-12703675519892_thumb.png

ايضا احرص على جعل اعدادات المشاريع من نوع بكج package كالاتي

post-64798-12703675394889_thumb.png

اما مشروع gui

post-64798-127036754305_thumb.png

لنعد ألان إلى مشروعنا, سنقوم بمحاولة تتبع النمط MVC بكل أمانة لكن من المحتمل أن أكون قد قمت ببعض الأخطاء خلال العملية لذلك أرجو من الإخوة إعطاء تعاليقهم و ملاحظاتهم في الموضوع.

سنقوم بانجاز الأصناف التالية لتقسيم العملية

post-64798-12703675472585_thumb.png

الان لننتقل الى تصمم البرنامج

post-64798-12703677480526_thumb.png

الفكرة الاساسية:

سأقسمها على قسمين لان الوقت لا يكفيني لانجاز كل شيئا لان

الحالة الاولى ساقوم بربط التطبيق من نوع VCL Form application مع التخلي على الواب سرفيس و سأقوم مباشرة بربط المكونات مع TPersonController الذي سينتج TPersonViewer و يرجع المعلومات على شكل TdataSet

post-64798-12703675346612_thumb.png

في الحالة الثانية سوف اضيف الويب سرفيس ليقوم باعادة المعلومات الى التطبيق عبر soap وهناك لن نحتاج الى انشاء ال TPersonController في التطبيق لان الويب سوف ينشئها و سوف نحتاج فقط لانشاء TPersonViewer

post-64798-12703675372915_thumb.png

ملاحظات من خلال التعامل مع تطوير التطبيقات المتعددة المستويات لا حظت انها تعتمد كثيرا على ال Unit Testing لذلك قمن الاحسن ان تقوم ببناء Tests باستعمال ادوات احترافية ك ال Dunit (لست خبيرا فيها لذلك فان اي موضوع او مناقشات ستفيدني جدا) او يدوية مثلما فعلت في المشاريع TestDataAccess و TestController من نوع COnsole Application

post-64798-12703680096364_thumb.png

ملف المشروع

D7DbTiersEssai2 - final-.rar

ارجو ان اكون قد افدت في هذا الموضوع

دمتم بود

العمل كثير و الوقت قليل أعاننا الله

seo zen SEO Enlightment amazon danbo

#4

السلام عليكم اخي امين ماشاء الله درس قمة الروعوة انا مشغول قليلا لكن ساجرب الامر في اقرب الايام .

لا تنسي تكملت الامر بستعمل الويب سرفيس . :P

شكرا

مواضيع مشابهة