English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

أربعة أنماط تصميم PHP الشائعة

أولاً، دعنا نلقي نظرة على نموذج Singleton

يعني نموذج Singleton أنه سيكون هناك فقط نموذج واحد من هذه الفئة في التطبيق.

يستخدم نموذج Singleton عادةً في الحالات التي يسمح فيها بوجود نسخة واحدة فقط من كائن الوصول إلى قاعدة البيانات، مما يمنع فتح عدة اتصالات بقاعدة البيانات.

يجب أن يشمل الفئة Singleton النقاط التالية:

والمختلفة عن الفئات العادية، لا يمكن إنشاء كائن من الفئة Singleton مباشرة، بل يجب أن يتم إنشاؤه من نفسه. لذلك، يجب أن يتم تسمية الماكينة البنائيةprivate للحصول على هذا التأثير المحدود.

要让单例类不被直接实例化而能起到作用,就必须为其提供这样的一个实例。因此,就必须要让单例类拥有一个能保存类的实例的私有静态成员变量和对应的一个能访问到实例的公共静态方法。

在PHP中,为防止对单例类对象的克隆来打破单例类的上述实现形式,通常还为基提供一个空的私有__clone()方法。

单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。

单例模式是一种常见的设计模式,在计算机系统中,线程池、缓存、日志对象、对话框、打印机、数据库操作、显卡的驱动程序常被设计成单例。

يوجد 3 أنواع من نموذج Singleton: Singleton Lazy، Singleton Eager، Singleton Registry.

يتميز نموذج Singleton بـ 3 خصائص.

1. يجب أن يكون هناك مثال واحد فقط.

2. يجب إنشاء هذا المثال بشكل مستقل.

3. يجب تقديم هذا المثال إلى الأطراف الأخرى.

إذن لماذا نستخدم نموذج Singleton في PHP؟

يستخدم PHP بشكل رئيسي في سيناريوهات التطبيقات التي تتواصل مع قاعدة البيانات، حيث يوجد العديد من العمليات المتعلقة بالبيانات الأساسية في التطبيق، يمكن استخدام نموذج Singleton لتجنب عدد كبير من عمليات new. لأن كل عملية new تستهلك موارد النظام والمساحة العشوائية.

في تطوير المشاريع السابقة، قبل استخدام نموذج Singleton كما يلي: لم يكتمل....

هذا هو نهاية محتوى هذا المقال، نأمل أن يكون محتوى هذا المقال قد ساعدكم في التعلم أو العمل، ونأمل أيضًا أن تشجعوا تعليم呐喊!

البيان: محتوى هذا المقال تم جمعه من الإنترنت، ويحق لصاحب الحقوق أن يكون له حقوق ملكية، والمحتوى تم جمعه من قبل المستخدمين عبر الإنترنت وتم تحميله بشكل مستقل، ويحق للوحة المعلومات هذه أن تملك حقوق الملكية، ولا يتم تعديل المحتوى بشكل يدوي، ولا يتحمل الموقع أي مسؤولية قانونية متعلقة بذلك. إذا اكتشفت محتوى يشتبه في حقوق النسخ، فلا تتردد في إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # ب @) لإبلاغنا، وقدم الدليل على ذلك، إذا تم التحقق من ذلك، فإن الموقع سيزيل محتوى يشتبه في حقوق النسخ فورًا.

أنت قد تعجبك