[Typo3-dev] DBAL - how to do it?
Michael Zedeler
michael at zedeler.dk
Sun Feb 15 06:17:00 CET 2004
Hello everybody.
Just a sidenote regarding "The future of typo3". I have applied for a
permission to let everybody on the list into the production system that
I have developed which has a lot of frontend editing stuff. I received
no reply yet. The customer is McDonalds Denmark.
I have been following the discussions on typo3.dev and the user lists
and many postings are about subjects that have one or the other thing to
do with some kind of database abstraction layer.
Typo3 has some nasty deficiencies that I think can be solved by
introducing a database abstraction layer with a permissions layou right
on top of it.
Problems as of today:
1. The kind of OO that makes it possible to scale and reuse components
better requires an object persistence layer.
2. A basic permission layer checking as close to data storage as
possible will cut down development time and help developers make their
code less vulnerable.
3. It is impossible to use other databases since SQL is not de facto
standardized.
Regarding 1: This point can radically change the quality of the
extensions developed. Today we treat whole plugins as classes. Having
objects only at this level leaves too many typo3 developers with
ordinary structural programming underneath this level.
If we introduce a row-object instance correspondence that actually
performs well (eg. PEAR), developers will be able to build what could be
dubbed "business objects" that can be reused across plugins and extensions.
Regarding 2: Asking developers to insert "funny" conditions into their
SQL statements shouldn't be nessecary. If a basic permission checking
system is in place right on top (possibly as an integrated part) of the
storage layer, the developers can focus on the essential things -
business logic and interfaces.
Regarding 3: The situation right now is really aggrevating. As time
passes by, more and more MySQL-dialect SQL is being hardcoded into the
core and into modules developed by others. This means that introducing
the DBAL only gets harder as time goes by.
Second, since databases do have different SQL dialects, hardcoding SQL
in the code really isn't an option at all.
I would like to suggest giving the DBAL project top priority for the
next major release.
--
Velkommen til det muntre køkken!
Dagens ret: pasta med silde-banansovs.
Æblegrød med leverhejs til dessert.
More information about the TYPO3-dev
mailing list