Hello,
on 05/01/2005 01:45 PM Danny Brow said the following:
I'm about to start writing a big web app (mostly in PHP). But I'm not sure if I should layout the DB first then write the app, or should I just start writing the app and add stuff to the DB as I need it. How do you guys go about it?
If you want to implement a big project you should first make some analysis and plan it before going ahead to the implementation. For big projects, use case partioning is trongly encouraged. If you do not know what that is, I strongly encourage reading this book. It succing and straight to the point to get you started quickly.
http://www.phpclasses.org/reviews/id/0201309815.html
When you finnaly come to the point of an implementation, I suggest a model driven object oriented approch. This means that instead of hand coding all the tables and SQL by hand, you should design a model of the entities of information of your project and use an object-relational mapping tool so in your application you treat every entity as objects: clients, products, transactions, etc..
Everything is an object, as opposed to sparse data in database. Then let the object relational tool do the tedious job storing and retrieving data from a relational database with SQL.
For this purpose, I suggest you use a tool like Metastorage, especially because your project is big. It will let you model your business objects and generates all access code and database schema in seconds. This will be very good for you because it will let you try different models that can be changed and regerated quickly until you figure the right model for your needs and keep changing it later if necessary.
http://www.meta-language.net/metastorage.html
--
Regards, Manuel Lemos
PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/
PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/
Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php