Practical scenarios – handling nulls effectively
As you must have already seen, dealing with nulls isn’t just a theoretical concern; it’s a daily challenge. By examining real-world scenarios, we can better appreciate the need for clear strategies in managing nulls and ensuring robust, reliable applications.
Case study – managing YouTube videos
Scenario: A system retrieves video details from a database. Not every video ID queried will have a corresponding video entry.
Traditional approach:
public Video GetVideoDetails(int videoId)
{
var video = database.FindVideoById(videoId);
if (video == null)
{
throw new VideoNotFoundException($"Video with ID {videoId} not found.");
}
return video;
} Option approach:
public Option<Video> GetVideoDetails(int videoId)
{
...