ν°μ€ν 리 λ·°
[SOLID] μ’μ κ°μ²΄ μ§ν₯ μ€κ³μ 5κ°μΉ μμΉ
10000COW 2022. 12. 20. 22:44SOLIDλ?
νλ‘κ·Έλλ¨Έκ° μ μ§λ³΄μμ νμ₯μ΄ μ¬μ΄ νλ‘κ·Έλ¨μ λ§λ€κ³ μ ν λ μ μ©ν μ μλ μμΉ.
μμ€ μ½λκ° μ½κΈ° μ½κ³ , νμ₯νκΈ° μ¬μΈ λκΉμ§ 리ν©ν°λ§ν λ μ μ©ν μ μλ μ§μΉ¨μ΄λ€.
μ΄ μμΉμ μ μμΌ μννΈμ¨μ΄ κ°λ° μ λ΅μ μΌλΆμ΄λ€.
S(Single responsibilitty principle): λ¨μΌ μ± μ μμΉ
ν ν΄λμ€λ νλμ μ± μλ§ κ°μ ΈμΌ νλ€.
O(Open / closed principle): κ°λ°© - νμ μμΉ
μννΈμ¨μ΄ μμλ νμ₯μλ μ΄λ € μμΌλ λ³κ²½μλ λ«ν μμ΄μΌ νλ€.
L(Liskov substitution principle): 리μ€μ½ν μΉν μμΉ
κ°μ²΄λ νλ‘κ·Έλ¨μ μ νμ±μ κΉ¨λ¨λ¦¬μ§ μμΌλ©΄μ νμ νμ μ μΈμ€ν΄μ€λ‘ λ°κΏ μ μμ΄μΌ νλ€.
I(Interface segregation principle): μΈν°νμ΄μ€ λΆλ¦¬ μμΉ
νΉμ ν΄λΌμ΄μΈνΈλ₯Ό μν μΈν°νμ΄μ€ μ¬λ¬ κ°κ° λ²μ μΈν°νμ΄μ€ νλλ³΄λ€ λ«λ€.
D(Dependency inversion principle): μμ‘΄κ΄κ³ μμ μμΉ
νλ‘κ·Έλλ¨Έλ μΆμνμ μμ‘΄ν΄μΌμ§, ꡬ체νμ μμ‘΄νλ©΄ μλλ€.
'π§π»βπ» CS > νλ‘κ·Έλλ°' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
ν μ΄λ μ΄ν΄νλ μ»΄νμΌ μΈμ΄ VS μΈν°νλ¦¬ν° μΈμ΄ (0) | 2022.12.19 |
---|---|
κ°μ²΄μ§ν₯ νλ‘κ·Έλλ° VS ν¨μν νλ‘κ·Έλλ° (0) | 2022.12.07 |
λμ νμ΄ν(dynamic typing)μ΄λ? (0) | 2022.03.15 |
Terminal λͺ λ Ήμ΄ (0) | 2022.03.15 |
- Total
- Today
- Yesterday
- Browser
- CSS
- λ°μ΄ν°λ² μ΄μ€
- react
- JavaScript
- useState
- μλ°μ€ν¬λ¦½νΈ
- git
- κ·Έλν
- λΈλΌμ°μ
- ν¨μ
- leetcode
- DB
- μλ£κ΅¬μ‘°
- BOJ
- DOM
- error
- state
- mdn
- Python
- React Query
- github
- νμ΄μ¬
- Context API
- μκ³ λ¦¬μ¦
- μ λ ¬
- zustand
- Component
- μλ¬
- 리μ‘νΈ
μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |