Computer Science Notes

Notes From CS Undergrad Courses FSU

This project is maintained by awa03

Design Patterns

Abstract classes are superclasses which contain abstract methods and are defined such that concrete subclasses extend them by implementing the methods.

In object oriented programming, an interface or protocol is a data type that acts as an abstraction of a class.


Factory pattern

Abstract Factory Pattern

Factory Pattern - Use When


Singleton Pattern

Lazy INIT

Drawbacks

When to use


Adapter Pattern

Use When


Facade Pattern

Use When

Open Closed Principle

software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification_is, such an entity can allow its behavior our to be extended without modifying itsĀ source code.