Null Object Pattern
2022-03-12
0. What is Null Object Pattern?
Used to solve Null Check problem and make our code cleaner.
1. Implementation of Null Object Pattern
Approach 1: Implement a NullPerson class inherited from Person
Approach 2: Add an interface and NullPerson will implement this interface
if (learner == null) return new NullLearner();
public interface ILearner
{
int Id { get; }
string UserName { get; }
int CoursesCompleted { get; }
}
public class NullLearner : ILearner
{
public int Id => -1;
public string UserName => "Just browsing";
public int CoursesCompleted => 0;
}
Summary
We can also give object properties a default value to avoid null checks.