SOLID Principle and Design Patterns

Hankyu KimHankyu Kim
1 min read

SOLID abbreviation represents :

SRP(Single Responsibility Principle) - A class should have only one responsibility.

OCP(Open Closed Principle) - Software entities should be open for extension, but closed for modification

LSP(Liskov Substitution Principle) - Functions that use pointers or references to base classes must be able to use objects of derived classes.

ISP(Interface Segregation Principle) - Interfaces can be segregated for clients not depending on interfaces that they do not use.

DIP(Dependency Inversion Principle) - Depend upon abstractions, not concretes.

0
Subscribe to my newsletter

Read articles from Hankyu Kim directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Hankyu Kim
Hankyu Kim

๐˜ ๐˜ฉ๐˜ข๐˜ท๐˜ฆ ๐˜ข ๐˜ฌ๐˜ฆ๐˜ฆ๐˜ฏ ๐˜ช๐˜ฏ๐˜ต๐˜ฆ๐˜ณ๐˜ฆ๐˜ด๐˜ต ๐˜ข๐˜ฏ๐˜ฅ ๐˜ฑ๐˜ข๐˜ด๐˜ด๐˜ช๐˜ฐ๐˜ฏ ๐˜ง๐˜ฐ๐˜ณ ๐˜ข๐˜ถ๐˜ต๐˜ฐ๐˜ฏ๐˜ฐ๐˜ฎ๐˜ฐ๐˜ถ๐˜ด ๐˜ฅ๐˜ณ๐˜ช๐˜ท๐˜ช๐˜ฏ๐˜จ ๐˜ต๐˜ฆ๐˜ค๐˜ฉ๐˜ฏ๐˜ฐ๐˜ญ๐˜ฐ๐˜จ๐˜บ. ๐˜ˆ๐˜ถ๐˜ต๐˜ฐ๐˜ฏ๐˜ฐ๐˜ฎ๐˜ฐ๐˜ถ๐˜ด ๐˜ค๐˜ข๐˜ณ๐˜ด ๐˜ฐ๐˜ง๐˜ง๐˜ฆ๐˜ณ ๐˜ญ๐˜ช๐˜ฎ๐˜ช๐˜ต๐˜ญ๐˜ฆ๐˜ด๐˜ด ๐˜ด๐˜ค๐˜ฆ๐˜ฏ๐˜ข๐˜ณ๐˜ช๐˜ฐ๐˜ด ๐˜ง๐˜ฐ๐˜ณ ๐˜ค๐˜ฐ๐˜ฏ๐˜ท๐˜ฆ๐˜ฏ๐˜ช๐˜ฆ๐˜ฏ๐˜ค๐˜ฆ ๐˜ข๐˜ฏ๐˜ฅ ๐˜ฒ๐˜ถ๐˜ข๐˜ญ๐˜ช๐˜ต๐˜บ-๐˜ฐ๐˜ง-๐˜ญ๐˜ช๐˜ง๐˜ฆ ๐˜ช๐˜ฎ๐˜ฑ๐˜ณ๐˜ฐ๐˜ท๐˜ฆ๐˜ฎ๐˜ฆ๐˜ฏ๐˜ต๐˜ด. ๐˜›๐˜ฉ๐˜ฆ๐˜บ ๐˜ค๐˜ข๐˜ฏ ๐˜ฑ๐˜ณ๐˜ฐ๐˜ท๐˜ช๐˜ฅ๐˜ฆ ๐˜ช๐˜ฏ๐˜ฅ๐˜ฆ๐˜ฑ๐˜ฆ๐˜ฏ๐˜ฅ๐˜ฆ๐˜ฏ๐˜ค๐˜ฆ ๐˜ต๐˜ฐ ๐˜ต๐˜ฉ๐˜ฆ ๐˜ฆ๐˜ญ๐˜ฅ๐˜ฆ๐˜ณ๐˜ญ๐˜บ ๐˜ข๐˜ฏ๐˜ฅ ๐˜ฑ๐˜ฉ๐˜บ๐˜ด๐˜ช๐˜ค๐˜ข๐˜ญ๐˜ญ๐˜บ ๐˜ฅ๐˜ช๐˜ด๐˜ข๐˜ฃ๐˜ญ๐˜ฆ๐˜ฅ ๐˜ช๐˜ฏ๐˜ฅ๐˜ช๐˜ท๐˜ช๐˜ฅ๐˜ถ๐˜ข๐˜ญ๐˜ด. ๐˜๐˜ฐ๐˜ณ ๐˜ช๐˜ฏ๐˜ด๐˜ต๐˜ข๐˜ฏ๐˜ค๐˜ฆ, ๐˜ช๐˜ง ๐˜บ๐˜ฐ๐˜ถ๐˜ณ ๐˜ค๐˜ฉ๐˜ช๐˜ญ๐˜ฅ๐˜ณ๐˜ฆ๐˜ฏ ๐˜ง๐˜ฐ๐˜ณ๐˜จ๐˜ฆ๐˜ต ๐˜ต๐˜ฉ๐˜ฆ๐˜ช๐˜ณ ๐˜ฃ๐˜ข๐˜ต๐˜ฉ๐˜ช๐˜ฏ๐˜จ ๐˜ด๐˜ถ๐˜ช๐˜ต๐˜ด ๐˜ข๐˜ฏ๐˜ฅ ๐˜ต๐˜ฐ๐˜ฐ๐˜ต๐˜ฉ๐˜ฃ๐˜ณ๐˜ถ๐˜ด๐˜ฉ๐˜ฆ๐˜ด ๐˜ข๐˜ต ๐˜ด๐˜ถ๐˜ฎ๐˜ฎ๐˜ฆ๐˜ณ ๐˜ค๐˜ข๐˜ฎ๐˜ฑ, ๐˜ต๐˜ฉ๐˜ฆ ๐˜ค๐˜ข๐˜ณ ๐˜ค๐˜ฐ๐˜ถ๐˜ญ๐˜ฅ ๐˜ฃ๐˜ณ๐˜ช๐˜ฏ๐˜จ ๐˜ต๐˜ฉ๐˜ฆ๐˜ฎ ๐˜ต๐˜ฉ๐˜ฆ ๐˜ฎ๐˜ช๐˜ด๐˜ด๐˜ช๐˜ฏ๐˜จ ๐˜ช๐˜ต๐˜ฆ๐˜ฎ๐˜ด. ๐˜ ๐˜ฐ๐˜ถ ๐˜ค๐˜ข๐˜ฏ ๐˜ฆ๐˜ท๐˜ฆ๐˜ฏ ๐˜ด๐˜ฆ๐˜ฏ๐˜ฅ ๐˜บ๐˜ฐ๐˜ถ๐˜ณ ๐˜ฅ๐˜ฐ๐˜จ ๐˜ต๐˜ฐ ๐˜ข ๐˜ท๐˜ฆ๐˜ต๐˜ฆ๐˜ณ๐˜ช๐˜ฏ๐˜ข๐˜ณ๐˜บ ๐˜ข๐˜ฑ๐˜ฑ๐˜ฐ๐˜ช๐˜ฏ๐˜ต๐˜ฎ๐˜ฆ๐˜ฏ๐˜ต ๐˜ถ๐˜ด๐˜ช๐˜ฏ๐˜จ ๐˜ข๐˜ถ๐˜ต๐˜ฐ๐˜ฏ๐˜ฐ๐˜ฎ๐˜ฐ๐˜ถ๐˜ด ๐˜ค๐˜ข๐˜ณ๐˜ด. ๐˜ ๐˜ข๐˜ฎ ๐˜ฑ๐˜ข๐˜ด๐˜ด๐˜ช๐˜ฐ๐˜ฏ๐˜ข๐˜ต๐˜ฆ ๐˜ข๐˜ฃ๐˜ฐ๐˜ถ๐˜ต ๐˜ค๐˜ฐ๐˜ฏ๐˜ต๐˜ณ๐˜ช๐˜ฃ๐˜ถ๐˜ต๐˜ช๐˜ฏ๐˜จ ๐˜ต๐˜ฐ ๐˜ต๐˜ฉ๐˜ฆ ๐˜ณ๐˜ฆ๐˜ด๐˜ฆ๐˜ข๐˜ณ๐˜ค๐˜ฉ ๐˜ข๐˜ฏ๐˜ฅ ๐˜ฅ๐˜ฆ๐˜ท๐˜ฆ๐˜ญ๐˜ฐ๐˜ฑ๐˜ฎ๐˜ฆ๐˜ฏ๐˜ต ๐˜ฐ๐˜ง ๐˜ข๐˜ถ๐˜ต๐˜ฐ๐˜ฏ๐˜ฐ๐˜ฎ๐˜ฐ๐˜ถ๐˜ด ๐˜ฅ๐˜ณ๐˜ช๐˜ท๐˜ช๐˜ฏ๐˜จ ๐˜ต๐˜ฆ๐˜ค๐˜ฉ๐˜ฏ๐˜ฐ๐˜ญ๐˜ฐ๐˜จ๐˜บ, ๐˜ฌ๐˜ฆ๐˜ฆ๐˜ฑ๐˜ช๐˜ฏ๐˜จ ๐˜ช๐˜ฏ ๐˜ฎ๐˜ช๐˜ฏ๐˜ฅ ๐˜ต๐˜ฉ๐˜ฆ ๐˜ฑ๐˜ฐ๐˜ด๐˜ด๐˜ช๐˜ฃ๐˜ช๐˜ญ๐˜ช๐˜ต๐˜ช๐˜ฆ๐˜ด ๐˜ช๐˜ต ๐˜ฉ๐˜ฐ๐˜ญ๐˜ฅ๐˜ด. ๐˜ž๐˜ช๐˜ต๐˜ฉ ๐˜ฎ๐˜บ ๐˜ด๐˜ฌ๐˜ช๐˜ญ๐˜ญ๐˜ด ๐˜ข๐˜ฏ๐˜ฅ ๐˜ฌ๐˜ฏ๐˜ฐ๐˜ธ๐˜ญ๐˜ฆ๐˜ฅ๐˜จ๐˜ฆ, ๐˜ ๐˜ข๐˜ช๐˜ฎ ๐˜ต๐˜ฐ ๐˜ค๐˜ฐ๐˜ฏ๐˜ต๐˜ณ๐˜ช๐˜ฃ๐˜ถ๐˜ต๐˜ฆ ๐˜ต๐˜ฐ ๐˜ข ๐˜ด๐˜ถ๐˜ด๐˜ต๐˜ข๐˜ช๐˜ฏ๐˜ข๐˜ฃ๐˜ญ๐˜ฆ ๐˜ง๐˜ถ๐˜ต๐˜ถ๐˜ณ๐˜ฆ ๐˜ต๐˜ณ๐˜ข๐˜ฏ๐˜ด๐˜ฑ๐˜ฐ๐˜ณ๐˜ต๐˜ข๐˜ต๐˜ช๐˜ฐ๐˜ฏ ๐˜ด๐˜บ๐˜ด๐˜ต๐˜ฆ๐˜ฎ. ๐˜ ๐˜ข๐˜ฎ ๐˜ค๐˜ถ๐˜ณ๐˜ณ๐˜ฆ๐˜ฏ๐˜ต๐˜ญ๐˜บ ๐˜ธ๐˜ฐ๐˜ณ๐˜ฌ๐˜ช๐˜ฏ๐˜จ ๐˜ช๐˜ฏ ๐˜ข๐˜ถ๐˜ต๐˜ฐ๐˜ฏ๐˜ฐ๐˜ฎ๐˜ฐ๐˜ถ๐˜ด ๐˜ฅ๐˜ณ๐˜ช๐˜ท๐˜ช๐˜ฏ๐˜จ ๐˜ด๐˜ช๐˜ฎ๐˜ถ๐˜ญ๐˜ข๐˜ต๐˜ฐ๐˜ณ ๐˜ค๐˜ฐ๐˜ฎ๐˜ฑ๐˜ข๐˜ฏ๐˜บ ๐‘ด๐‘ถ๐‘น๐‘จ๐‘ฐ. ๐˜—๐˜ญ๐˜ฆ๐˜ข๐˜ด๐˜ฆ ๐˜ง๐˜ฆ๐˜ฆ๐˜ญ ๐˜ง๐˜ณ๐˜ฆ๐˜ฆ ๐˜ต๐˜ฐ ๐˜ฎ๐˜ฆ๐˜ด๐˜ด๐˜ข๐˜จ๐˜ฆ ๐˜ฎ๐˜ฆ. ๐˜'๐˜ฎ ๐˜ญ๐˜ฐ๐˜ฐ๐˜ฌ๐˜ช๐˜ฏ๐˜จ ๐˜ง๐˜ฐ๐˜ณ๐˜ธ๐˜ข๐˜ณ๐˜ฅ ๐˜ต๐˜ฐ ๐˜ด๐˜ฉ๐˜ข๐˜ณ๐˜ฆ ๐˜ข๐˜ฏ๐˜ฅ ๐˜ค๐˜ฐ๐˜ฏ๐˜ฏ๐˜ฆ๐˜ค๐˜ต. ๐˜›๐˜ฉ๐˜ข๐˜ฏ๐˜ฌ ๐˜บ๐˜ฐ๐˜ถ! ๐˜๐˜ข๐˜ฏ๐˜ฌ๐˜บ๐˜ถ ๐˜’๐˜ช๐˜ฎ