The Template Method Design Pattern holds the general algorithm in a base class and allows the subclasses to implement some certain steps of that algorithm. This pattern can be used anytime you have a few similar algorithms that differ by some steps.
This article is just quick recap of majority of cases in which boxing occurs in C# 6.0 or higher. Boxing occurs everywhere when we need a reference type to a value type. Here is the most popular example:
int number = 123;
object boxed = number;
But what about another cases that are not so obvious? Let’s consider them.