The Singleton Design Pattern is one of the most commonly used Design Patterns in software engineering. It is a core pillar of many applications, and understanding it is a requirement for any developer because it ensures that a class has only one instance and provides a global point of access to that instance. This is particularly useful for managing resources efficiently, maintaining consistency across the application, and synchronizing access in multithreaded environments. In this course, Amichai Mantinband will teach you everything you need to know to understand why we need the singleton pattern and how to use it effectively in our applications.
Course overview (0:44)
What is the Singleton Design Pattern (4:16)
Characteristics & Implementation Aspects (2:16)
Naive singleton implementation (3:11)
Naive singleton implementation with Lazy Loading (3:11)
Naive singleton implementation with Thread Safety (5:59)
Proper Lazy Instantiation & Thread Safety (2:58)
Singleton Design Pattern Cool Implementation (6:51)
Singleton Pattern vs Singleton Behavior (5:16)
Section Recap (2:38)
Benefits (2:03)
Drawbacks (and How To Get Around Them) (6:00)
Conclusion (1:45)
Course Info
Amichai Mantinband is a Software Engineer at Microsoft and a .NET content creator.
He works on large-scale, distributed systems within Microsoft Office, serving over 100 million daily users. He is a speaker at official .NET conferences, and within Microsoft, he authors and teaches software architecture courses.
Amichai is the author of NuGet packages ErrorOr & Throw and has a .NET programming YouTube channel covering advanced topics such as design patterns, architecture, and best practices.
© 2023 Dometrain. All rights reserved.