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

๋ชฉ๋ก์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™ (1)

๐Ÿ–ฅ dev-ruby

[์†Œํ”„ํŠธ์›จ์–ด๊ณตํ•™] ๋ชจ๋“ˆํ™”(Modularity)

์†Œํ”„ํŠธ์›จ์–ด ๋””์ž์ธ sw ๋””์ž์ธ์˜ ์ค‘์š”์„ฑ? ๋””์ž์ธ์€ ํ’ˆ์งˆ์ด ๊ฐ•ํ™”๋˜๋Š” ๊ณณ์ด๋‹ค. ๋””์ž์ธ์€ ํ’ˆ์งˆ์„ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” swํ‘œํ˜„์„ ์ œ๊ณตํ•œ๋‹ค. ์ข‹์€ ์„ค๊ณ„์˜ ํŠน์ง• ์„ค๊ณ„๋Š” ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ๋‚˜ํƒ€๋‚ด์•ผ ํ•œ๋‹ค. ์„ค๊ณ„๋Š” ๋ชจ๋“ˆ์‹์ด์–ด์•ผ ํ•œ๋‹ค. ์„ค๊ณ„๋Š” ๋ฐ์ดํ„ฐ์™€ ์ ˆ์ฐจ์— ๋Œ€ํ•œ ๋šœ๋ ทํ•˜๊ณ  ๋ถ„๋ฆฌ ๊ฐ€๋Šฅํ•œ ํ‘œํ˜„์„ ํฌํ•จํ•ด์•ผ ํ•œ๋‹ค. ์„ค๊ณ„๋Š” ๋…๋ฆฝ์ ์ธ ๊ธฐ๋Šฅ์  ํŠน์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ชจ๋“ˆ๋กœ ์ด์–ด์ ธ์•ผ ํ•œ๋‹ค. ์„ค๊ณ„๋Š” ๋ชจ๋“ˆ๊ณผ ์™ธ๋ถ€ ํ™˜๊ฒฝ ๊ฐ„์˜ ์—ฐ๊ฒฐ ๋ณต์žก์„ฑ์„ ์ค„์ด๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์ด์–ด์ ธ์•ผ ํ•œ๋‹ค. ์„ค๊ณ„๋Š” ๋ณ€ํ™”๋ฅผ ์ˆ˜์šฉํ•˜๊ธฐ ์‰ฌ์›Œ์•ผ ํ•œ๋‹ค. ๋ชจ๋“ˆํ™” โฌ†๏ธ -> ๊ฐœ๋ฐœ๋น„์šฉ โฌ†๏ธ -> ์œ ์ง€๋ณด์ˆ˜ ๋น„์šฉ โฌ‡๏ธ ํšจ๊ณผ์ ์ธ ๋ชจ๋“ˆํ™” ์„ค๊ณ„ ๊ธฐ๋Šฅ์  ๋…๋ฆฝ : ๊ฐ๊ฐ์˜ ๋ชจ๋“ˆ์ด ๋…๋ฆฝ์ ์ธ ๊ธฐ๋Šฅ์„ ํ•ด์•ผํ•œ๋‹ค. ์ถ”์ƒํ™” ๋ฐ ์ •๋ณด ์€๋‹‰ ๊ฐœ๋…์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์„ค๊ณ„ ๊ฐ ๋ชจ๋“ˆ์—๋Š” ์š”๊ตฌ์‚ฌํ•ญ์˜ ํŠน์ • ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค. ๊ฐ ๋ชจ๋“ˆ์€ ์™ธ๋ถ€์—์„œ ๋ณผ ๋•Œ ..