Angus Mann wrote:
Hi all.
I'm working on a PHP project for my own personal business use. It will
handle billing and invoices as well as payments and time management,
bookings, appointments and a few more. I may add things like personal
messaging between the various users and a customer login to check on the
progress of their accounts.
It is a big project and will probably take a year or so to complete in
my spare time.
I have made a couple of starts but I have no experience in creating such
large applications and I find I often end up with spaghetti code. I've
tried using session variables to keep track of where and what the
program is doing but there are so many permuations and combinations I
found myself writing endless streams of if's, and's and or's just to
figure out what page to display.
The code is not the probblem for me...it's the flow and organization of
the code.
Can anybody point me to a good book or tutorial that lays down the
principles and gives some suggestions for integrating the many
subroutines of a large application? I want to make the code readable and
logical in its flow, and avoid repetition of code segments.
Much appreciated.
Angus
I wrote one from Scratch over many years and I don't know how I would
operate my business without it at this point. Some little things I would
suggest... if you have multiple relationships over several .dbs..
customers db relating to a invoices db, proposals db, quotes db etc..
make sure to use a global unique ID across all databases.. meaning,
every time a new record is created in any of these databases, I
grab an I.D. from a function that exists only to create a unique ID.
This way you don't run the risk of creating false relationships.
Some ideas?.. I probably went over board, but all my invoices, quotes
etc. also have a corresponding hard copy (file that is written), other
than the database record, which acts as redundancy.
The problem with any framework such as Drupal is, though you can avoid
reinventing the wheel in some cases, you also build stuff that looks
like existing stuff and you have the same known security management as
existing stuff, and you are sometimes limited on function... So, I just
wanted to add this alternate perspective that it is perfectly doable
starting from the ground up.
Donovan
--
=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o
D. BROOKE EUCA Design Center
WebDNA Software Corp.
WEB:> http://www.euca.us | http://www.webdna.us
=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o=o
WebDNA: [** Square Bracket Utopia **]
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php