{"product_id":"dependency-injection-principles-practices-and-patterns-9781617294730","title":"Dependency Injection Principles, Practices, and Patterns","description":"\u003cb\u003eSummary\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003ci\u003eDependency Injection Principles, Practices, and Patterns\u003c\/i\u003e teaches you to use DI to reduce hard-coded dependencies between application components. You'll start by learning what DI is and what types of applications will benefit from it. Then, you'll work through concrete scenarios using C# and the .NET framework to implement DI in your own projects. As you dive into the thoroughly-explained examples, you'll develop a foundation you can apply to any of the many DI libraries for .NET and .NET Core. \u003cp\u003e\u003c\/p\u003ePurchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAbout the Technology\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003eDependency Injection (DI) is a great way to reduce tight coupling between software components. Instead of hard-coding dependencies, such as specifying a database driver, you make those connections through a third party. Central to application frameworks like ASP.NET Core, DI enables you to better manage changes and other complexity in your software. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAbout the Book\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003ci\u003eDependency Injection Principles, Practices, and Patterns\u003c\/i\u003e is a revised and expanded edition of the bestselling classic \u003ci\u003eDependency Injection in .NET\u003c\/i\u003e. It teaches you DI from the ground up, featuring relevant examples, patterns, and anti-patterns for creating loosely coupled, well-structured applications. The well-annotated code and diagrams use C# examples to illustrate principles that work flawlessly with modern object-oriented languages and DI libraries. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eWhat's Inside\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003eRefactoring existing code into loosely coupled code\u003c\/li\u003e\n\u003cli\u003eDI techniques that work with statically typed OO languages\u003c\/li\u003e\n\u003cli\u003eIntegration with common .NET frameworks\u003c\/li\u003e\n\u003cli\u003eUpdated examples illustrating DI in .NET Core\u003c\/li\u003e\n\u003c\/ul\u003e\u003cbr\u003e\u003cb\u003eAbout the Reader\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003eFor intermediate OO developers. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eAbout the Authors\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003cb\u003eMark Seemann\u003c\/b\u003e is a programmer, software architect, and speaker who has been working with software since 1995, including six years with Microsoft. \u003cb\u003eSteven van Deursen\u003c\/b\u003e is a seasoned .NET developer and architect, and the author and maintainer of the Simple Injector DI library. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e \u003cp\u003e\u003c\/p\u003e\u003col\u003ePART 1 Putting Dependency Injection on the map\u003cli\u003eThe basics of Dependency Injection: What, why, and how\u003c\/li\u003e\n\u003cli\u003eWriting tightly coupled code \u003c\/li\u003e\n\u003cli\u003eWriting loosely coupled code\u003c\/li\u003ePART 2 Catalog\u003cli\u003eDI patterns\u003c\/li\u003e\n\u003cli\u003eDI anti-patterns\u003c\/li\u003e\n\u003cli\u003eCode smells\u003c\/li\u003ePART 3 Pure DI\u003cli\u003eApplication composition\u003c\/li\u003e\n\u003cli\u003eObject lifetime\u003c\/li\u003e\n\u003cli\u003eInterception\u003c\/li\u003e\n\u003cli\u003eAspect-Oriented Programming by design\u003c\/li\u003e\n\u003cli\u003eTool-based Aspect-Oriented Programming\u003c\/li\u003ePART 4 DI Containers\u003cli\u003eDI Container introduction\u003c\/li\u003e\n\u003cli\u003eThe Autofac DI Container\u003c\/li\u003e\n\u003cli\u003eThe Simple Injector DI Container\u003c\/li\u003e\n\u003cli\u003eThe Microsoft.Extensions.DependencyInjection DI Container\u003c\/li\u003e\n\u003c\/ol\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eAbout the Author\u003c\/b\u003e\u003cbr\u003e\u003cb\u003eMark Seemann\u003c\/b\u003e is a software architect living in Copenhagen. Previously a developer and architect at Microsoft, Mark is now an independent consultant. \u003cp\u003e\u003c\/p\u003e\u003cb\u003eSteven van Deursen\u003c\/b\u003e is a seasoned .NET developer and architect, and the author and maintainer of the Simple Injector DI library.\u003cbr\u003e","brand":"Manning Publications","offers":[{"title":"Default Title","offer_id":50421776285970,"sku":"9781617294730","price":55.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0831\/4771\/8930\/files\/img_6263db29-f7ae-48ea-bffa-120def9de29a.jpg?v=1729513277","url":"https:\/\/surprise-castle.myshopify.com\/products\/dependency-injection-principles-practices-and-patterns-9781617294730","provider":"Surprise Castle","version":"1.0","type":"link"}