Real Subject (RealImage):?
Short answer: The RealImage class implements the IImage interface and represents the actual object that we want to control access to.
Explain a bit more
It contains the logic to load and display the image. public class RealImage : IImage public void Display() => Console.WriteLine($"Displaying {_filename}"); } Behavior: The RealImage object is only loaded once the Display() method is called. This behavior can be resource-intensive, especially if the image is large.
Example code
{
private readonly string _filename;
public RealImage(string filename) => _filename = filename;
Real-world example (ShopNest)
Use a GoF pattern in ShopNest only when it removes duplication or makes a change safer—explain the problem it solves in the interview.
Say this in the interview
- Define — one clear sentence (the short answer above).
- Example — relate it to a project like ShopNest or your real work.
- Trade-off — when you would not use it.
Share this Q&A
Share preview image: https://www.toolliyo.com/images/toolliyo-logo.png