Simple play icon Course
Skills Expanded

Architecting Applications for the Real World in .NET

by Cory House

An architect's job is to manage complexity, not increase it. Yet the developer life is filled with jargon, acronyms, and seemingly infinite choices. So how do we know when complexity makes sense? Viewers will learn when abstractions are justified and walk away with an understanding of the merits of various approaches for structuring the business, service, presentation and data access layers with a pragmatic, real-world mind set.

What you'll learn

An architect's job is to manage complexity, not increase it. Yet the developer life is filled with jargon, acronyms, and seemingly infinite choices. So how do we know when complexity makes sense? This course discusses when abstractions are justified and outlines the merits of various approaches for structuring applications with a pragmatic, real-world mind set. The discussion begins by outlining philosophies for thinking about architecture and considering the benefits of doing the simplest thing that could possibly work. Then we dive into various design patterns and technologies to consider within the business, service, presentation and data access layers. And in the final capstone module we'll consider two specific architectures and discuss the contexts where each makes sense. You'll learn when table module, active record, DDD, and ORMs are useful and walk away with the tools to better evaluate and justify complexity as an agile software craftsman. Like any responsible architect, we'l focus on the value of keeping things simple whenever we can.

About the author

Cory is the principal consultant at reactjsconsulting.com, where he has helped dozens of companies transition to React. Cory has trained over 10,000 software developers at events and businesses worldwide. He is a seven time Microsoft MVP, and speaks regularly at conferences around the world. Cory lives in Kansas City and is active on Twitter as @housecor.

Ready to upskill? Get started