- μ£Όμ΄μ§ μν© λ° μ©λμ λ°λΌ μ΄λ€ κ°μ²΄μ μ±
μμ λ§λΆμ΄λ ν¨ν΄μ΄λ€.
- κΈ°λ₯ νμ₯μ΄ νμν λ μλΈ ν΄λμ± λμ μΈ μ μλ μ μ°ν λμμ΄ λ μ μλ€.
- κ°μ²΄μ κ²°ν©μ ν΅ν΄ κΈ°λ₯μ λμ μΌλ‘ μ μ°νκ² νμ₯ ν μ μκ² ν΄μ£Όλ ν¨ν΄μ΄λ€.
- κΈ°λ³Έ κΈ°λ₯μ μΆκ°ν μ μλ κΈ°λ₯μ μ’
λ₯κ° λ§μ κ²½μ° κ° μΆκ° κΈ°λ₯μ
Decoratorν΄λμ€λ‘ μ μ ν ν νμνDecoratorκ°μ²΄λ₯Ό μ‘°ν©νμ¬ μΆκ° κΈ°λ₯μ μ‘°ν©μ μ€κ³ νλ€.
- κΈ°λ³Έ κΈ°λ₯μ μΆκ°ν μ μλ κΈ°λ₯μ μ’
λ₯κ° λ§μ κ²½μ° κ° μΆκ° κΈ°λ₯μ
- κ°μ²΄μ νμ κ³Ό νΈμΆ κ°λ₯ν ν¨μλ₯Ό κ·Έλλ‘ μ μ§νλ©΄μ κ°μ²΄μ μλ‘μ΄ μ± μμ μΆκ°ν λ μ¬μ©νλ€.
- νλΆμ°© κ°λ₯ν μ± μμ μ μν λ μ¬μ©νλ€.
- μμμ ν΅ν΄ μλΈν΄λμ€λ₯Ό κ³μ λ§λλ λ°©λ²μ΄ λΉν¨μ¨μ μΌ λ μ¬μ©νλ€.
- μ‘°ν©λλ κ²½μ°μ μκ° λ§μΌλ©΄ μλΈν΄λμ€ μκ° νλ°μ μΌλ‘ λμ΄λ μ μλ€.
- κΈ°λ³Έ κΈ°λ₯μ λ»νλ
ConcreteComponentμ μΆκ° κΈ°λ₯μ λ»νλDecoratorμ κ³΅ν΅ κΈ°λ₯μ μ μ - ν΄λΌμ΄μΈνΈλ
Componentλ₯Ό ν΅ν΄ μ€μ κ°μ²΄λ₯Ό μ¬μ©ν¨
- κΈ°λ³Έ κΈ°λ₯μ ꡬννλ ν΄λμ€
- λ§μ μκ° μ‘΄μ¬νλ ꡬ체μ μΈ
Decoratorμ κ³΅ν΅ κΈ°λ₯μ μ 곡
Decoratorμ νμ ν΄λμ€λ‘ κΈ°λ³Έ κΈ°λ₯μ μΆκ°λλ κ°λ³μ μΈ κΈ°λ₯μ λ»ν¨ConcreteDecoratorν΄λμ€λConcreteComponentκ°μ²΄μ λν μ°Έμ‘°κ° νμνλ€.Decoratorν΄λμ€μμComponentν΄λμ€λ‘μ ν©μ±μ ν΅ν΄ ννλλ€.
- κΈ°μ‘΄ μ½λλ₯Ό μμ νμ§ μκ³ λ
Decoratorν¨ν΄μ ν΅ν΄ νλμ νμ₯μν¬ μ μλ€. - ꡬμ±κ³Ό μμμ ν΅ν΄μ μ€νμ€μ μλ‘μ΄ νλμ μΆκ°ν μ μλ€.
- OCP μμΉμ μλ°νμ§ μκ³ ν΄λμ€λ₯Ό νμ₯ν μ μλ€.
- μλ―Έμλ κ°μ²΄λ€μ΄ λ무 λ§μ΄ μΆκ°λ μ μλ€.
Decoratorλ₯Ό λ무 λ§μ΄ μ¬μ©νλ©΄ μ½λκ° λ³΅μ‘ν΄μ§ μ μλ€.
