View Full Version : client-side, server-side, database. but which first?

08-31-2007, 03:24 PM
which one would you do first and in which order?

1. client-side - gui
2. server-side - main programs
3. database - xml, mysql access, flat-files. any data repository.

in what order would you build these?

08-31-2007, 03:44 PM
I would definitely do GUI last, don't know about the other two though.

08-31-2007, 05:02 PM
3, 2 and then 1

You can't build the server program until it has some place to pull and send data. And then you can't really build the client program until you have at least a semi working server app. Then you'll have to probably debug them together.

ralph l mayo
09-02-2007, 01:20 AM
I always do the client side first. Decide the simplest and most intuitive way to do things, mock it up, refine it to eliminate redunancy, bury obscure options and highlight the most common paths, and then, only when you've got something that looks like you'd actually want to use it, make it work by filling in the middle- and back-end. Doing the backend stuff first is easier for the developer but tends not to benefit the user. Your representation of the data is likely to reflect aspects of your database design instead of the most efficient way to visualize and utilize the data-- which you may not even know until you try it out, ie, by creating the client-side interface.

Do the database normalization second, and then the server-side scripting in the middle. The whole purpose of the script is to make connections between the client and the database. If you do it before the things it connects you're likely to end up solving a lot of the wrong problems.

09-02-2007, 03:10 PM
Have to side with ralph here - in my experience, applications "feel" better if they are designed by first sorting out the user interface (client side front end), then the database (server side back end). And when both those are in place, you do the transport layer, which consists of server programs (server side front end) and the [forms|link uris|AJAX]+ (client side back end) and the debugging of the transport layer on both sides in unison.

09-03-2007, 12:41 AM
I was referring to the actual implementation part of the development cycle. Like once all the specifications and the design has been finalized.

Otherwise yes, as my peers have pointed out, you'll end up with some hacking on your backend design if you design and implement it before you have a final client side design.

09-03-2007, 02:29 AM
Well, with my limited knowledge, I would suggest a different proposal.

1. Plan your whole project so that you know how you would like it to be presented. With that done follow this strategy: -

a. build your db.
b. build the scripts to gather data from the db and present it in the web page.
c. style the presentation using CSS