TDD, OCP, DIP

Jan 28, 2024
TDD, OCP, DIP
πŸ’‘
inpa.tistory.com μ°Έμ‘°
 

1. TDD (Test-Driven Development) ν…ŒμŠ€νŠΈ 주도 개발

1. testνŒŒμΌμ—μ„œ testμ½”λ“œλ₯Ό 막 μ§œμš” 2. 싀행이 μž˜λ˜λŠ”μ§€ 확인 3. λ§Žμ€ 경우의 수λ₯Ό 집어넣어 μΆ”κ°€ν•œλ‹€ (였λ₯˜μˆ˜μ •) 4. λ¦¬νŒ©ν† λ§ μ½”λ“œ 이뿌게~~ 5. λ³Έ νŒŒμΌμ— μΆ”κ°€
일단 뭐 싀행이 λ˜μ–΄μ•Όμ§€β€¦ 이쁘게 ν•  μƒκ°ν•˜μ§€λ§κ΅¬ μ½”λ“œλ₯Ό λ§‰μ§œλΌ 걍 짜
 

2. OCP (Open Closed Principle) 개방 폐쇄 원칙. β˜…

기쑴의 μ½”λ“œλ₯Ό μˆ˜μ •ν•˜μ§€ μ•ŠμœΌλ©΄μ„œ κΈ°λŠ₯을 μΆ”κ°€/ν™•μž₯ν•  수 μžˆλ„λ‘ μ„€κ³„ν•˜λŠ” 것. ν™•μž₯에 λŒ€ν•΄μ„œλŠ” 개방적이고, μˆ˜μ •μ— λŒ€ν•΄μ„œλŠ” 폐쇄적
πŸ’‘
μ˜€λ²„λΌμ΄λ”©, μ˜€λ²„λ‘œλ”© κ·Έκ±°! λ©”μ†Œλ“œλ₯Ό μΆ”κ°€ν•˜λŠ” 그것 !
μ΄λ•Œ κ°€μž₯ 쒋은 방법이 좔상화!
 

3. DIP (Dependency Inversion Principle) μ˜μ‘΄μ„± μ—­μ „ 원칙

μƒμœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆκ³Ό ν•˜μœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆ λͺ¨λ‘ μΆ”μƒν™”λœ μΈν„°νŽ˜μ΄μŠ€λ‚˜ 좔상 ν΄λž˜μŠ€μ— μ˜μ‘΄ν•΄μ•Ό ν•œλ‹€λŠ” κ°œλ… > OCPλž‘ μ—°κ²° μƒμœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆμ€ ν•˜μœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆμ˜ μ„ΈλΆ€ κ΅¬ν˜„μ— μ˜μ‘΄ν•˜μ§€ μ•Šμ•„λ„ λœλ‹€. λŒ€μ‹  μΈν„°νŽ˜μ΄μŠ€λ‚˜ 좔상 클래슀λ₯Ό 톡해 μƒμœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆκ³Ό ν•˜μœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆμ΄ μ†Œν†΅ν•  수 μžˆλ‹€.
 
<의쑴>
μ†Œν”„νŠΈμ›¨μ–΄μ—μ„œ ν•œ λͺ¨λ“ˆμ΄ λ‹€λ₯Έ λͺ¨λ“ˆμ— μ˜μ‘΄ν•œλ‹€λŠ” 것은, ν•œ λͺ¨λ“ˆμ΄ λ‹€λ₯Έ λͺ¨λ“ˆμ˜ κΈ°λŠ₯μ΄λ‚˜ κ΅¬ν˜„μ— μ˜μ‘΄ν•˜λ©° κ·Έ λͺ¨λ“ˆ μ—†μ΄λŠ” μ œλŒ€λ‘œ λ™μž‘ν•  수 μ—†λ‹€λŠ” 의미 일반적으둜 μƒμœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆμ€ ν•˜μœ„ μˆ˜μ€€μ˜ λͺ¨λ“ˆμ— μ˜μ‘΄ν•˜λŠ” κ²½μš°κ°€ λ§Žλ‹€.
 
Share article

codingb