Entwicklung in Contao
Composer, Auto-Loading, Namespaces, Symfony, Dependency Injection, Services, Controllers, Git, PHP-Attributes und vieles mehr – eigene Hooks, Event Listeners, Controllers, etc. auf modernen Weg in einer Contao 5 Applikation zu bringen, mag auf dem ersten Blick kompliziert wirken. In diesem Workshop werden die nötigen Zusammenhänge und darauf aufbauend Best-Practices vermittelt, damit einem bei der eigenen Entwicklung in einer Contao Installation nichts im Wege steht.
Teilnehmerzahl: maximal 12 | mindestens 5
Das erwartet dich in diesem College
Mit dem Versionssprung von 3 auf 4 haben wir bei Contao auch eine große Architekturänderung erlebt. Ab Version 4 nutzt Contao nicht nur das Symfony Framework, sondern setzt auch voll & ganz auf die Applikationsstruktur davon. Zwar wurde die Rückwärtskompatibilität zu Contao 3 fast vollständig erhalten und existiert in den Grundzügen auch noch in Contao 5, die neue Architektur bietet jedoch viel flexiblere und sauber strukturierte Möglichkeiten als bisher. Das bedeutet jedoch auch, dass die Komplexität der zusammenhängenden Komponenten stark gestiegen ist. Allein die Installations- bzw. Paketverwaltung über Composer – schon länger der zentrale Dreh- und Angelpunkt für viele PHP-Applikationen – beherbergt viele interessante Dinge, die man wissen kann oder sollte.
Am anderen Ende des Spektrums stehen dann die Möglichkeiten innerhalb des Frameworks – generell in Symfony oder speziell in Contao 4 und 5. Wie erweitere ich nun am besten mein DCA? Wo kommen Übersetzungen hin? Wie implementiere ich einen Hook? Wo kann ich mich mit eigener Applikationslogik hineinhängen? Wie kann ich eigene Controller für AJAX Abfragen implementieren? Was ist ein Service und was bringt mir das?
Dieser Workshop soll dabei helfen die wichtigsten Wissenslücken zu schließen und die Best-Practices bei der Entwicklung innerhalb von Contao 4 und 5 kennenzulernen.
Zielsetzung
Ziel des Workshops ist es den Teilnehmer*innen beizubringen, wie man am besten in Contao entwickelt und darüber hinaus sollen alle dafür notwendigen Zusammenhänge vermittelt werden. Die Entwicklung innerhalb einer Contao 5 Installation bildet dafür die Basis und aufbauend darauf werden auch dafür wiederum die notwendigen Zusammenhänge und Best-Practices erklärt.
Inhalt
Der Inhalt des Workshops wird sich auf zwei Kapitel aufteilen:
- Die Basis:
Composer, Namespaces, Auto-Loading, Dependency Injection & Co. - Die Entwicklung:
Services, Hooks, Callbacks, Inhaltselemente, Frontend Module, sonstige Controller, DCAs für meine Contao 5 Installation.
Falls am Ende noch Zeit und der Wunsch besteht, kann auch noch ein drittes Kapitel bearbeitet werden: Erweiterungen definieren, integrieren, verwalten und weiterentwickeln.
In allen Kapiteln wird mit praktischen Beispielen gearbeitet. Die Teilnehmer*innen sind dazu eingeladen bei jedem Schritt selbst am eigenen Rechner mitzuarbeiten!
Voraussetzungen
Für die Mitarbeit ist ein eigener Rechner mit funktionierender Web-Entwicklungsumgebung notwendig. Es wird vorausgesetzt, dass man sich eine Contao 5 Installation bereits selbst über die Kommandozeile via Composer installieren und den Webserver für den Betrieb der Contao 5 Installation entsprechend konfigurieren kann. Generell werden Programmierkentnisse in PHP vorausgesetzt. Zwar werden wie schon erwähnt Dinge wie Dependency Injection und bspw. Namespaces erklärt, jedoch soll das nur dazu dienen die Zusammenhänge zu verstehen. Tiefergehendes Wissen zu diesen allgemeinen Themen kann im Rahmen des Workshops nicht vermittelt werden. Natürlich auch nicht generell zu Themen wie & warum man objektorientiert programmiert etc.
Für den Workshop sollte bereits eine Contao 5.2 Installation vorhanden sein.
Zielgruppe
Dieser Workshop richtet sich an alle Contao Entwickler, die die Möglichkeiten in Contao schon kennen, aber sich noch nicht tiefer mit der Entwicklung innerhalb von Contao 4/5 bzw. Symfony befasst haben. Der Workshop kann zwar auch als Einstieg in die Contao Entwicklung benutzt werden, allerdings wird eben davon ausgegangen, dass man weiß, was bspw. In Contao ein „DCA“ ist, wie Hooks funktionieren und wie das Contao Framework grundsätzlich aufgebaut ist.
Dein Workshopleiter
Fritz Michael Gschwantner ist Co-Founder von inspiredminds, ein Entwicklerstudio im Herzen von Wien, gegründet im Jahr 2013. Neben vielen kleinen Symfony Apps, die in den Anfängen der Firma entwickelt wurden, liegt der Fokus aktuell bei Entwicklungen in und für Contao. Vielen ist Fritz vermutlich auch unter dem Nickname „Spooky“ aus dem Contao Community Forum ein Begriff, wo er mit über 32.000 Posts schon vielen Benutzern hilfreich zur Seite stand. Auch auf GitHub tummeln sich unter dem Username „fritzmg“ und der Organisation „inspiredminds“ einige hilfreiche Erweiterungen für Contao.
Facts
Termin: Samstag, 21.10.2023
Beginn: 9:00 Uhr
Ende: ca. 16:30 Uhr
Preis: 399,00 €
Leistungen
- Seminar laut Beschreibung
- alkoholfreie Getränke während des Seminars
- Mittagessen
- Kaffee und Snacks in den Pausen
Das College ist ausverkauft