الوضع الأساسي:
1. نمط الواجهة: عندما توفر فئات متعددة خدمات مماثلة، من خلال نمط الواجهة، يمكن تجريد الخدمات المشتركة التي تقدمها فئات موفر الخدمة المختلفة وإعلانها كواجهة مستقلة. يتيح ذلك لكائنات العميل استخدام فئات موفر الخدمة المختلفة بطريقة سلسة دون أي تغييرات.
2. نمط الفصل الملخص: يمكن استخدامه لتصميم إطار يوفر تنفيذًا متسقًا للوظائف المشتركة لمجموعة من الفئات ذات الصلة. على عكس الواجهات، يجب تنفيذ الأساليب الموجودة في الواجهات في فئات فرعية. يمكن تنفيذ الأساليب الضرورية في فئات مجردة، وتحتاج الفئات الفرعية فقط إلى الوراثة، وبالتالي تقليل تطبيقات الأساليب الزائدة عن الحاجة.
3. نمط الطريقة الخاصة: لا يمكن استخدام بعض الأساليب داخليًا إلا عن طريق طرق أخرى أو فئات داخلية في نفس الكائن. يوصي هذا النمط بتصميم أساليب خاصة.
4. نمط الوصول: في الكائن، يتم الإعلان عن جميع متغيرات المثيل كخاصية، ويتم توفير طرق الوصول العامة للوصول إلى الحالة العامة للكائن؛ ويمكن للعملاء تغيير كائن من حالة إلى أخرى باستخدام أدوات الوصول الكائن لديه حق الوصول المباشر إلى المتغيرات الخاصة به. يستخدم JavaBean في JSP هذا النمط.
5. مدير البيانات الثابتة: مناسب جدًا لتصميم آلية تخزين فعالة لإدارة البيانات الثابتة التي تستخدمها الكائنات المختلفة في التطبيق. يشير هذا النمط إلى أن البيانات التي تكون قيمها دائمة في التطبيق يجب تخزينها في كائن منفصل للوصول إليها بواسطة كائنات أخرى في التطبيق، بدلاً من السماح لها بالظهور في كائنات مختلفة. يوفر هذا النوع من الفصل مستودعًا مركزيًا يسهل صيانته للبيانات الثابتة في تطبيقك.
6. الكائنات غير القابلة للتغيير: قم بتعيين جميع متغيرات المثيلات في المُنشئ، ولا توفر أي طرق أخرى يمكنها تغيير حالة الكائن؛ قم بإعلان الفئة كنوع معجب لمنع إمكانية تغيير الحالة عن طريق تجاوز أساليب الفئة؛ تتم كتابة جميع متغيرات المثيلات كنوع مهووس، بحيث لا يمكن تعيينها إلا من خلال طريقة الإنشاء؛ إذا كان أي من متغيرات المثيل يحتوي على مرجع إلى كائن، فإن طريقة get المقابلة inggai تُرجع نسخة من الكائن بدلاً من الحقيقة. الكائن نفسه. يمكن للآلية المذكورة أعلاه ضمان سلامة الخيط والقضاء تلقائيًا على جميع المشكلات المتعلقة بالوصول المتزامن.
7. المراقبة: تحصل على قفل على مثل هذا الكائن للتأكد من السماح لخيط واحد فقط بتنفيذ أي طريقة للكائن في أي وقت. يمكن القيام بذلك في Java باستخدام الكلمة الأساسية المتزامنة في إعلان طريقة الكائن.
وضع الإنشاء:
الدور: يتعامل مع إحدى المهام الأكثر شيوعًا في تطبيقات OO - إنشاء الكائنات؛ يدعم استخدام آليات مقيدة متسقة وبسيطة لإنشاء الكائنات؛ ويسمح بتغليف التفاصيل حول الفئات وكيفية إنشاء المثيلات التي تدعم استخدام الواجهات؛ جيل اقتران.
1. طريقة المصنع: إذا كان كائن العميل لا يعرف الفئة التي سيتم إنشاء مثيل لها، فيمكنه استخدام طريقة المصنع لإنشاء مثيل للفئة المقابلة في التسلسل الهرمي للفئة أو مجموعة الفئات ذات الصلة. قد يتم تصميم أساليب المصنع كجزء من العميل نفسه، أو قد يتم تصميمها في فئات فردية. من بينها، تحدد الفئة التي تحتوي على طريقة المصنع أو أي من فئاتها الفرعية الفئة التي تم تحديدها وكيفية إنشاء مثيل لها.
2. Singleton: يوفر آلية إنشاء كائن مقيدة للتأكد من وجود مثيل واحد فقط لفئة محددة.
3. Abstract Factory: يسمح بإنشاء مثيلات للفئات ضمن مجموعة من الفئات ذات الصلة دون أن يحدد كائن العميل الفئة الفعلية الفعلية التي سيتم إنشاء مثيل لها.
4. النموذج الأولي: يوفر طريقة بسيطة لإنشاء الكائنات، أي نسخ الكائنات من الكائنات الموجودة.
5. المولد: يسمح بإنشاء كائنات معقدة، ويمكنه توفير معلومات نوع الكائن ومحتواه فقط، ويجعل التفاصيل حول إنشاء الكائن شفافة للعميل. يسمح هذا الأسلوب لنفس عملية البناء بإنشاء تمثيلات كائنات مختلفة.