Hallo Freunde. Alex Versus mit dir .
Zuvor haben wir über die Entwurfsmuster von Singleton und Strategy gesprochen , über die Feinheiten der Implementierung in der Golang- Sprache .
Heute werde ich Ihnen von der Factory-Methode erzählen.
Was ist der Sinn?
Die Factory-Methode, auch als virtueller Konstruktor bekannt, ist ein erstaunliches Entwurfsmuster, das eine generische Schnittstelle zum Erstellen von Objekten in einer übergeordneten Klasse definiert und das Ändern der in untergeordneten Klassen erstellten Objekte ermöglicht.
Mit der Vorlage kann eine Klasse die Objekterstellung an Unterklassen delegieren. Wird verwendet, wenn:
Die Klasse weiß nicht im Voraus, welche Unterklassenobjekte sie erstellen muss.
Verantwortlichkeiten werden an die Unterklasse delegiert, und das Wissen darüber, welche Unterklasse diese Verantwortlichkeiten übernimmt, wird lokalisiert.
Erstellte Objekte der übergeordneten Klasse sind auf Unterklassen spezialisiert.
Welches Problem löst es?
Stellen Sie sich vor, Sie haben ein Programm zur Verwaltung der Lebensmittellieferung erstellt. Das Programm verwendet einen Elektroroller als einziges Lieferfahrzeug. Ihre E-Scooter-Kuriere liefern Lebensmittel von Punkt A nach Punkt B. Es ist ganz einfach.
. , , -. . .
, , 80% . ?
, , , .
?
, , , .
, . , , , .
.
Golang
PHP, . Golang , , . , - .
iTransport.go, . (struct), iTransport.
Factory.go, . main.go. getTransport(t string)
, .
?
. , , .
. , . , .
?
. , .
.
/ (. open–closed principle, OCP) — , : « (, , . .) , »
?
, .
, -.
, Alex Versus. .
!