In this chapter, we've examined some of the key design goals for the business framework ”
”that we'll build in Chapters 4 and 5. These include the following:
n-Level undo capability
Tracking broken business rules to tell if our object is valid
Tracking whether our object's data has changed (whether or not it's "dirty")
Support for strongly typed collections of child objects
Providing a simple and abstract model for the UI developer
Full support for data binding in both Windows and Web Forms
Saving our objects to a database and getting them back again
Other miscellaneous features
Interchangeability with the one from
Expert One-on-One Visual Basic .NET Business Objects
We've also walked through the design of the framework itself, providing a high- level
into the purpose and rationale behind each of the classes that will make it up. With each class, we discussed how it
back to our key goals to provide the features and capabilities we're looking for in the framework.
Finally, we wrapped up the chapter by organizing our classes into namespaces so that they're easily
and used, and we determined how to
or assemblies to avoid circular dependencies and to enable the physical deployment scenarios we're after.
In Chapter 4, we'll implement much of the framework, and then in Chapter 5, we'll implement the rest. From there, we'll walk through the implementation of a sample application using the framework, during which process we'll explore more fully how the framework functions and meets the goals we set forth in this chapter. Before then, in Chapter 3, we'll take a quick tour of some of the .NET technologies with which you may not be entirely familiar.
In Chapters 1 and 2, we've discussed some concepts of distributed, object-oriented architecture, and the specific architecture that we'll be implementing in this book. In Chapter 2, we also designed a framework to support our n-
The framework that we designed in Chapter 2 relies on some key technologies in the .NET Framework. These technologies are the building blocks that are necessary to implement web and client-server applications, interact with databases, pass objects around the network, and more. In particular, we'll be tapping into some of the deeper capabilities of .NET, including the following:
As we've been working through our
so far, we've assumed that you've known at least a little about these technologiesor at least that you could pick enough up from the context. As we move forward to implementation, however, it becomes more important that you're comfortable with using them, and that's the aim of this chapter. If you've not had much experience with any or all of the technologies in this list, you'll find what you need here.
Of course, most of the technologies have entire books devoted to them, and it would be
for us to cover them in great detail here. Instead, we'll focus on each technology as it pertains to the creation of our distributed, object-oriented framework. Feel free to pick and choose the sections you read, and to come back here if you need a quick reminder.
Later in the book, we'll be using interface-oriented .NET technologies as well, including Windows Forms, Web Forms, and web services. These technologies don't apply to our framework, but they
used to create applications based on the business objects that we'll create using our framework. We'll
entire chapters to demonstrating how to create interfaces using each of these three technologies.
Authors: Lhotka R.
Published year: 2006