๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กlombok (1)

JUINTINATION

๋นŒ๋”(Builder) ํŒจํ„ด

๋นŒ๋” ํŒจํ„ด์ด๋ž€?๋นŒ๋” ํŒจํ„ด์€ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ƒ์„ฑ์ž(Constructor)๋งŒ ์‚ฌ์šฉํ•  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์•ˆ๋˜์—ˆ์œผ๋ฉฐ, ์ƒ์„ฑ๊ธฐ ํŒจํ„ด์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค. GOF ๋””์ž์ธ ํŒจํ„ด ์ค‘ ์ƒ์„ฑ ํŒจํ„ด์— ํ•ด๋‹นํ•˜๋ฉฐ, ๋ณต์žกํ•œ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํด๋ž˜์Šค์™€ ํ‘œํ˜„ํ•˜๋Š” ํด๋ž˜์Šค๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ๋™์ผํ•œ ์ ˆ์ฐจ์—์„œ๋„ ์„œ๋กœ ๋‹ค๋ฅธ ํ‘œํ˜„์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•œ๋‹ค.์ƒ์„ฑ์ž๋ฅผ ์‚ฌ์šฉํ•œ ๊ฐ์ฒด ์ƒ์„ฑ์ผ๋ฐ˜์ ์ธ ๊ฐœ๋ฐœ์—์„œ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“œ๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ•์€ new ์˜ˆ์•ฝ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ž˜์Šค์˜ ์ƒ์„ฑ์ž๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋ฆฌ์†Œ์Šค ํ’€(Resource pool)์˜ ์„ค์ •์„ ์œ„ํ•œ ResourcePoolConfig ํด๋ž˜์Šค๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ, ์ด ๋ฆฌ์†Œ์Šค ํ’€ ์„ค์ • ํด๋ž˜์Šค์—๋Š” ์•„๋ž˜์˜ ํ‘œ์™€ ๊ฐ™์ด ์„ค์ • ๊ฐ€๋Šฅํ•œ ๋ฉค๋ฒ„ ๋ณ€์ˆ˜๊ฐ€ ์žˆ๋‹ค.๋ฉค๋ฒ„ ๋ณ€์ˆ˜์„ค๋ช…ํ•จ์ˆ˜ ์„ค์ •๊ธฐ๋ณธ๊ฐ’name๋ฆฌ์†Œ์Šค ์ด๋ฆ„O์—†์ŒmaxTo..

StudyNote 2024. 4. 30. 15:42