In objektorientiertem Design gibt es ein einzelnes Verantwortungsprinzip, was bedeutet, dass es in Bezug auf eine Klasse (Objekt, Funktion) nur einen Grund für ihre Änderung geben sollte. Wenn ein Objekt zu viele Verantwortlichkeiten übernimmt, bedeutet dies, dass es enorm wird und es viele Gründe für seine Veränderung gibt. Es passt diese Verantwortlichkeiten zusammen, was es schwierig macht, das Programm aufrechtzuerhalten und neu zu refaktorieren.
Zu diesem Zeitpunkt können wir einen Teil der Verantwortlichkeiten des Objekts (Ontologie) trennen und es einigen Objekten von Drittanbietern geben. Die Ontologie kümmert sich nur um einige seiner eigenen Kernaufgaben, und diese Objekte von Drittanbietern werden als Agenten bezeichnet. Ein Proxy -Objekt kann als Beschützer eines Objekts (auch als "reales Thema" bezeichnet) dienen, sodass das reale Objekt so wenig Arbeit wie möglich leisten kann. Im Proxy -Designmuster fungiert ein Objekt als Schnittstelle eines anderen Objekts.
Normalerweise sollte die Schnittstelle zwischen dem Proxy und der Ontologie konsistent sein, sodass der Benutzer, wenn kein Proxy benötigt wird, direkt auf die Ontologie zugreifen kann.
Wenn es für uns nicht bequem ist, direkt auf ein Objekt zuzugreifen, können wir in Betracht ziehen, einen Agenten für das Objekt zu rekrutieren.
Proxy kann verwendet werden, um: Bildvorladen, Zusammenführen von HTTP -Anforderungen (Proxy sammelt alle HTTP -Anfragen für einen bestimmten Zeitraum und sendet sie dann gleichzeitig an den Server), fauler Laden (Verarbeitung und Sammeln von grundlegenden Operationen durch Proxy -Vorgänge durch Proxy, und dann laden die Ontologie nur, wenn die Ontologie wirklich erforderlich ist).
Beispiel 1: Bild -Vorspannung
var myImage = (function(){ var imgNode = document.createElement('img'); document.body.appendChild(imgNode); return { setSrc:function(src){ imgNode.src = src; } }})();//Proxy function var proxyImage = (function(){ var img = new Image; img.onload = function(){ myimage.setsrc (this.src);Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.