Dalam desain yang berorientasi objek, ada satu prinsip tanggung jawab, yang berarti bahwa dalam hal kelas (objek, fungsi), seharusnya hanya ada satu alasan untuk perubahannya. Jika suatu objek mengasumsikan terlalu banyak tanggung jawab, itu berarti akan menjadi besar, dan ada banyak alasan untuk perubahannya. Ini memasangkan tanggung jawab ini bersama -sama, yang akan menyulitkan untuk mempertahankan dan refactor program.
Pada saat ini, kita dapat memisahkan bagian dari tanggung jawab objek (ontologi) dan memberikannya kepada beberapa objek pihak ketiga. Ontologi hanya peduli dengan beberapa tanggung jawab intinya sendiri, dan benda-benda pihak ketiga ini disebut agen. Objek proxy dapat berfungsi sebagai pelindung suatu objek (juga disebut "subjek nyata"), yang memungkinkan objek subjek nyata melakukan pekerjaan sesedikit mungkin. Dalam pola desain proxy, satu objek bertindak sebagai antarmuka objek lain.
Biasanya, antarmuka antara proxy dan ontologi harus konsisten, sehingga ketika tidak diperlukan proxy, pengguna dapat secara langsung mengakses ontologi.
Ketika tidak nyaman bagi kami untuk secara langsung mengakses objek, kami dapat mempertimbangkan untuk merekrut agen untuk objek tersebut.
Proxy dapat digunakan untuk: gambar preloading, penggabungan permintaan HTTP (proxy mengumpulkan semua permintaan HTTP untuk periode waktu tertentu dan kemudian mengirimkannya ke server pada satu waktu), pemuatan malas (pemrosesan dan mengumpulkan beberapa operasi dasar melalui proxy, dan kemudian memuat hasil ontologi, ketika ontologi benar -benar diperlukan), cache, dan memuat caches, ketika ontologi benar -benar diperlukan), Cache, dan CACHE memuat ontologi.
Contoh 1: gambar preloading
var myimage = (function () {var imGnode = document.createElement ('img'); document.body.applchild (imGnode); return {setSrc: function (src) {imGnode.src = src;}}}) (); // foxy function. function () {myimage.setsrc (this.src);Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.