Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Client / Server Design Principles

Status
Not open for further replies.

danielkelly

IS-IT--Management
Aug 13, 2006
28
AU
I was hoping someone may be able to give me some feedback on my design principles. I have done alot of applications relating to databases etc in c# but this is my first try at a Client / Server application. I wannted to check some of the recommended ways of performing client / server actions.

The application is basically a front end for a database.

Basically my program will consist of a server application which will have a connection to a database. When a client wants to see records from the database they send a request to the server, which in turn connects to the database, retrives the records ands sends the record data back across the network stream and the client parses the records and displays them. Does this sound like a standard and solid principle?

Thanks in advance
 
client/server is a pretty solid architecture if a little broad a term.

make sure you look at the mvc/observer pattern in your client to keep the presentation/business/database logic separate.

use web services: it's just easier although it has scaling problems.

since the web call is the most expensive bit of the data transfer, it's probably better if you divorce the data passed between client and server from your actual schema objects. don't pass a record, pass the minimum data necessary to fulfil a use case. which may, in itself be a record but probably won't be. also, do the data processing in the database: make sure the user has to make a decision about data for each round trip and never pull records across to the client to update them without user input.

ottomh that's all for now.
hth,

mr s. <;)

 
use web services: it's just easier although it has scaling problems.


If you run into scaling issues (abnormally high volume) then consider remoting instead. It takes more work to create and maintain your connection but it tends to be more "performant" <-- p.s. this is not a word!

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top