| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer Registriert seit: 02.09.2009
Beiträge: 1.019
PHP-Kenntnisse: Fortgeschritten ![]() | Du musst sogar alle Fälle über die gleiche Methode abhandeln. Sonst braucht der Aufrufer ja wieder Informationen über den Service und die Kopplung wird wieder enger.
__________________ Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 26.11.2008
Beiträge: 264
![]() | Du meinst den Fall, wenn Service A1, der Singleton ist, irgendwann mal durch den moderneren Service A2 ausgetauscht wird und nun nicht mehr Singleton ist? Das sehe ich ein, zwei verschiedene Methodenaufrufe sind Unsinn. Im Umkehrschluss heisst das dann ja auch, das tatsächlich der Service selbst bestimmt, ob er Singleton ist oder nicht. Und nicht der Aufrufer. |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 02.09.2009
Beiträge: 1.019
PHP-Kenntnisse: Fortgeschritten ![]() | Korrekt.
__________________ Wir suchen PHP Entwickler (Vollzeit) im Raum Darmstadt / Rhein-Main. Infos via E-Mail mueller@new-frontiers.de |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 25.05.2010
Beiträge: 852
PHP-Kenntnisse: Anfänger ![]() | Nachdem ich nun etliche Stunden mit der Lektüre von DI, DICs, IoC, Service Locator und Factories verbracht habe, ist mir die ganze Thematik klarer geworden. Eine zentrale Erkenntnis ist, dass DIC-Container zumeist als Service Locators verwendet werden. Allein die Anforderung eines Service innerhalb eines Controller über bspw. eine get()-Methode stellt bereits diesen Fall dar. Konsequentes DI würde bedeuten, von der Wurzel an per Injiektion zu arbeiten. Gerade in Verbindung mit MVC scheint es nicht trivial zu sein bzw. ist ein hoher Aufwand nötig, um konsequent DI einzusetzen zu wollen. Sollten selbst Action-Methoden via Injizierung ihre Abhängigkeiten erhalten, ist es entweder nötig dem Controller per Konfiguration die entsprechenden Abhängigkeiten zu injizieren und somit in den Action-Methoden verfügbar zu machen, oder aber, sofern die Action-Methoden unterschiedlichste Services nutzen und es nicht gewollt ist, diese alle dem Controller zu injizieren, weil zur Laufzeit nur ein Teil davon benötigt wird, wird es nötig, eine eigene Konfigurationen für die Action-Methoden bereitzustellen, um den individuellen Bedürfnissen, sprich Abhängigkeiten, nachzukommen. Meiner Meinung nach wäre das ein glatter Konfigurationswahnsinn. |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 26.11.2008
Beiträge: 264
![]() | Ja, aber nur dann wenn du DI Wirklich von der Wurzel an planst. Ein DI-Prozess kann ja auch angestoßen werden, nachdem mehrere "fest verankerte" Komponente integriert wurden, etwa der Controller. Ich denke, mit meiner Realisierung bin ich einen vernünftigen Mittelweg gegangen. |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| CSS alphatranzparenz nicht an eingeschlossene container vererben | litterauspirna | HTML, Usability und Barrierefreiheit | 7 | 03.11.2011 10:57 |
| [CSS] Container in Container | Igäl | HTML, Usability und Barrierefreiheit | 5 | 04.09.2007 11:29 |