Rumah >hujung hadapan web >tutorial js >Pengenalan kepada Corak Kaedah Kilang bagi Corak Reka Bentuk JavaScript

Pengenalan kepada Corak Kaedah Kilang bagi Corak Reka Bentuk JavaScript

PHPz
PHPzasal
2016-05-16 16:24:021549semak imbas

Artikel ini terutamanya memperkenalkan pengenalan corak kaedah kilang dalam corak reka bentuk JavaScript Artikel ini menerangkan corak kilang yang ringkas, berbilang corak kaedah kilang, dll. Rakan yang memerlukan boleh merujuknya

1. Corak kilang ringkas

Penjelasan: Ia adalah untuk mencipta kelas kilang, yang melaksanakan penciptaan kelas pelaksanaan untuk antara muka yang sama.

Tetapi nampaknya JavaScript tidak mempunyai perkara seperti antara muka, jadi kami mengalih keluar lapisan antara muka sudah tentu, pembolehubah ahli dan kaedah di bawah kelas pelaksanaan kami harus sama; >Sebagai contoh: Berikut adalah contoh penghantaran mesej teks dan penghantaran e-mel; 🎜>

3. Buat kelas kilang:

4 Gunakan kelas kilang ini:

function MailSender() {    
this.to = '';    
this.title = '';    
this.content = '';
}
MailSender.prototype.send = function() {    
//send body
}

2 🎜>
function SmsSender() {
    this.to = '';
    this.title = '';
    this.content = '';
}

SmsSender.prototype.send = function() {
    //send body
}
Penjelasan: Kaedah mod kilang berbilang adalah penambahbaikan pada kaedah kilang biasa, kerana pelaksanaan pemulangan adalah berdasarkan aksara yang dihantar masuk. Apabila aksara dimasukkan dengan salah, ia mungkin tidak diproses atau ia mungkin diproses dalam cara yang salah; dan kaedah corak Kilang berbilang boleh mengelakkan ralat seperti itu; > 3. Corak kaedah kilang statik

function SendFactory() {
    this.sender = null;
}

SendFactory.prototype.produce = function(type) {
    var me = this;
    if (type == 'mail') {
        me.sender = new MailSender();
    } else if (type == 'sms') {
        me.sender = new SmsSender();
    }
   return me.sender;
}
Penerangan: Hanya tukar kaedah berbilang corak kaedah kilang di atas kepada pengecam statik, supaya mereka tidak perlu membuat instantiate

akan Kod kelas kilang diubah suai seperti berikut:
var factory = new SendFactory();
var sender = factory.produce('mail'); //sms
sender.to = 'toName#mail.com';
sender.title = '邮件测试标题!';
sender.content = '发送内容';
sender.send();

Penggunaan:

Penerangan corak kaedah kilang

function SendFactory() {
    this.sender = null;
}

SendFactory.prototype.produceMail = function() {
    var me = this;
    me.sender = new MailSender();
    return me.sender;
}
SendFactory.prototype.produceSms = function() {
    var me = this;
    me.sender = new SmsSender();
    return me.sender;
}
Arahan tentang berorientasikan objek pengaturcaraan, Apabila terdapat banyak produk (model dunia sebenar, nama: nama kelas, atribut ahli, kaedah operasi, dll.) yang perlu dimulakan, iaitu produk perlu dibuat dan [melaksanakan antara muka yang sama], anda boleh gunakan corak kaedah kilang; corak pertama mempunyai Kemungkinan jenis input adalah salah Dalam mod kedua, contoh kilang dibuat apabila diperlukan

Di atas adalah keseluruhan kandungan bab ini lebih banyak tutorial berkaitan, sila lawati
var factory = new SendFactory();
var sender = factory.produceSms(); //produceMail
sender.to = 'toName#xxxxx';
sender.title = '短信发送方法标题';
sender.content = '发送内容';
sender.send();
Tutorial Video JavaScript

!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn