๐Ÿ’ป cs

๐Ÿ” APS๋ž€ ๋ฌด์—‡์ธ๊ฐ€ APS : Algorithm Problem Solving ๋‚˜๋„ ๊ฐ•์˜์—์„œ ์ฒ˜์Œ ๋“ฃ๊ฒŒ ๋œ APS,, ํ•œ๋ฒˆ ์ •๋ฆฌํ•ด๋ณด๋ ค ํ•œ๋‹ค. ์šฐ์„  APS๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด ๋ฐฉ๋ฒ•์„ ๋งํ•œ๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด๋ฒ•์—๋Š” ๋งŽ์€ ๊ฒƒ๋“ค์ด ์žˆ๊ณ , ๊ทธ์ค‘์—์„œ ์ฃผ์–ด์ง„ ๋ฌธ์ œ์— ๋”ฐ๋ผ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด APS ๊ณต๋ถ€๋Š” ์™œ ํ•ด์•ผ ํ• ๊นŒ ?? 1. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด๋ฒ•์„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ๋ฌธ์ œ ๊ตฌํ˜„๋ ฅ์„ ๊ธฐ๋ฅผ ์ˆ˜ ์žˆ๋‹ค. 2. ๋‹ค์–‘ํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์˜ ๋””๋ฒ„๊น… ๊ฒฝํ—˜์„ ์Œ“์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด๋ฅผ ํ•˜๋ฉฐ ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฅ˜๋“ค์„ ์ ‘ํ•ด๋ณด๊ณ , ์ด๋Ÿฌํ•œ ์˜ค๋ฅ˜๋ฅผ ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐ€๋Š” ๊ณผ์ • ์ž์ฒด์—์„œ ์šฐ๋ฆฌ๋Š” ๋งŽ์€ ๊ฒƒ์„ ๋ฐฐ์šฐ๊ณ  ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. 3. ๋…ผ๋ฆฌ์ ์œผ๋กœ ์‚ฌ๊ณ ํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋œ๋‹ค. ์—ฌ๋Ÿฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ..
1. AOP์˜ ์ •์˜ ๋ฐ ์›๋ฆฌ AOP : ๊ด€์  ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ (Aspect Oriented Programming) - ๊ด€์  ์ง€ํ–ฅ์€ ์–ด๋–ค ๋กœ์ง์„ ๊ธฐ์ค€์œผ๋กœ ํ•ต์‹ฌ์ ์ธ ๊ด€์ , ๋ถ€๊ฐ€์ ์ธ ๊ด€์ ์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ ๋ณด๊ณ  ๊ทธ ๊ด€์ ์„ ๊ธฐ์ค€์œผ๋กœ ๋ชจ๋“ˆํ™”ํ•˜๋Š” ๊ฒƒ ํ•ต์‹ฌ์ ์ธ ๊ด€์ ์€ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ณ , ๋ถ€๊ฐ€์ ์ธ ๊ด€์ ์€ ํ•ต์‹ฌ ๋กœ์ง์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํ–‰ํ•ด์ง€๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ, ๋กœ๊น…, ํŒŒ์ผ ์ž…์ถœ๋ ฅ ๋“ฑ์ด ์žˆ๋‹ค. AOP์—์„œ ๊ฐ ๊ด€์ ์„ ๊ธฐ์ค€์œผ๋กœ ๋กœ์ง์„ ๋ชจ๋“ˆํ™”ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์ฝ”๋“œ๋“ค์„ ๋ถ€๋ถ„์ ์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ ๋ชจ๋“ˆํ™”ํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. ์ด๋•Œ, ์†Œ์Šค ์ฝ”๋“œ์ƒ์—์„œ ๋‹ค๋ฅธ ๋ถ€๋ถ„์— ๊ณ„์† ๋ฐ˜๋ณตํ•ด์„œ ์“ฐ๋Š” ์ฝ”๋“œ๋“ค์„ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ ์ด๊ฒƒ์„ ํฉ์–ด์ง„ ๊ด€์‹ฌ์‚ฌ (Crosscutting Concerns)๋ผ๊ณ  ํ•œ๋‹ค. ์ด์™€ ๊ฐ™์ด AOP๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€ ๋ณด์ˆ˜์„ฑ์„..
IT ์„œ๋น„์Šค IT ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•˜์—ฌ ๊ณ ๊ฐ์—๊ฒŒ ๊ฐ€์น˜๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ–‰์œ„ ๐Ÿ“Œ ๊ตฌ์„ฑ ์š”์†Œ 1) ํ‘œํ˜„ ๊ณ„์ธต ์‚ฌ์šฉ์ž์™€ ๋งž๋‹ฟ์•„์žˆ๋Š” ๊ณ„์ธต์œผ๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋น„์Šค์™€ ์ƒํ˜ธ์ž‘์šฉํ•จ ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์›ํ•˜๋Š” ์š”์ฒญ์„ ์ „๋‹ฌํ•˜๊ณ  ์„œ๋น„์Šค๋Š” ์‘๋‹ต์„ ํ‘œํ˜„ํ•จ 2) ์‘์šฉ ๊ณ„์ธต ์„œ๋น„์Šค๊ฐ€ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ๋œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•จ 3) ๋ฐ์ดํ„ฐ ์‘์šฉ ๊ณ„์ธต์œผ๋กœ๋ถ€ํ„ฐ ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ๋“ค์„ ์ €์žฅ ๋ฐ ๊ด€๋ฆฌ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์–ธ์ œ, ์–ด๋””์„œ๋“  ๋„คํŠธ์›Œํฌ, ์„œ๋ฒ„, ์Šคํ† ๋ฆฌ์ง€, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์„œ๋น„์Šค ๋“ฑ์˜ ์ž์›์„ ํš๋“ํ•˜๊ณ  ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค ๐Ÿ—‚๏ธ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์˜ ํ•ต์‹ฌ ํŠน์„ฑ 1) On-Demand self service ์›ํ•˜๋Š” ์ž์›์„ ์›ํ•˜๋Š” ๋•Œ์—, ๊ฐ„๋‹จํ•œ ์ธํ„ฐํŽ˜์ด์Šค ๋˜๋Š” API๋ฅผ ํ†ตํ•ด ์Šค์Šค๋กœ ์ž์› ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. 2) Broad Network Access ๊ณ ๊ฐ์€ (์ธ๊ฐ€๋œ ์‚ฌ์šฉ์ž์— ..
๊ณผ์ œ Issue ๊ธฐ์กด issue : ์ €๋ฒˆ์ฃผ ๊ธˆ์š”์ผ์— 2์ฃผ์ฐจ ๊ณผ์ œ๋ฅผ ์ด๋ฏธ PR์„ ํ†ตํ•ด ์ œ์ถœ์„ ํ•œ ์ƒํ™ฉ ⇒ ๋‚ด .git ํŒŒ์ผ์ด ์‚ญ์ œ ๋˜์ง€ ์•Š์•„ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํ•  ์ˆ˜ ์—†๋‹ค๋Š” DM์„ ๋ฐ›๊ฒŒ๋จ ⇒ .git ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๊ณ  push ํ–ˆ์ง€๋งŒ, ๊ธฐ์กด PR์— ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ๋ฐ˜์˜๋˜์ง€ ์•Š์Œ ⇒ ์ด์™€ ๊ด€๋ จํ•˜์—ฌ ์‹ค์Šต ๋ฉ˜ํ† ๋‹˜๊ณผ ํ™”๋ฉด ๊ณต์œ ๋ฅผ ํ†ตํ•ด issue ํ•ด๊ฒฐ > ๐Ÿ› ๏ธ ํ•ด๊ฒฐ ์‹œ๋„ 1. .git ํŒŒ์ผ์ด ํ™•์‹คํžˆ ์ œ๊ฑฐ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ ์ด์ „์— .git ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜์ง€ ์•Š๊ณ  push ํ–ˆ์„ ๋•Œ๋Š” ์ˆจ๊น€ ํŒŒ์ผ ๋ณด๊ธฐ๋ฅผ ํ‘œ์‹œํ•˜๊ธฐ ์•Š์•˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋จผ์ € ์ˆจ๊น€ ํŒŒ์ผ ๋ณด๊ธฐ๊ฐ€ ์ฒด๊ทธ ๋˜์–ด์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ๋‹ค๋ฅธ ํด๋”์™€ ๋”๋ธ”์ฒดํฌ๋ฅผ ํ•˜์˜€๋‹ค. ๋‹ค๋ฅธ ํด๋”์™€ ๋น„๊ตํ•˜์—ฌ ๊ณผ์ œ ํด๋” ๋‚ด์—๋Š” .git ์—†๋Š”๊ฑฐ ํ™•์ธ๋˜์—ˆ๋‹ค. 2. pull upstream ์‹œ๋„ git pull upstre..
c0zi
'๐Ÿ’ป cs' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก