Browse DevX
Sign up for e-mail newsletters from DevX


A Pure Object-oriented Domain Model by a DB Guy, Part 2

This is the second in a new series of articles by Jimmy Nilsson on a new architecture for enterprise applications in .NET. The new architecture is purely object- oriented, while still focusing on roundtrips and the data access code to get good performance. This articles delves into the most important base class for the new architecture.




Building the Right Environment to Support AI, Machine Learning and Deep Learning

n the previous article (Part 1, see left column) I showed the diagram illustrated in Figure 1. However, I didn’t say very much about it, so now is a good time to do so.

Figure 1 A static view of the domain model, old version

As you can see in Figure 1, I had defined two abstract (MustInherit) base classes in the Jnsk.Domain assembly. The base classes were called EntityCollectionBase and EntityBase. The idea behind them was that all my domain classes would inherit from one or the other. Classes that describe a single entity, such as a single customer, would inherit from EntityBase. Classes that describe a collection of rows would inherit from EntityCollectionBase. This way the domain classes gathered under a common feature set, so a lot of functionality is reused and policies are forced. The base classes were implementations of the Layer Supertype[2] pattern.

Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date