Skip to content

Instantly share code, notes, and snippets.

@rofr
Created November 13, 2012 08:39
Show Gist options
  • Save rofr/4064691 to your computer and use it in GitHub Desktop.
Save rofr/4064691 to your computer and use it in GitHub Desktop.
Dependency injection
public class Worker
{
ILogger _logger;
public Worker()
{
//dependency inversion take #1
var logFactory = new LogFactory();
_logger = logFactory.CreateLog();
}
}
public class Worker
{
ILogger _logger;
public Worker(ILogger logger)
{
//dependency inversion by using DI take #2
_logger = _logger;
}
}
public class Worker
{
ILogger _logger;
public Worker()
{
_logger = new ConsoleLogger();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment