ν°μ€ν 리 λ·°
[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
- Context API
- DB
- react
- κ·Έλν
- μλ£κ΅¬μ‘°
- state
- ν¨μ
- μλ°μ€ν¬λ¦½νΈ
- BOJ
- μλ¬
- CSS
- JavaScript
- μ λ ¬
- error
- github
- λΈλΌμ°μ
- React Query
- νμ΄μ¬
- λ°μ΄ν°λ² μ΄μ€
- git
- leetcode
- zustand
- useState
- Python
- Browser
- 리μ‘νΈ
- μκ³ λ¦¬μ¦
- Component
- mdn
- DOM
μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |