Upload
sebastian-kurfuerst
View
11.516
Download
3
Embed Size (px)
DESCRIPTION
Workshop von OUTPUT'DD 2010 zum Thema Extension-Entwicklung mit Extbase und Fluid.
Citation preview
Inspiring people toshareExtensions für TYPO3 programmieren
- ACHTUNG -TYPO3-Evangelist
Inspiring people toshareExtensions für TYPO3 programmieren
Inspiring people toshareExtensions für TYPO3 programmieren
InhaltEinführung TYPO3
Anlegen einer Extenson
Fluid
Anpassen der Templates
Ausblick
Inspiring people toshareExtensions für TYPO3 programmieren
TYPO3Open Source Content Management System
Aktuelle stabile Version: TYPO3 4.2.3
60.000 bis 80.000 Downloads pro Monat
mehr als 30.000 Nutzer auf typo3.org registriert
Höchste Verbreitung im Mittelstand, jedoch auch Nutzung in großen Firmen: Dassault Systems, 3M, Sixt, Unesco, Unicef, WWF
Inspiring people toshareExtensions für TYPO3 programmieren
Die Geschichte von TYPO3seit 1998
33 Kernentwickler
bisher 500.000 Zeilen Code committed
aktuelle Codebase: 300.000 Zeilen
Inspiring people toshare
TYPO3
Extensions für TYPO3 programmieren
Content Management
Inhalte Darstellung
Content Management
Inspiring people toshare
TYPO3
Extensions für TYPO3 programmieren
Was ist Content?Texte, Bilder
News-Einträge
Forums-Postings
Blog-Postings
...
Extensions}
Inspiring people toshare
TYPO3
Extensions für TYPO3 programmieren
Extensions
TYPO3 Core
Extension Extension
Gewachsene Architektur
© K. Tuck at http://www.sxc.hu/photo/1135191
Inspiring people toshareExtensions für TYPO3 programmieren
„We need a new framework!“
Inspiring people toshareExtensions für TYPO3 programmieren
Inspiring people toshare
TYPO3
Extensions für TYPO3 programmieren
TYPO3 v4 und v5
TYPO3 v4
TYPO3 v5
FLOW3MVC DDD FluidMVC DDD FluidExtbase Fluid
Inspiring people toshareExtensions für TYPO3 programmieren
http://www.flickr.com/photos/seier/501370105/
ModelViewController
DomainDrivenDesign
Grundlagen
Inspiring people toshareExtensions für TYPO3 programmieren
Model View Controller
Domain Model (Domain Layer)
View
Controller
Inspiring people toshareExtensions für TYPO3 programmieren
http://www.flickr.com/photos/bunchofpants/106465356/sizes/o/
Das Modell isteine kleine Abbildung
der Realität.
Inspiring people toshareExtensions für TYPO3 programmieren
Der View rendert Daten.
http://www.sxc.hu/photo/1157763
Inspiring people toshareExtensions für TYPO3 programmieren
Der Controller steuert den Datenfluss und löst Aktionen aus
http://www.sxc.hu/browse.phtml?f=view&id=956017
Inspiring people toshareExtensions für TYPO3 programmieren
Controller
View
Model
Request Response
Inspiring people toshareExtensions für TYPO3 programmieren
Inspiring people toshareExtensions für TYPO3 programmieren
Domain-Driven Design
Fokus auf das
Wesentliche
das Frameworkkümmert sichum den Rest
http://www.sxc.hu/photo/59950
Domäne der Anwendung
Inspiring people toshare
Beispiel
Extensions für TYPO3 programmieren
Post
Comment*
Das Blog-Domänenmodell
PostRepository$post->getComments()
$postRepository->findAll()
Inspiring people toshareExtensions für TYPO3 programmieren
ZugangsdatenFrontend: http://141.76.66.180/platz_[platznummer]/
Backend: http://141.76.66.180/platz_[platznummer]/typo3
Dateien: http://141.76.66.180/webdav/platz_[platznummer]/typo3conf/ext/blog/
User / Passwort: admin / t3workshop
Fluid
Inspiring people toshareExtensions für TYPO3 programmieren
Model View Controller
Domain Model (Domain Layer)
View
Controller
Inspiring people toshare
Fluid
Extensions für TYPO3 programmieren
Variablen
$this->view->assign(‘blogTitle’, $blog->getTitle());
<h1>The name of the blog is: {blogTitle}</h1>
Inspiring people toshare
Fluid
Extensions für TYPO3 programmieren
Object Accessors
$this->view->assign(‘blog’, $blog);
<h1>The name of the blog is: {blog.title}</h1> Author: {blog.author}
Getter werden automatisch aufgerufen
Inspiring people toshare
Fluid
Extensions für TYPO3 programmieren
<f:link.action action=“someAction“> Administration</f:link>
View Helper
Inspiring people toshare
Fluid
Extensions für TYPO3 programmieren
Inline Notation
<f:format.nl2br> {post.text}</f:format.nl2br>
{post.text -> f:format.nl2br()}
Inspiring people toshare
Topictext
Extensions für TYPO3 programmieren
Inspiring people toshareExtensions für TYPO3 programmieren
InformationsquellenFolien auf slideshare.net/skurfuerst
Extbase-Projektseite:http://forge.typo3.org/projects/show/typo3v4-mvc
Fluid-Projektseite:http://forge.typo3.org/projects/show/package-fluid
Extbase-Kickstarter:http://forge.typo3.org/projects/show/extension-extbase_kickstarter
Inspiring people toshareExtensions für TYPO3 programmieren
InformationsquellenSVN: https://svn.typo3.org/TYPO3v4/CoreProjects/MVC/
Ausführliche Beispiel-Extension:https://svn.typo3.org/TYPO3v4/CoreProjects/MVC/blog_example/
Newsgroup / Mailing Liste: lists.typo3.org - typo3.projects.typo3v4mvc
Inspiring people toshareExtensions für TYPO3 programmieren
Buchempfehlungen
Inspiring people toshareExtensions für TYPO3 programmieren
Vielen Dank!
inspiring people to share.