[TYPO3-mvc] TYPO3-Core complete rebuild to realize modern development paradigms?
Gabriel Kaufmann | Typoworx
info at typoworx.de
Mon Aug 12 10:30:49 CEST 2013
We are developers also trying to provide patches and bugfixes for
TYPO3-Core and came to the idea, that some parts of TYPO3-Core are just
too much got stucked in it's current code-concept.
To name only some of the main problems (as our own personal opinion):
1. The "old" antiquated use of string-relations in TYPO3 (TCA-Type
"Group" / "DB") saving it's relation internally as String
("[TABLE]_[UID]").
There are better alternatives in times of modern programming and
ORM-Database tools like (to name only one), Doctrine.
More about doctrine:
http://en.wikipedia.org/wiki/Doctrine_(PHP)
<http://en.wikipedia.org/wiki/Doctrine_%28PHP%29>
http://www.doctrine-project.org/
2. Usage of the old-styled relations mentioned in 1. are more than bad
and dirty to handle in f.e. "foreign_table_where" (f.e. TCA Select)
clauses.
3. Rendering of FlexForms is a nice to have feature. Nevertheless
internally in t3lib processing it is real hard to realize a real
compatibility
between TCA and FlexForms (which should have nearly the same syntax
/ feature-richness) despite of that one is PHP-Array and the other
some extended XML-Format.
4. Extbase is a Core-Extension that still is "unstable" (even if marked
as stable by the developers) and still misses even banal
Database-Functions GROUP BY, FIND_IN_SET, CONCAT and "COUNT" is not
always working as expected (in some more complex queries). All in
all... Extbase is really hard to develop on some more complex
database-relations and queries.
We also tried to get in touch with the developers trying offer help
trying to integrate a some more established database core, like
Doctrine we already use for some other (non TYPO3) projects with
huge enhusiasm as there it really works as expected: out of the box
and like real "rapid development" - which we currently search
forgiven in Extbase.
As we are working in production with TYPO3 and also realizing customer
projects of course we sometimes come to points finding some (even really
simple looking) features that should have been working yet - but they
don't do as expected.
*We also noticed in the last weeks that some feature-requests and
bug-tracks on TYPO3-Forge/Issue-Tracker have been (in our opinion)
premature rejected or have just been ignored for some month - even if we
provided a patch that should have been provided a working solution for
some issues.*
For us those "tiny" issues cost us a lot of time in developing and also
headache while trying to iron out or work-around those issues. And we
also came to the conclusion that there might be the right time to start
something "new" upon TYPO3 to begin a new-age for TYPO3.
*As the TYPO3 6.x tree still supports and uses...*
* the dusty PiBase-Core (introduced with the first "old" versions of
TYPO3)
* Extbase becomes more and more part of Core and main-features (like
Workspaces)
despite of Extbase_still should be alpha-state_ (in our productive
experience)
* Still uses code-parts of the old-dusty "4.x" tree that should have
been cleaned-out & consequently could have been dropped
for a new beginning.
* A complete clean-up would have made sense, as TYPO3 6.x already
dropped support for some features and already has only an official
support for a bunch of Extensions yet.
... we are thinking it may be time for a parallel, complete new
version-tree of TYPO3 trying to introduce modern state of the art
paradigms like MVC (even in Core/TCA). Shurely Extbase introduced some
real nice features giving a introducion in the right direction (despire
of their own still buggy database-/ORM).
Of course a complete rebuild of a new TYPO3 "X" may lead into something
new that may drop support for a lot of existing Extensions - and may be
it will lead into it's own TER-Tree and something "new" not looking
backward for old extensions. But we are convinced that only a complete
code clean-up and rebuild can really solve the current dillemma between
old-code and new-code. Of couse we don't want to completly drop the
TypoScript support that we are still convinced as a very flexible
solution that makes TYPO3 mighty in rapid development (even for
"non-developers" for PHP).
*We want your opinion!
Do you also have interest and ideas about that idea?
What do you think of a parallel new tree that really introduces a break
to start something completly modernized in TYPO3?*
--
Best regards
Gabriel Kaufmann
More information about the TYPO3-project-typo3v4mvc
mailing list