Pengenalan kepada corak kilang abstrak bagi corak reka bentuk JavaScript_kemahiran javascript

WBOY
Lepaskan: 2016-05-16 16:24:03
asal
1316 orang telah melayarinya

Penerangan Corak Kilang Abstrak

1. Masalah dengan corak kaedah kilang: Dalam corak kaedah kilang, membuat kelas memerlukan lulus kelas kilang. Jika anda ingin melanjutkan program, anda mesti mengubah suai kelas kilang dan terbuka kepada sambungan tetapi tertutup kepada pengubahsuaian ;Terdapat masalah tertentu dengan reka bentuk.
2. Cara menyelesaikan: Kita perlu menggunakan corak kilang abstrak, iaitu mencipta kelas kilang secara berasingan untuk kelas berfungsi, supaya tidak perlu mengubah suai kod sebelumnya dan fungsi itu dikembangkan.
3. Corak kilang sebenarnya adalah kaedah kilang bersatu untuk mencipta dan memanggil kelas pelaksanaan yang melaksanakan antara muka yang sama Walau bagaimanapun, JavaScript tidak mempunyai perkara seperti antara muka, jadi lapisan pelaksanaan ini dialih keluar, tetapi ahli dan kaedah kelas berfungsi hendaklah sama;

Contoh kod sumber kilang abstrak

1. Jenis penghantaran e-mel:

Salin kod Kod adalah seperti berikut:

fungsi MailSender() {
This.to = '';
This.title = '';
This.content = '';
}

MailSender.prototype.send = function() {
//hantar badan
}

2. Kategori penghantaran SMS:

Salin kod Kod adalah seperti berikut:

fungsi SmsSender() {
This.to = '';
This.title = '';
This.content = '';
}

SmsSender.prototype.send = function() {
//hantar badan
}

3. Kelas antara muka kilang pada asalnya dicipta di sini, tetapi ia dialih keluar di sini; setiap kilang kelas berfungsi dicipta secara langsung;

1>. Kelas kilang mel:


Salin kod Kod adalah seperti berikut:
fungsi MailFactory() {
 
}
MailFactory.prototype.produce = function() {
Kembalikan MailSender();
}

2>. Kelas kilang SMS:


Salin kod Kod adalah seperti berikut:
fungsi SmsFactory() {
 
}
SmsFactory.prototype.produce = function() {
Kembalikan SmsSender();
}

4. Cara penggunaan:


Salin kod Kod adalah seperti berikut:
var factory = new MailFactory();
var sender = factory.produce();
sender.to = 'toname#mail.com';
sender.title = 'Corak Kilang Abstrak';
sender.content = 'Hantar kandungan';
sender.send();

Arahan lain

Corak kilang yang digunakan dalam bahasa berorientasikan objek seperti java dan .net C# semuanya menggunakan antara muka adalah kaedah yang didedahkan kepada pelbagai pengguna Mereka menerangkan kaedah yang digunakan untuk menggunakan fungsi ini dan cara pengguna harus menggunakannya antara muka. Objek dinyatakan dalam bentuk kelas, mewakili beberapa jenis abstraksi di dunia nyata Mungkin adegan itu akan mempunyai banyak aplikasi yang serupa, seperti penghantaran e-mel di atas, penghantaran mesej teks, dan pelbagai kaedah promosi di pusat membeli-belah, serta. dalam dunia haiwan. Pelbagai burung dan haiwan, dll..

Jika kami tidak menyediakan pengguna dengan antara muka, kami pasti akan menyediakan objek kelas berfungsi sebenar kepada pengguna Pengguna boleh mengubah suai dan memanjangkan objek kelas sesuka hati, yang tidak dibenarkan.

Corak kaedah kilang dan corak kilang abstrak boleh menyelesaikan masalah ini dengan baik Kelas melaksanakan pelanjutan peringkat kelas mereka sendiri dengan melaksanakan antara muka yang sepadan dan tidak akan melibatkan pengubahsuaian kelas atau kaedah lain

Sudah tentu, tiada cara untuk melakukan ini dalam bahasa seperti javascript Pengaturcara perlu berdisiplin diri!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan