Please could I have some views on the following.
Is it efficient to create a normalized database. Then create Views for the interaction with the business library. This way I am creating an efficient normalized database, whilst persisting a behavioural object orientated design by the use of views for the creation of the objects, and other stored procedures for the INSERT, UPDATE, and relational cascade rules for the DELETE.
OR, should I scrap the normalized database design, and go for an object orientated design where each table models the object and foreign keys are used where collaboration exists, and ultimately causing duplicate data.
Thanks for your time,
In the book Expert C# 2005 Business Objects Second Edition, Page 50, Paragraph 3 & 4
It says that we may have two objects, Customer and Invoice where both deal with Customer Data. It says that it is a naive approach for the Invoice to make use of the Customer object, as it should only be used:
"in the case where the application is adding or editing customer data"
I agree, BUT what it does not discuss is the possibility that the Invoice object could make use of the CustomerInfo object which is read only, and thus resuing code. Is this going against Encapsulation and if so, should I redfine the fields and properties in the Invoice class itself or create another class called maybe InvoiceCustomerData.
Thanks very much! Appreciate the help.
Copyright (c) Marimer LLC