Summary
In this chapter, we created a reusable DAL to target different relational database offerings available for persistence. The library leverages the Microsoft ADO.NET programming model to implement database-agnostic persistence. In the process, you learned about the abstract factory pattern, adapter pattern, and revisited factory method pattern. You also understood the difference between the factory method and the abstract factory pattern. In the next chapter, we will write a document object library which will help one save data contents to different formats like PDF, SVG, and HTML. In that process, you will learn about the composite design pattern and visitor pattern.