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

هل تستخدم ال Design Patterns فى عملك

بدأه طارق إبراهيم في 3 أكتوبر 2008 · 30 رد · 16,965 مشاهدة · في هندسة البرمجيات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

استبيان حول استخدام انماط التصميم Design Patterns عند تصميم التطبيقات

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#2

Design With pattern, not In patterns :)

تم تعديل هذه المشاركة بواسطة bashmohandes في 3 أكتوبر 2008 في 08:09

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#3

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

الــ Design Pattern كما افهمة هو وضع حل على شكل قالب template (و من هنا جاءت التسمية Pattern) لمشكلة متكررة الحدوث ...

(Solution in form of template for repeated problems)

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

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#4

بالنسبة لي حينما ابرمج لا افكر كثيرا في الـ patterns و لكن احاول فقط ان احرص على اشياء بديهية اساسية - مثل عدم تكرار الكود و محاولة تنظيمه .. دون ان افكر كثيرا في "باترنات" تدرس في بطون الكتب ..

#5

على الأغلب هذه الأساليب تستخدم في البرمجة عالية المستوى

أقصد برمجة الحزم packages

لأن مبرمج هذه النوعية من الحلول

مهتم جداً بجعل استخدام حزمته أسهل ما يمكن بالنسبة للآخرين

كما هو مهتم بأن يكون تطويرها أسهل ما يمكن للمطورين

ولهذا تجد أن أغلب المبرمجين لا يعرف شيئاً عن تصميم الأنماط design pattern

أما عن كوني استخدمها

فبالتأكيد أنا أستخدمها

خصوصاً عندما أبرمج الحزم الخاصة بي :)

( كلهم حزمتين ولم يستخدمهم أحد ولن يستخدمهم أحد :lol: )

لكن تأكدوا أنك عندما تتعلم design pattern

لن تبرمج بنفس الطريقة التي كنت تبرمج بها مسبقاً

بالمناسبة أخ Night Coder

لماذا أنت مهتم بالاستبيان؟؟

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#6

هل هذا الشئ موجود فقط فى البرمجة !!

لا إله إلا الله محمد رسول الله

アッラー以外に神はなし。ムハンマドはアッラーの使徒である

#7
اقتباس
لكن تأكدوا أنك عندما تتعلم design pattern

لن تبرمج بنفس الطريقة التي كنت تبرمج بها مسبقاً

مضبوط لانك ستتعلم كيفيية التصميم بافضل الاساليب فى الOOP و هى اساليب مجربة من قبل

بالاضافة للشعور بمتعة غريبة اثناء استخدام ال Patterns فى عملك

شخصياً استخدم ال Patterns فى عملى عند تصميمى ل Components او User Controls او Class Library يستخدمها مطورين فى العمل

اقتباس
هل هذا الشئ موجود فقط فى البرمجة !!

و فى عالم الاعمال حيث تجد ان هناك Business Patterns و هناك Requirements Pattern و فى حلول المؤسسات ستجد Enterprise Patterns و كلها تتعلق بمجال السوفتوير

اقتباس
لماذا أنت مهتم بالاستبيان؟؟

كان لدى مدير فى العمل يتعجب من استخدامى لل Interface Programing و لا يستطيع التعرف على ال Pattern او التفكير بها

فوددت ان اعلم ما هى نسبة المطورين الذين يستخدمون لغات برمجة تدعم ال OOP و يعلمون ما هية ال DP

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#8

المشكلة التي تواجه الأساليب المتطورة

مثل DP refactoring

أن القليل من يفهمهما من المبرمجين ويعرف أهميتها

وتزاداد المشكلة مع المدراء

بحيث تشمل تحليل وتصميم النظام

تحياتي

تم تعديل هذه المشاركة بواسطة alaadiaa في 7 نوفمبر 2008 في 00:02

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#9

انا استخدمها مع PHP و Javascript وحتى مع CSS يمكن استخدمها ...

هناك كثير من كتب يتحدث عنها , قرات بعض منها , الموضوع ممتع جدا , مثلا هذه كتاب لدرجة اعجابي به قمت بطبعاته وتجليده (خاص بلجافاسكربت) 51bE3kTBbRL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg

تم تعديل هذه المشاركة بواسطة ahmad123 في 9 نوفمبر 2008 في 23:29

#10

Conciseness , I Found The Book This Morning But I Did Not Like To Download It , Would You Summarize It And Tell If It's Useful

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#11
Night Coder كتب:
Conciseness , I Found The Book This Morning But I Did Not Like To Download It , Would You Summarize It And Tell If It's Useful

سوف قوم بإجماله ان شاء الله بعد الانتهاء من قراءته

#12

مدونه Keepondev العربيه تشرح انماط تصميم جافاسكربت JavaScript design patterns من منهج الكاتب الذى ذكرتوه

http://keepondev.wordpress.com/javascript-...atterns-course/

تم تعديل هذه المشاركة بواسطة darshoo في 11 أبريل 2009 في 23:58

JavaScript Guru

Keepondev

#13

أنا أستخدم MVC

و لكن اذا استخدمته بالمشاريع الصغيره او المتوسطه فهذا يزيد الوقت و الجهد و أرى أنه مناسب جدا في المشاريع الكبيره

#14
اقتباس
و لكن اذا استخدمته بالمشاريع الصغيره او المتوسطه فهذا يزيد الوقت و الجهد و أرى أنه مناسب جدا في المشاريع الكبيره

اتفق معك فيما ذكرت و لكن ماذا عن ال Scalability و ال Maintainability فى المشاريع المتوسطة ؟

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#15

