Skip to content

الفصل 17: أنماط التصميم

المستوى: متقدم | أنماط التصميم الشائعة في لغة ص: المفرد (Singleton)، المراقب (Observer)، الاستراتيجية (Strategy)، المصنع (Factory)

17.1 نمط المفرد (Singleton)

sad
صنف إعدادات
    ساكن متغير _نسخة = لاشيء
    خاص متغير _بيانات = {}

    ساكن دالة النسخة()
        إذا (إعدادات._نسخة == لاشيء)
            إعدادات._نسخة = جديد إعدادات()
        نهاية
        ارجع إعدادات._نسخة
    نهاية

    دالة عيّن(مفتاح، قيمة)
        هذا._بيانات[مفتاح] = قيمة
    نهاية

    دالة احصل(مفتاح)
        ارجع هذا._بيانات[مفتاح]
    نهاية
نهاية

17.2 نمط المراقب (Observer)

sad
صنف ناشر
    متغير _مراقبون = []

    دالة اشترك(مراقب)
        هذا._مراقبون.أضف(مراقب)
    نهاية

    دالة أخبر(حدث، بيانات)
        لكل مراقب في هذا._مراقبون
            مراقب.عند_الحدث(حدث، بيانات)
        نهاية
    نهاية
نهاية

17.3 نمط الاستراتيجية (Strategy)

sad
صنف سياق_فرز
    متغير _استراتيجية

    باني(استراتيجية)
        هذا._استراتيجية = استراتيجية
    نهاية

    دالة فرز(بيانات)
        ارجع هذا._استراتيجية(بيانات)
    نهاية
نهاية

مُرخَّص بموجب رخصة MIT