Click here to Skip to main content
15,902,786 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
Questionneed help in architecting a design for a webapplication Pin
shankbond10-Jul-09 3:27
shankbond10-Jul-09 3:27 
AnswerRe: need help in architecting a design for a webapplication Pin
Mycroft Holmes11-Jul-09 15:06
professionalMycroft Holmes11-Jul-09 15:06 
GeneralRe: need help in architecting a design for a webapplication Pin
shankbond12-Jul-09 22:17
shankbond12-Jul-09 22:17 
GeneralRe: need help in architecting a design for a webapplication Pin
Pete O'Hanlon12-Jul-09 22:55
mvePete O'Hanlon12-Jul-09 22:55 
GeneralRe: need help in architecting a design for a webapplication Pin
shankbond13-Jul-09 0:52
shankbond13-Jul-09 0:52 
AnswerRe: need help in architecting a design for a webapplication Pin
CodingYoshi15-Jul-09 17:15
CodingYoshi15-Jul-09 17:15 
GeneralRe: need help in architecting a design for a webapplication Pin
shankbond15-Jul-09 21:24
shankbond15-Jul-09 21:24 
GeneralRe: need help in architecting a design for a webapplication Pin
CodingYoshi16-Jul-09 3:45
CodingYoshi16-Jul-09 3:45 
I have seen people create classes based on database tables but it is not a good practice. For example lets say I have the table s below:

Customers

Orders

Since this is a many to many relationship, to normalize we will create another table called:

CustomersOrders

This is basically the bridging or link table. Now design classes based on these tables and your design is as below:

Customer Class
Orders Class
CutomerOrders Class

You see what I mean. Instead you should have the following classes:

Person
Customer : Person // If later you need employee you can Employee : Person
                           // Customer should also have an OrderCollection. Remember Aggregation
Address // Both the Customer's shipping and billing address can use this
CustomerCollection
Order
OrderCollection

You will have classes which have methods for performing CRUD operations on these objects and those classes might call other classes for help. You might have many other properties and methods in your Customer class, in addition to the fields in the database, for example, FullName (First Name + ", " + Last Name), GetPendingInvoices() etc.

Do you see now what I mean?
OrdersCollection

CodingYoshi

Artificial Intelligence is no match for Human Stupidity.

GeneralRe: need help in architecting a design for a webapplication Pin
shankbond17-Jul-09 22:21
shankbond17-Jul-09 22:21 
QuestionUML C# tools Pin
Karo99-Jul-09 1:23
Karo99-Jul-09 1:23 
AnswerRe: UML C# tools Pin
Pete O'Hanlon9-Jul-09 1:31
mvePete O'Hanlon9-Jul-09 1:31 
GeneralRe: UML C# tools Pin
Karo915-Jul-09 0:36
Karo915-Jul-09 0:36 
GeneralRe: UML C# tools Pin
Paul Conrad25-Jul-09 19:28
professionalPaul Conrad25-Jul-09 19:28 
Questioncreating a polling system Pin
uglyeyes8-Jul-09 3:21
uglyeyes8-Jul-09 3:21 
AnswerRe: creating a polling system Pin
uglyeyes8-Jul-09 16:48
uglyeyes8-Jul-09 16:48 
GeneralRe: creating a polling system Pin
Pradeep Shukla9-Jul-09 16:15
professionalPradeep Shukla9-Jul-09 16:15 
QuestionSeating Selection System Database Design Pin
hmrizin7-Jul-09 9:13
hmrizin7-Jul-09 9:13 
AnswerRe: Seating Selection System Database Design Pin
Eddy Vluggen7-Jul-09 9:22
professionalEddy Vluggen7-Jul-09 9:22 
GeneralRe: Seating Selection System Database Design Pin
hmrizin8-Jul-09 7:14
hmrizin8-Jul-09 7:14 
GeneralRe: Seating Selection System Database Design Pin
Eddy Vluggen8-Jul-09 10:56
professionalEddy Vluggen8-Jul-09 10:56 
GeneralRe: Seating Selection System Database Design Pin
hmrizin9-Jul-09 6:29
hmrizin9-Jul-09 6:29 
GeneralRe: Seating Selection System Database Design Pin
Eddy Vluggen9-Jul-09 6:40
professionalEddy Vluggen9-Jul-09 6:40 
GeneralRe: Seating Selection System Database Design Pin
hmrizin15-Jul-09 8:35
hmrizin15-Jul-09 8:35 
GeneralRe: Seating Selection System Database Design Pin
Eddy Vluggen15-Jul-09 11:04
professionalEddy Vluggen15-Jul-09 11:04 
QuestionStored Procedures Pin
CodingYoshi7-Jul-09 6:18
CodingYoshi7-Jul-09 6:18 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.