معنى نمط الإستراتيجية هو تحديد سلسلة من الخوارزميات ، وتغليفها واحدًا تلو الآخر ، وجعلها قابلة للاستبدال.
مثال صغير يمكن أن يجعلنا واضحين في لمحة.
استدعاء طريقة تحريك في jQuery.
نسخة الكود كما يلي:
$ (div) .animate ({"Left: 200px"} ، 1000 ، 'Linear') ؛ // تحرك بشكل موحد
$ (div) .animate ({"Left: 200px"} ، 1000 ، 'Cubic') ؛ // إغراء القوة المكعبة
يجعل هذان الرموزان DIV Move 200 بكسل إلى اليمين في غضون 1000 مللي ثانية. الخطية (السرعة الثابتة) والمكعب (تخفيف قوة الخرقاء) هي حزم وضع الاستراتيجية.
لنأخذ مثالًا آخر. في النصف الأول من العام ، كتبت dev.qplus.com ، سيكون للعديد من الصفحات نموذج التحقق الفوري. سيكون لكل عضو في النموذج بعض قواعد التحقق المختلفة.
على سبيل المثال ، في مربع الاسم ، من الضروري التحقق من المواقف مثل الكلمات غير الفارغة ، والكلمات الحساسة ، والشخصيات المفرطة. بالطبع ، يمكنك كتابة 3 إذا كان لحل المشكلة ، ولكن يمكن تخيل قابلية التوسع وصيانة رمز الكتابة بهذه الطريقة. إذا كان هناك المزيد من العناصر في النموذج ومزيد من حالات التحقق ، فليس من المستحيل كتابة مئات من إذا كان الإجمالي آخر.
لذا فإن النهج الأفضل هو تغليف كل قاعدة التحقق بشكل منفصل باستخدام نمط السياسة. عندما تحتاج إلى التحقق من نوع التحقق ، تحتاج فقط إلى توفير اسم هذه السياسة. مثله:
نسخة الكود كما يلي:
NameInput.Addvalidata ({
Notnull: صحيح ،
الكلمات القذرة: صحيح ،
MaxLength: 30
})
لا يحتاج Notnull و MaxLength وغيرها فقط إلى العودة بشكل صحيح أو خطأ بشكل موحد للإشارة إلى ما إذا كانت قد اجتازت التحقق.
انسخ الرمز على النحو التالي: Validatalist = {
notnull: function (value) {
قيمة الإرجاع! == "؛
} ،
MaxLength: Function (value ، maxlen) {
قيمة الإرجاع. length ()> maxlen ؛
}
}
كما يمكن أن نرى ، يتم تعديل قواعد التحقق المختلفة بسهولة واستبدالها ببعضها البعض. إذا اقترح مدير المنتج يومًا ما أن الحد الأقصى للشخصيات الطويلة جدًا يتم تغييره إلى 60 حرفًا. هذا يستغرق فقط 0.5 ثانية لإكمال العمل.