Re: [pear-webmaster] Object oriented design for the backend
| From: | Tobias Schlitt | Date: | Fri, 18 Jun 2004 01:54:27 +0000 |
| Subject: | Re: [pear-webmaster] Object oriented design for the backend | ||
| References: | 1 | Groups: | php.pear.webmaster |
| Request: | Send a blank email to pear-webmaster+get-2584@lists.php.net to get a copy of this message | ||
Hi Martin Jansen!
On 06/17/04 13:18 you wrote:
Hey, in order to make the backend of the website (aka pear-database.php) more maintainable, I've been thinking a bit about a fresh, object oriented design lately. Today I started outlining my ideas in UML; a first result can be found athttp://divbyzero.net/junk/pearweb-uml.gif(I didn't ues any of the "hardcore" UML stylistic devices, so even people without profound knowledge of UML should be able to at least figure out the basics.) Basically the diagram presents the current status-quo from pear-database.php, but I believe it's a bit more organized and it adds a bit more structure especially concerning the user model. I'd like to use this draft as the basis for our further analysis and design process; feedback is appreciated.
Because it is unlikely that we will be able to implement the new backend in the next weeks/months, it also seems to make sense to use PHP 5 (and probably MySQL 4.1) for the concrete realization. I'm also wondering if we should use DB_DataObjects for talking to the database.I'd pretty much like the DataObject approach. Should save us a lot of coding. In respect to MySQL 4.1: Are you sure you wanna do that? AFAIR MySQL is not very pedantic on delivery dates and the first versions maybe very unstable, after release. OK, having it in the back-brain is a good idea, but using it? PHP5: Full ack. In this process we should also split the installer backend from the website, if possible in a way. That seems to be the hardest bit for me, since PEARWeb makes haevy use of all the PEAR internal classes. Maybe it's a good idea to have all common classes in a basic version inside the installer and a derived version for the web stuff, so that we can saftly modify things, without damaging the installer? In general, I think, when we start reworking the backend, we can more or less do a complete refactoring, introducing templates and stuff. Regards, Toby -- Tobias Schlitt GPG Key: 0xA6529579 a passion for php http://www.schlitt.info