songining
article thumbnail

์—ฐ๊ด€๊ด€๊ณ„ 

- Actor์™€ ์œ ์Šค์ผ€์ด์Šค๋ฅผ ์—ฐ๊ฒฐ 

- ์œ ์Šค์ผ€์ด์Šค์™€ ์œ ์Šค์ผ€์ด์Šค๋Š” ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Œ 

 

 

์ผ๋ฐ˜ํ™”๊ด€๊ณ„

- ๊ธฐ๋ณธ์ ์ธ ๋ชฉ์ ์ด ๊ฐ™์ง€๋งŒ ์ˆ˜ํ–‰ ๋ฐฉ๋ฒ•์ด ์—ฌ๋Ÿฌ๊ฐ€์ง€์ผ ๊ฒฝ์šฐ ๊ด€๊ณ„ ํ‘œํ˜„ 

 

 

ํฌํ•จ๊ด€๊ณ„ <<include>>

ATM ์˜ˆ์‹œ

- ๋‹ค์ˆ˜์˜ ์œ ์Šค์ผ€์ด์Šค๊ฐ€ ๊ณตํ†ต์ ์ธ ํ–‰๋™์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ

- ์ค‘๋ณต์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ

- ํ•˜๋‚˜์˜ ์œ ์Šค์ผ€์ด์Šค๊ฐ€ ๋‹ค๋ฅธ ์œ ์Šค์ผ€์ด์Šค์˜ ์‹คํ–‰์„ ์ „์ œ๋กœ ํ•จ 

- ์œ ์Šค์ผ€์ด์Šค ๋ช…์„ธ ์ƒ๊ฐํ–ˆ์„ ๋•Œ ๊ผญ ํฌํ•จ๋˜๋Š” ๋ถ€๋ถ„๋งŒ ๋‚˜ํƒ€๋‚ด๊ธฐ! 

- ๋ฐฉํ–ฅ์€ base usecase -> inclusion usecase 

 

 

ํ™•์žฅ๊ด€๊ณ„ <<extend>>

์ฑ… ๋ฐ˜๋‚ฉ์—์„œ ํŠน์ • ์กฐ๊ฑด(์—ฐ์ฒด) ์—์„œ ๊ณผํƒœ๋ฃŒ ๋ถ€๊ณผ 

- ํ•œ ์œ ์Šค์ผ€์ด์Šค์˜ ํ™•์žฅ ์ง€์ ์— ์•ก์…˜ ์ถ”๊ฐ€ -> ๋‹ค๋ฅธ ์œ ์Šค์ผ€์ด์Šค๋กœ ํ™•์žฅ 

"์„ ํƒ์  ์ˆ˜ํ–‰" 

- ๋ฐฉํ–ฅ์€ extension usecase -> base usecase 

 

 

โ€ป ์œ ์Šค์ผ€์ด์Šค ๊ทธ๋ฆด ๋•Œ ์ฃผ์˜ ์‚ฌํ•ญ

1. ์œ ์Šค์ผ€์ด์Šค๋ฅผ ์งง๊ณ  ๋‹จ์ˆœํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋ผ

2. ์–ด๋–ป๊ฒŒ(how)๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฌด์—‡(what)์— ์ดˆ์ ์„ ๋งž์ถ”์–ด๋ผ

3. ๊ธฐ๋Šฅ ๋ถ„ํ• ์„ ํ”ผํ•˜๋ผ 

์ตœ๋Œ€ ๋‘ ์ˆ˜์ค€๊นŒ์ง€๋งŒ!! 

→ ์ข…์ข… ๊ณ„์ธต๊ตฌ์กฐ๋Š” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐœ์ƒํ•˜๊ธฐ๋„ ํ•˜์ง€๋งŒ ๋ชจ๋ธ ์ „์ฒด๊ฐ€ ๋‹จ์ผ ์œ ์Šค์ผ€์ด์Šค์— ๋ฟŒ๋ฆฌ๋ฅผ ๋‘์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค. 

→ ์ผ๋ฐ˜์ ์œผ๋กœ๋Š” ํ•œ ์ˆ˜์ค€์ •๋„๋กœ๋งŒ ํ‘œํ˜„ํ•œ๋‹ค. 

 

4. ๊ณผ๋„ํ•˜๊ฒŒ ์„ธ๋ถ€์ ์ธ ์œ ์Šค์ผ€์ด์Šค๊นŒ์ง€ ๋งŒ๋“ค์ง€ ์•Š์•„๋„ ๋จ 

5. ์œ ์Šค์ผ€์ด์Šค์˜ ์ˆœ์„œํ™”๋ฅผ ํ”ผํ•˜๋ผ 

→ ์„ ํ›„ ๊ด€๊ณ„๋ฅผ ์œ ์Šค์ผ€์ด์Šค ๋‹ค์ด์–ด๊ทธ๋žจ์— ํ‘œ์‹œํ•˜์ง€ ๋ง ๊ฒƒ (์œ ์Šค์ผ€์ด์Šค ๋ช…์„ธ์—์„œ precondition์— ํ‘œ์‹œํ•ด์ฃผ๋ฉด ๋œ๋‹ค.)