Object λ λ¨μν logic κ³Ό data λ¬Άμ μ΄μμ΄λ€. Object λ service-provider μ΄λ©°, information holder μ΄λ©°, structurer μ΄λ©°, coordinator μ΄λ©°, controller μ΄λ©°, λ°κΉ₯ μΈμμ μν interfacer μ΄λ€. κ°κ°μ Object λ€μ μμ μ΄ λ§‘μ λΆλΆμ λν΄ μλ©°, μν μ ν΄ λ΄μΌ νλ€. μ΄λ¬ν ResponsibilityDrivenDesign μ λμμΈμ λν μ μ°ν μ κ·Όμ κ°λ₯νκ² νλ€. λ€λ₯Έ λμμΈ λ°©λ²μ κ²½μ° λ‘μ§κ³Ό λ°μ΄ν°λ₯Ό κ°κ° λ°λ‘ μ΄μ μ λ§μΆκ²λ νμλ€. μ΄λ¬ν μ κ·Όμ μμΉ« λλ¬΄λ§ λ³΄κ³ μ²μ λ³΄μ§ λͺ»νλ μ€μλ₯Ό μ μ§λ₯΄κ² νλ€. RDDλ λμμΈκ³Ό ꡬν, κ·Έλ¦¬κ³ μ±
μλ€μ λν μ¬λμμΈμ λν μ€μ²μ μ‘°μΈμ μ 곡νλ€.
RDDλ κ°μ²΄ λμμΈμ λν΄ λͺ
ννκ² μ¬κ³ ν μ μλλ‘ λμμ£Όκ³ κ°μ²΄ μ§ν₯ κΈ°μ μ μ₯μ μ μ΅λν μ΄μ©νλλ° λμμ μ€λ€.
- object μ λν΄μ κΈ°μ‘΄μ 'data + algorithms' μ μ¬κ³ λ‘λΆν° 'roles + responsibilities' λ‘μ μ¬κ³ μ μ ν.
μ₯μ ¶
- RDD merges communication paths between classes, thus reducing the coupling between classes.
- Partitions and layers subsystems.
- Generates DesignPatterns. ChainofResponsibilityPattern, MediatorPattern, CommandPattern and TemplateMethodPattern are all generated by the method.
κ΄λ ¨ μλ£ ¶
- SeparationOfConcerns - λ
Όλ¬Έμ κ΄λ ¨ λ΄μ©μ΄ μΈκΈλ λ° μμ.
ResponsibilityDrivenDesign
- Wirfs-Brock's DesigningObjectOrientedSoftware (μ€μλμκ΄μ μμ)
- http://www.wirfs-brock.com/pages/home.html