1. وضع المصنع البسيط
الوصف: هو إنشاء فئة مصنع ، والتي تنفذ إنشاء فئة التنفيذ لنفس الواجهة.
ولكن يبدو أن JavaScript ليس لديه رقم واجهة ، لذلك نقوم بإزالة طبقة الواجهة ؛ بالطبع ، يجب أن تكون متغيرات الأعضاء وطرق فئة التنفيذ الخاصة بنا هي نفسها ؛
على سبيل المثال: في هذا الوقت ، يمكنك تقديم مثال على إرسال الرسائل النصية وإرسال رسائل البريد الإلكتروني ؛
1>. إرسال البريد [التنفيذ] فئة
نسخة الكود كما يلي:
وظيفة mailsender () {
this.to = '' ؛
this.title = '' ؛
this.content = '' ؛
}
mailsender.prototype.send = function () {
// إرسال الجسم
}
2>. إرسال الرسائل النصية القصيرة [التنفيذ]
نسخة الكود كما يلي:
وظيفة smssender () {
this.to = '' ؛
this.title = '' ؛
this.content = '' ؛
}
smssender.prototype.send = function () {
// إرسال الجسم
}
3>. إنشاء فئة المصنع:
نسخة الكود كما يلي:
وظيفة sendFactory () {
this.sender = null ؛
}
sendfactory.prototype.produce = function (type) {
var me = هذا ؛
if (type == 'mail') {
me.sender = new MailSender () ؛
} آخر إذا (type == 'sms') {
me.sender = new smssender () ؛
}
أعدني.
}
4>. استخدم فئة المصنع هذه:
نسخة الكود كما يلي:
var factory = new sendFactory () ؛
var sender = factory.produce ('mail') ؛ //رسالة قصيرة
sender.to = 'toname#mail.com' ؛
sender.title = 'عنوان اختبار البريد!' ؛
sender.content = 'إرسال المحتوى' ؛
المرسل.
2. وضع طريقة المصنع المتعدد
ملاحظة: تعتبر طرق وضع المصنع المتعددة تحسنا لأساليب المصنع العادية ، لأن تطبيق الإرجاع يعتمد على الأحرف التي تم تمريرها. عندما يكون إدخال الحرف غير صحيح ، قد لا تتم معالجته أو معالجته في خطأ ؛ في حين أن طرق وضع المصنع المتعددة يمكن أن تتجنب مثل هذه الأخطاء ؛
لقد قمنا بتحسينات على فئة المصنع أعلاه:
نسخة الكود كما يلي:
وظيفة sendFactory () {
this.sender = null ؛
}
sendfactory.prototype.producemail = function () {
var me = هذا ؛
me.sender = new MailSender () ؛
أعدني.
}
sendfactory.prototype.producesms = function () {
var me = هذا ؛
me.sender = new smssender () ؛
أعدني.
}
كيفية استخدام:
نسخة الكود كما يلي:
var factory = new sendFactory () ؛
var sender = factory.producesms () ؛ // المنتج
sender.to = 'toname#xxxxx' ؛
sender.title = 'sms trans title title' ؛
sender.content = 'إرسال المحتوى' ؛
المرسل.
3. وضع طريقة المصنع الثابت
ملاحظة: قم بتغيير طرق وضع طريقة المصنع المتعددة أعلاه إلى التعريف الثابت بحيث لا توجد حاجة إلى إنشاء إنشاء مرسل للمرسل ؛
قم بتعديل رمز المصنع على النحو التالي:
نسخة الكود كما يلي:
var sendfactory = {
Producemail: function () {
إرجاع mailsender الجديد () ؛
} ،
المنتجات: وظيفة () {
إرجاع smssender جديد () ؛
}
}
كيفية استخدام:
نسخة الكود كما يلي:
var sender = sendfactory.producemail () ؛
sender.to = 'toname#mail.com' ؛
sender.title = 'mail send title' ؛
sender.content = 'إرسال المحتوى' ؛
المرسل.
وصف طريقة المصنع الوصف
في وصف برمجة التفكير الموجهة للكائنات ، عندما يكون هناك العديد من المنتجات (نماذج العالم الحقيقي ، الأسماء: أسماء الفصول الدراسية ، سمات الأعضاء ، وأساليب التشغيل ، وما إلى ذلك) التي يجب تهيئتها ، أي يجب إنشاء المنتج ، و [عند تنفيذ الواجهة نفسها] ، يمكن استخدام وضع طريقة المصنع ؛ يحتوي الوضع الأول على إمكانية خطأ في نوع الإدخال ، والوضع الثاني ، عندما يكون ضروريًا ، يتم إنشاء مثيل المصنع ؛