Question
Which of the following design patterns violates the
Open/Closed Principle of SOLID principles in object-oriented design?ÂSolution
The Singleton pattern violates the Open/Closed Principle of SOLID, which states that software entities (classes, modules, functions) should be open for extension but closed for modification. The Singleton pattern is designed to restrict the instantiation of a class to a single object. To achieve this, the class is tightly coupled to its own instance management logic, which means modifying or extending this behavior requires changes to the original class. As a result, Singleton classes are not easily extensible without modification, making them contrary to the Open/Closed Principle. Why Other Options are Incorrect: A) Strategy Pattern: The Strategy Pattern adheres to the Open/Closed Principle by allowing algorithms to be selected and applied at runtime without modifying existing code. C) Factory Method Pattern: This pattern promotes extensibility by allowing subclasses to alter the type of objects that will be created, without modifying the client code. D) Decorator Pattern: The Decorator Pattern is designed to extend functionality dynamically by wrapping objects, adhering to the Open/Closed Principle. E) Adapter Pattern: The Adapter Pattern allows for existing classes to be used without modification by adapting their interfaces to a new target interface, following the Open/Closed Principle.
In a 5-stage pipeline (Fetch, Decode, Execute, Memory, Write-back), how many instructions can be in various stages of processing at the same time?
A transformer has a primary coil with 300 turns and a secondary coil with 150 turns. If the primary voltage is 240V, calculate the secondary voltage.
Which of the following is a common problem that synchronization mechanisms address in multi-threaded or multi-process environments?
What happens when a program accesses data that is not currently in physical memory (RAM) due to virtual memory management?
Which of the following is not a valid keyword in C++ language?
XML is designed to ____ and ____ data)
What is the main purpose of a digital signature in public key cryptography?
The best case time complexity of selection sort?
What is the space complexity of an algorithm?
Which functions are declared inside a class have to be defined separately outside the class?