الMVC ليس له معنى اذا لم تكن تطبق Unit Testing على الControllers و الModels بشكل صحيح. لأن الهدف الأصلي من وضعه هو اتاحة الفرصة لعمل Unit Testing لأكبر قدر ممكن من كود الواجهة الرسومية التي تكون في الغالب باستخدام أي اسلوب اخر صعبة جداً في الUnit testing. و بالتالي استخدام الMVC دون عمل Unit Testing هو اضاعة للوقت. أما اذا كنت ستطبق الUnit Test اذن فالMVC لا غنى عنه

1

مصري في بلاد الفرنجة.

قريباً اقرأ مقالاتي على It-scoop

#16

حديثى عن استخدام ال Design Patterns بصفة عامة فى المشاريع المتوسطة و ليس خاصاً فقط بال MVC (لماذا الكل متعلق بال MVC دون التطرق لل MVP :D )

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#18

موضوع ممتاز و رائع

هي بشكل مختصر طريقة لاعادة استخدام تعريفات ال Classes ال objects بحيث تغطي جميع العمليات المطلوبة و بشكل يسمح باعادة استخدامها مرارا و تكرارا

الغرض من استخدامها هو توضيح العلاقة بين النظم الرئيسية و النظم الفرعية

و كيفية تفاعلها مع بعضها البعض في اطار العمل Domain and Workplace

و منها العديد من الطرق و الاساليب (حسب الحاجة)

المهم نحن فعلا بحاجة لفهم هذة الطرق و اتوقع من اخواننا ان يقدوموا لنا ملخص يوضح هذا المفهوم بأمثلة بسيطة للتوضيح B) B)

وفوق كل ذي علم عليم

http://www.leaderstechnology.com

-------------------------------

#19

بالنسبة للكلام عن Unit Test وارتباطها الوثيق مع MVC

فهذا الكلام غير دقيق

هناك فوائد أخرى للـ MVC منها ال Scalability و ال Maintainability التي ذكرها الأخ طارق

كما أنها تسمح بتوسيع دائرة العمل الجماعي بدون أن يكون هناك تداخل ما بين المجموعات

(أقصد كل مجموعة تستطيع أن تعمل على الطبقة الخاصة بها بدون أن تتأثر بالمجموعات الأخرى)

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

#20
اقتباس
الMVC ليس له معنى اذا لم تكن تطبق Unit Testing على الControllers و الModels بشكل صحيح. لأن الهدف الأصلي من وضعه هو اتاحة الفرصة لعمل Unit Testing لأكبر قدر ممكن من كود الواجهة الرسومية التي تكون في الغالب باستخدام أي اسلوب اخر صعبة جداً في الUnit testing

متفق معك تماماً

اقتباس

أما اذا كنت ستطبق الUnit Test اذن فالMVC لا غنى عنه

لماذا ربطت ال Unit Testing بال MVC بامكانك ان تطبق ال Unit Testing و بدون الحاجة لل MVC

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#21

لم أقصد الربط التام و لكن اذا كنت تريد عمل Testing للكود الذي يتحكم في الUI فهذا صعب جداً في الWebForms و لكنه سهل للغاية في MVC

مصري في بلاد الفرنجة.

قريباً اقرأ مقالاتي على It-scoop

#22

السلام عليكم

حقيقة أستشكل علي أمر

ما المقصود ب

Design Patterns

فعليا

أي ما هي الأنماط المستخدمة في هذا المجال ؟

هل يجب علي أستخدام UML لكي أكون أستخدمت design Patterns ؟

أنا أستخدم نمط n-tire في كتابة الكود و بتحديد 3-tire هل يوجد تقارب بينها وبين design Patterns ؟

تم تعديل هذه المشاركة بواسطة Al-Mohana في 6 ديسمبر 2009 في 14:13

تعلم فليس المرء يولد عالماً------ وليس أخو علماً كمن هو جاهلا

العلم نور وجمال يقتبس--------------- صاحبه مكرم اين ما جلس

من فاته العلم ساعة تظعظع ونتكس----شتان شتان بين حمار وفرس

#23

الـdesign pattern هو حل مجرب و موحد لحل مشكلة معينة في تصميم البرنامج. مثلاً الـsingleton يستخدم حينما تريد أن يكون الأوبجكت له intance واحد و واحد فقط خلال عمل البرنامج. تمثيل البرنامج بواسطة الـUML يوضح أين يمكن استخدام هذه الـpatterns، لذا هي طبعاً تساعد كثيراً.

يمكن القول بأن الـn-tier هي design pattern كبيرة نوعاً ما. الغالبية العظمى منها أصغر و تهتم بتفاصيل أدق في تصميم البرنامج.

1
#24

شكرا

الفكرة واضحة

تعلم فليس المرء يولد عالماً------ وليس أخو علماً كمن هو جاهلا

العلم نور وجمال يقتبس--------------- صاحبه مكرم اين ما جلس

من فاته العلم ساعة تظعظع ونتكس----شتان شتان بين حمار وفرس

#25

انماط التصميم مهمة جدا. واعتقد انه يجب على اي مبرمج ان يدرب نفسه على استخدامها لانها تنمي لدينا امكانية تحليل النظام ومعرفة المناسب منها لإستخدامه.

وهي تجبرك على استخدام مفاهيم البرمجة الشيئية OOP وتحقيق اهدافها

encapsulate what varies

program to interface

open/close principle

وغيرها

وكما اشرتم فان انماط التصميم تسهل على المبرمج الكثير من ناحية اعادة الاستخدام والتعديل في المستقبل. لأنها تبسط ال code وتحل مشاكل مثل الحجم المستهلك من الذاكرة كما في ال Flyweight pattern

2

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