Implementing Inversion of Control
You might be asking yourself at this point in time, how do I switch out different classes such as the ISettings
example? Inversion of Control (IoC) is a design pattern meant to complement dependency injection and solve this problem. The basic principle is that many of the objects created throughout your application are managed and created by a single class. Instead of using the standard C# constructors for your ViewModel
or Model
classes, a service locator or factory class will manage them throughout the application.
There are many different implementations and styles of IoC, so let's implement a simple service locator class to use through the remainder of this module as follows:
public static class ServiceContainer ...
Get Xamarin: Cross-Platform Mobile Application Development now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.