# 🔆 Design Patterns

designpatternsprogramming

Why do we need design patterns in programming?

# 🔲 Programming Paradigm

Programming Paradigm

  1. Imeperative
  2. Declerative
  3. Object Oriented Paradigm

# 🔵 Repositiry Pattern

Low cohesion b/w Frontend and Backend

We should not have to change frontend if we choose to add/remove 1 or more backend services.

Say we want an app (web, mobile) which works both with internet (using remote service like Firebase) and without internet (local database service like sqlite3)

DIP

seems similar to Dependency Inversion Principle from SOLID

Useful when requirnment changes, now we need 4 databases! With Repositiry pattern it will easily scale due to low cohesion b/w frotend and backend and high coupling at backend A --> B

How to implement Repository Pattern in Python?

# ⛪️ Facade Pattern wiki

Principle of Least Knowledge

Analogous to a facade in architecture, a facade is an object that serves as a front-facing interface masking more complex underlying or structural code.

  • High coupling is bad when we have to change things.
  • Law of demeter

# 🔬 Programming Methodologies

# GRASP

General Responsibility Assignment Software Patterns

guidelines for assigning responsibility to classes and objects

# SOLID

# 🌀 Resources

I am looking for work opportunities. If you like my work and feels it was helpful kindly support me by


Buy Me A Coffee