Skip to Content
Software Architect's Handbook
book

Software Architect's Handbook

by Joseph Ingeno
August 2018
Beginner
594 pages
22h 33m
English
Packt Publishing
Content preview from Software Architect's Handbook

Using dependency injection (DI)

One approach to handling cross-cutting concerns is to use the DI pattern, which we covered in Chapter 6, Software Development Principles and Practices. This pattern can be used to inject cross-cutting dependencies into classes that need them. This allows us to write loosely coupled code and avoid scattering. The logic for the cross-cutting concern will not be duplicated in multiple places.

For example, if we had an Order class that had logging and caching cross-cutting concerns, we could inject them like this:

public class Order{    private readonly ILogger _logger;    private readonly ICache _cache;    public Order(ILogger logger, ICache cache)    {        if (logger == null) throw new ArgumentNullException(nameof(logger)); ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Solutions Architect's Handbook

Solutions Architect's Handbook

Saurabh Shrivastava, Neelanjali Srivastav
Solutions Architect's Handbook - Second Edition

Solutions Architect's Handbook - Second Edition

Saurabh Shrivastava, Neelanjali Srivastav
Software Architecture in Practice, 4th Edition

Software Architecture in Practice, 4th Edition

Len Bass, Paul Clements, Rick Kazman
Solutions Architect's Handbook - Third Edition

Solutions Architect's Handbook - Third Edition

Saurabh Shrivastava, Neelanjali Srivastav

Publisher Resources

ISBN: 9781788624060Other