[TYPO3-german] Eigene Extensions - Neu entwickeln oder upgraden Typo3 4.4 und 6.2
bernd wilke
t3ng at bernd-wilke.net
Wed Mar 25 13:25:13 CET 2015
Am 25.03.15 um 09:23 schrieb Börge Hendrik:
> Hallo Bernd,
>
> Im Detail kann ich Dir dies nicht beantworten.
> Im wesentlichen sollten die PI 4.4/4.5 Extensions so angepasst werden,
> dass Sie auch unter 6.2 laufen. In einigen Monaten soll aber eine
> weitere Erweiterung erfolgen, die dann im Hinblick auf die Zukunft auf
> Extbased Entwicklung programmiert werden sollte. Somit kann es gut sein,
> dass die Umstellung von PI auf Extbased Entwicklung im Upgrade
> durchgeführt werden soll.
>
> Ein Projektleiter sagte:
> "Current development and stage is no where compatible with TYPO3 version
> 6.2. There is no upgrade possibility"
> und auf Nachfrage:
> "TYPO3 or any other open source are regularly upgrading theirs code time
> to time. Initial Some release supporting old extension which was built
> with older version but when they updating their own codding structure
> then there is no possibilities to have working old extension. All
> extension are upgrading theirs codding time to time based on latest
> release. Hence, we will also have to recode our extensions which was
> built under 4.4.+ as there are huge difference now."
> (mit recode meint er alle neu entwickeln)
solange die API nicht komplett über den Haufen geschmissen wird kann man
auch mit altem Code weiter arbeiten.
In TYPO3 hat sich die API in so weit geändert dass namespaces eingeführt
wurden und vielfach die funktionen in neue Klassen verschoben wurden.
Die parameter und Ergebnisse sind aber erhalten geblieben. Natürlich
gibt es immer mal deprecated funktionen und auch neue. da muss man
natürlich von Zeit zu zeit aufräumen um aktuell zu bleiben. Und
natürlich gibt es auch grundlegende Änderungen: aktuell wird für 7.x das
gesamte BE von extJS auf jQuery umgestellt. dazu kommt eine vollständige
umstrukturierung des BE-DOM. Extensions die sich dort eingeklinkt haben
werden natürlich komplett neu geschireben werden müssen.
>
> Sprich der Projektleiter möchte gern alles neu machen, der Programmierer
> denkt er kann ein Upgrade Stück für Stück durchführen.
> Bei folgendem Dienstleister, wird eine ähnliche Meinung vertreten, aber
> die wollen ja auch Geld verdienen:
> " TYPO3-Services
> Upgrade Services auf Version 6.x
> Vor knapp einem Jahr erschien TYPO3 CMS 6.0 und brachte einige seit
> langem erwartete Neuerungen.
> Der Sprung von 4.7 auf 6.0 bringt einige gravierende Veränderungen und
> das hängt mit den TYPO3 NEOS zusammen.
> TYPO3 CMS 6.0 bringt mit diesen Neuerungen auch einige beachtenswerte
> Voraussetzungen/Konsequenzen mit.
> Audf die wichtigsten davon und auf was man bei einem Umstieg oder Update
> beachten sollte, gehen wir hier kurz ein
> Da "Pi-based" Entwicklungen nicht dauerhaft wirtschaftlich sinnvoll
> unter 6.x betrieben werden können, bedeutet das für die Kunden einen
> Umstieg auf Extbased Entwicklung.
> Bestehende „Pi-based Extensions" können nicht ohne
> Funktionalitätseinschränkungen unter TYPO3 6.x weiter verwendet werden
> bzw. intelligent weiter entwickelt werden.
> Funktions- und Leistungseinschränkungen alter Pi-based Extensions
> sind bereits heute unter 6.x zu beobachten und eine Weiterentwicklung
> ist für die Zukunft entwicklerseitig nicht mehr gewollt.
> Der Support für alte 4.x basierte Versionen wird aktuell
> eingestellt/ endet im Oktober 2013.
> Mehr als 15 Jahre TYPO3 Erfahrung aus Entwicklung und Betrieb im
> Entwicklungsteam,..."
>
>
>
> 5) Wenn ich Dich richtig verstehe, wird die PI Entwicklung mit kleineren
> Anpassungen grundsätzlich auch unter Typo3 6.2 laufen. Die Umstellung
> auf extbase wäre aufwendig, aber grundsätzlich möglich, richtig?
pi-based bezeichnet erstmal eine basis-Klasse für extensions mit einem
ganzen Haufen an Funktionenen, die nach und nach hinzugekommen sind.
diese Klasse wird erstmal als Prototyp-Bezeichnung für alle Extensiosn
genommen, die nicht auf der extbase-Klasse aufbauen. Ob diese Extension
tatsächlich dies ealte Klasse benutz(t)en oder ob sie nur einfach alles
selber mach(t)en ist egal. mit der extension Kickstarter gab es einen
Wizard, mit der man sich schnell ein Extension-Grundgerüst zusamman
klicken konnte. hier wurde konkreet die Klasse pi-based genutzt.
Inzwischen ist in den ganzen TYPO3-Kalssen aufgeräumt worden und
funktionen iegen jetzt in ganz anderen Klassen, dazu wird seit 6.0
optimalerweise über namespaces zugegriffen. so sieht der PHP-Code zwar
anders aus, kann aber 1:1 aus altem Code erzeugt werden.
während man mit pi-based Code seine Datenbankabfragen selber baut nutzt
man mit extbase die 'Magic' eines Repositories, die aber auch einen
Overhead mitbringt und bei großen Datenmengen deutliche Nachteile hat.
Typischerweise ist mit der basisklasse auch eine andere Art des
Templatings verbunden: pi-base = Marker-templates, extbase =
fluid-Templates. Das liegt natürlich In der Verantwortung des
Programmierers (und wieviel Aufwand er betreibt um evtl. die ander Art
des Templatings zu realisieren)
grundsätzlich kann man aber auch ohne extbase gemäß MVC programmieren.
Man hat halt nur nicht die ganzen Wizards, bzw. man ersetzt in extbase
die gnazen Wizards durch eignene Routinen.
> 6) Wenn sauber programmiert ist, sollten beide Wege kein Problem
> darstellen, richtig?
es gibt einige Entwickler, die für bestimmte Projekte bewußt kein
extbase machen, weil die Performance zu schlecht wäre. Trotzdem wird
dort sauberer Code erstellt, der auch zukünftig gut wartbar sein muss.
> 7) Ist es möglich PI based Entwicklungen um eine extbase Entwicklung zu
> ergänzen und das beide auf einem Typo3 6.2 laufen?
Extensions können unterschiedliche Vorgehensweisen implementieren und
dennoch auf die gleichen Daten nutzen. und natürlich kann eine Extbase
extension sauf eine pi-bsed aufgesetzt sehr kompliziert werden. Das ist
immer nur im Einzelfall zu beurteilen.
bei all den Änderungen sollte man jemanden konsultieren, der die gesamte
Entwicklung von TYPO3 mitgemacht hat, bzw. gut darüber informiert ist.
Meinungen, die nur auf ein paar Präsentationen und den release-Notes der
aktuellen TYPO3-Versionen basieren erscheinen mir da wie Versuche im
Nebel zu stochern und etwas zu erwischen: vielleicht hat man ja Glück
und macht eine richtige Aussage.
bernd
--
http://www.pi-phi.de/cheatsheet.html
More information about the TYPO3-german
mailing list