خالد مرتضى نشر 5 سبتمبر 2021 أرسل تقرير نشر 5 سبتمبر 2021 كثيراً ما اسمع عن مصطلح الديزاين باترنز الذى يترجم بالعربية الى انماط التصميم وكنت أتسائل كثيراً عن معنى هذا المصطلح 2 اقتباس
1 شرف الدين حفني نشر 5 سبتمبر 2021 أرسل تقرير نشر 5 سبتمبر 2021 انماط التصميم(design patterns) ترمز لطريقة معينة لحل مشكلة شائعة نوعا ما في عالم الSoftware , مثلاً نوع من المشاكل هو كيفية إنشاء الكائنات؟ يوجد عدد ﻻ نهائي من الطرق لإنشاء الكائنات بالتأكيد حسب الموقف ولكن يوجد مواقف شائعة يمكننا مناقشتها والإهتمام بها, مثلاً إن كنا نريد إنشاء كائن وكان هذا الكائن لديه الصفات الأتية هذا الكائن مشترك بين عدد من الكائنات في البرنامج عملية إنشاء الكائن مكلفة وتستهلك كميةً لا بأس بها من موارد الجهاز هذا الكائن ليس له state معينة, او الstate الخاصة به مشتركة بين الكائنات في البرنامج طوال دورة حياة البرنامج( الstate نقصد بها حالة الكائن ,مثلاً إن كان يعبر عن إتصال بقاعدة البيانات, فهل حالة الكائن هي أن الإتصال مفتوح ؟ أم تم إغﻻق الإتصال؟ في هذه الحالة ليس من العقل أن نقوم بإنشاء الكائن في كل مرة نحتاجه بها , من المنطقي أن نقوم بإنشاء ذلك الكائن مرة واحدة ويقوم باقي الكائنات بإستدعائه في كل مرة كما في المثال الأتي class singleTone{ private static singleTone obj=new singleTone(); private singleTone(){} public static singleTone getInstance(){ return obj; } } الconstructor الخاصة بهذا الclass من النوع الخاص privateمما يعنى أن لا يمكننا إنشاء كائنات منه, الطريقة الوحيدة للحصول على كائن منه هي مناداة الدالة getInstance والتي بدورها تقوم بإرجاع الكائن الذي قمنا بإنشاءه سابقاً في بداية الclass , ففي هذه الحالة نستطيع ضمان أن لن يتم إنشاء هذا الكائن أكثر من مرة , وبالمناسبة هذا النمط يُسمى بال singletone pattern وقد وضعته حتى أوضح لك معنى انماط التصميم بشكل أفضل 1 اقتباس
0 Ziyad Hasan نشر 5 سبتمبر 2021 أرسل تقرير نشر 5 سبتمبر 2021 (معدل) عبارة عن حلول لمشاكل معروفة في مجال السوفتوير و كل نمط يمثل مخطط الذي يمكن التعديل عليه لكي يحل المشكلة و تسهل التواصل بين المبرمجين و تلك الحلول تم إختبارها لكي تعطي افضل سرعة وتنقسم إلى Creational patterns و هي عبارة عن انماط لأنشاء كائنات على أساس المعيار المطلوب مثل - Abstract factory -Builder -Dependency Injection -Factory method -Lazy initialization -Multiton -Object pool -Prototype -Singleton 2.. Structural patterns وهي عبارة عن أنماط لتنظيم class وكائنات مختلفة لتشكيل هياكل أكبر وتوفير وظائف جديدة مثل -Adapter -Bridge -Composite -Facade 3.behavioral patterns وهي تحديد أنماط الأتصال المشتركة بين الكائنات مثل -Blackboard -Command -Interpreter -Iterator ويكنك الأطلاع علي هذه المقالة الرابط هنا تم التعديل في 5 سبتمبر 2021 بواسطة Ziyad Hasan اقتباس
1 أسامة زيادة نشر 5 سبتمبر 2021 أرسل تقرير نشر 5 سبتمبر 2021 أنماط التصميم تعتبر نماذج لحل مشكلات متكررة في تصميم البرمجيات ،هي عبارة عن طريقة لحل مشكلات المعتادة أثناء تصميم البرمجيات بحيث يمكنك إستعمال الحلول في حالات مختلفة وهي ليست كود برمجي . تعتبر أنماط التصميم سهلة التعديل وسهلة الاختبار ومن أشهرها MVC و MVVM و Singleton وغيرها من أنماط التصميم هناك أنواع متعلقة بإنشاء الكلاس نمط Singleton نمط Builder نمط Prototype نمط Factory Method نمط Abstract Factory أنماط متعلقة بشكل الكلاس وكيفية عمله نمط Adapter نمط Composite نمط Facade نمط Bridge نمط Decorator نمط Proxy نمط Flyweight أنماط متعلقة بسلوك الكائنات هذه الأنماط تتعلق بكيفية التواصل بين الكائنات بشكل منفصل نمط Mediator نمط Observer نمط Null Object نمط Memento نمط State نمط Visitor وهناك أنماط أخرى في هذا النمط MVC Model يحتوى على البيانات view عرض المعلومات للمستخدم controller يعالج البيانات التي تأتي من المستخدم اقتباس
السؤال
خالد مرتضى
كثيراً ما اسمع عن مصطلح الديزاين باترنز الذى يترجم بالعربية الى انماط التصميم وكنت أتسائل كثيراً عن معنى هذا المصطلح
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.