๊ฒฝํ—˜

๋””์ž์ธ ํŒจํ„ด ์ ์šฉ

ballde 2023. 4. 20. 18:20

๐Ÿ’ก ์ผํ•˜๋ฉด์„œ ์œ ์šฉํ–ˆ๋˜ ํŒจํ„ด๋“ค ๊ฐ ํŒจํ„ด๋“ค์— ๋Œ€ํ•œ ์ •๋ณด๋Š” ๋งŽ์ด ์žˆ์œผ๋‹ˆ ์™œ ์‚ฌ์šฉํ–ˆ๋Š”์ง€, ์‚ฌ์šฉํ•˜๋ฉด์„œ ๋А๋‚€์ ์„ ์–˜๊ธฐํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

ํŒŒ์‹ธ๋“œ ํŒจํ„ด


Spring boot์— Facade ํŒจํ„ด ์ ์šฉ

 

Spring boot์— Facade ํŒจํ„ด ์ ์šฉ

Facade๋ž€? "๊ฑด๋ฌผ์˜ ์ •๋ฉด"์„ ์˜๋ฏธ๋กœ ์–ด๋–ค ์†Œํ”„ํŠธ์›จ์–ด์˜ ๋‹ค๋ฅธ ์ปค๋‹ค๋ž€ ์ฝ”๋“œ ๋ถ€๋ถ„์— ๋Œ€ํ•˜์—ฌ ๊ฐ„๋žตํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ด์ฃผ๋Š” ๋””์ž์ธ ํŒจํ„ด์„ ์˜๋ฏธ class TV() { var channel: Int = 0 set(value) { field = value println

balldev.tistory.com

๋А๋‚€์ 

storeService, broadcastService๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ storeService์— broadcastService๋ฅผ ์ฃผ์ž…ํ•˜๊ณ  broadcastService์— storeService์— ์ฃผ์ž…ํ•˜๊ฒŒ ๋˜๋ฉด ์ˆœํ™˜์ฐธ์กฐ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— facade๋ฅผ ์ด์šฉํ•˜์—ฌ ์ˆœํ™˜์ฐธ์กฐ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ์œ ์šฉํ•˜๊ฒŒ ์“ด๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ „๋žต ํŒจํ„ด


Spring boot์— ์ „๋žตํŒจํ„ด ์ ์šฉ

 

Spring boot์— ์ „๋žตํŒจํ„ด ์ ์šฉ

์ „๋žต ํŒจํ„ด์˜ ๋ฐฐ๊ฒฝ ์˜ˆ์‹œ ์ž…๋‹ˆ๋‹ค :) ์ธํ”„๋Ÿฐ์— ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ๊ทธ์ธ(Account)์ด ์žˆ๊ณ  ์ผ๋ฐ˜ ๋กœ๊ทธ์ธ(User)์ด ์žˆ๋‹ค. public interface Login { public void login(); } public class User implements Login { public void login() { System.out.print

balldev.tistory.com

๋А๋‚€์ 

์ŠคํŠธ๋ฆฌ๋ฐ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ broadband, antmedia๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ broadband์™€ antmedia ๊ฐ๊ฐ๋„ ๊ธฐ๋ณธ ์†ก์ถœ, ์œ ํŠœ๋ธŒ ๋™์‹œ ์†ก์ถœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋‹ค์–‘ํ•œ ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ์ „๋žต ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜์—ฌ ์œ ์šฉํ•˜๊ฒŒ ์“ด ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ปค๋ฉ˜๋“œ ํŒจํ„ด


spring boot์—์„œ ์ปค๋งจ๋“œ ํŒจํ„ด

 

spring boot์—์„œ ์ปค๋งจ๋“œ ํŒจํ„ด

์ปค๋งจ๋“œ ํŒจํ„ด์ด๋ž€? ์ปค๋ฉ˜๋“œ ํŒจํ„ด์€ ์—ฌ๋Ÿฌ ๊ฐ์ฒด๋“ค์— ๋ช…๋ น(Command)์„ ํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ์ปค๋งจ๋“œ ํŒจํ„ด ๊ฐ„๋‹จํ•œ ์›๋ฆฌ command๊ฐ€ ๋งŒ๋“ค์–ด์ง€๋ฉด createBraodcast๋ž€ ์ปค๋งจ๋“œ๋กœ antmedia, broadcast ๋“ฑ์— ๋ฉ”์„œ

balldev.tistory.com

๋А๋‚€์ 

์“ฐ๋‹ค๋ณด๋‹ˆ๊นŒ ์ „๋žตํŒจํ„ด์ด๋ž‘ ๋น„์Šทํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.

์ดํ‰

์ข€ ๋” ์ข‹์€ ๋ฐฉ๋ฒ•์ด ์—†๋‚˜ ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€ ๋””์ž์ธ ํŒจํ„ด์„ ์ ์šฉํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. (๋””์ž์ธ ํŒจํ„ด์ด ๊ดœํžˆ ๋‚˜์˜จ๊ฒŒ ์•„๋‹ˆ๋‹ค๋ž€๊ฑธ ๋А๊ผˆ๋„ค์š”…)

์ด๊ฒƒ๋ณด๋‹ค ๋” ์ข‹์€ ๋ฐฉ๋ฒ•์ด ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋‹ˆ ์ด๊ฒƒ์ €๊ฒƒ ์ ์šฉํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.