Partitioning and Layering a Software Application
How do you design your software to be more adaptable to changing technologies, fixing bugs and new requirements? Everyone answers: use layering. But exactly how do you develop software layers, or create application interfaces that allow you to make these changes? This course will focus on techniques such as interface-based design, proper use of inheritance, inversion of control, factories, facades, and other patterns and techniques. It will demonstrate these principles by walking through the process of transforming a tightly coupled application into a properly layered one. The examples are in C#, but the principles apply to any programming language.
Published on: 7/19/2010
Partitioning and Layer Fundamentals
Extending Interface Based Design
Domain and Persistence Patterns
Inversion of Control and MVC
Transforming the Application
Have questions or feedback? Send us e-mail.