์ธ๋„ค์ผ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์ค‘์š”ํ•œ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์ž‘์„ฑํ•˜๊ธฐ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋Š” ์ž‘์„ฑํ•œ ์ฝ”๋“œ๊ฐ€ ์˜๋„๋Œ€๋กœ ์ž˜ ๋™์ž‘ํ•˜๊ณ  ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๋ฌธ์ œ๊ฐ€ ์—†๋А๋‹ž ํ™•์ธํ•  ๋ชฉ์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” ์ฝ”๋“œ์ด๋‹ค. ํ˜„์žฌ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์‹ค๋ฌด์—์„œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ์˜ ์‚ฌ์šฉ์€ ๋งค์šฐ ์ค‘์š”ํ•ด์กŒ๋‹ค. ์ฝ”๋“œ์˜ ๋™์ž‘์„ ๊ฒ€์ฆํ•˜๊ณ , ์œ ์ง€๋ณด์ˆ˜์—ํ•˜๊ธฐ์— ๋งค์šฐ ์ข‹๊ณ , ๊ฐœ๋ฐœ์ž ์ž์ฒด๊ฐ€ ๋ฌด์—‡์„ ๋งŒ๋“ค๊ณ  ์žˆ๋Š”์ง€ ์ •ํ™•ํžˆ ์ธ์ง€ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๋ฉฐ, ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๋ฌธ์ œ๋ฅผ ๋ฏธ๋ฆฌ ๋ฐœ๊ฒฌํ•ด ๋ถ€๋‹ด์„ ๋œ์–ด์ฃผ๋Š” ์žฅ์ ์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. ๋‚˜ ๋˜ํ•œ, ์‚ฌ์‹ค์ƒ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ฒ˜์Œ ์ ‘ํ–ˆ์„ ๋•Œ๋Š” ์–ด๋ ต๊ธฐ๋„ ํ•˜๊ณ , ์ด๊ฒŒ ๊ตณ์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„์ธ๊ฐ€? ์‹ถ์–ด ๋”ฑํžˆ ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ, ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ํ™•์‹คํžˆ ํฐ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ๋งŽ์€ ๋„์›€์ด ๋จ์„ ๋А๋ผ๊ณ  ๊ณต๋ถ€๋ฅผ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋Š” ์ฃผ๋กœ V๋ชจ๋ธ์„ ๋”ฐ๋ผ ์ƒ๊ฐ ํ•ด ๋ณผ ์ˆ˜ ์žˆ..
์ธ๋„ค์ผ SQL๊ณผ NoSQL์˜ ์ฐจ์ด๋Š”? SQL์˜ ์ข…๋ฅ˜๋ฅผ ๊ณต๋ถ€ํ•˜๋ฉด์„œ SQL , NoSQL ์„ ์ž์ฃผ ๋“ค์–ด๋ดค์„ ๊ฒƒ์ด๋‹ค. ๋ณดํ†ต Spring์„ ๊ฐœ๋ฐœํ•  ๋•Œ๋Š” SQL์ธ MySQL์„, Node.js์—์„œ๋Š” NoSQL์ธ MongoDB ๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ–ˆ์„ ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ์ด์ฒ˜๋Ÿผ ํ”„๋ ˆ์ž„์›Œํฌ์— ๋”ฐ๋ผ ๋‹จ์ˆœํžˆ ์ ํ•ฉํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ •ํ•ด์ ธ์„œ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด, SQL๊ณผ NoSQL์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด๋ณด์ž! SQL (๊ด€๊ณ„ํ˜• DB) ํ”ํžˆ, ์‹ ์ž…์ด๋ผ๋ฉด SQL์— ๋Œ€ํ•ด ๋จผ์ € ๊ณต๋ถ€ํ•ด๋ดค์„ ๊ฒƒ์ด๋‹ค. ์ด์ฒ˜๋Ÿผ SQL์„ ์‚ฌ์šฉํ•˜๋ฉด RDBMS์—์„œ ๋ฐ์ดํ„ฐ์˜ CRUD๋ฅผ ํ• ์ˆ˜ ์žˆ๋‹ค. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” 1. ๋ฐ์ดํ„ฐ๋Š” ๊ด€๊ณ„๋ฅผ ํ†ตํ•ด ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”์— ๋ถ„์‚ฐ๋œ๋‹ค. 2. ๋ฐ์ดํ„ฐ๋Š” ์ •ํ•ด์ง„ ๋ฐ์ดํ„ฐ ์Šคํ‚ค๋งˆ์— ๋”ฐ๋ผ ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ๋‹ค. ์™€ ๊ฐ™์€ ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. NoSQL(๋น„๊ด€๊ณ„ํ˜• DB) ์ด์— ๋น„ํ•ด NoSQL..
์ธ๋„ค์ผ JPA ์™€ Mybatis๋ž€ ๋ฌด์—‡์ธ๊ฐ€? / JPA์™€ Mybatis์˜ ์ฐจ์ด ๋ฐฑ์—”๋“œ์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋กœ, ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ๊ธฐ์ˆ ์ด 'Mybatis' ์™€ 'JPA' ์ด๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘์†์„ ํŽธํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด SQL Mapper ๊ธฐ์ˆ ๊ณผ, ORM(Object Relational Mapping) ๊ธฐ์ˆ ์„ ์ œ๊ณตํ•œ๋‹ค. SQL Mapper ๋Š” '๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ SQL ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ฒด์— ๋งคํ•‘' ์‹œ์ผœ์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ด๋ฉฐ, ORM์€ ๊ฐ์ฒด์™€ DB์˜ ๋ฐ์ดํ„ฐ๋ฅผ '์ž๋™์œผ๋กœ ๋งคํ•‘' ์‹œ์ผœ์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. SQL Mapper ๊ธฐ์ˆ ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด Mybatis ์ด๋ฉฐ, ORM ๊ธฐ์ˆ ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด JPA ์ด๋‹ค. ๐Ÿ“Œ JPA ๋ž€? (Java Persistence API) ์ž๋ฐ”์˜ ORM ๊ธฐ์ˆ ์„ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•˜๋„๋ก ๋„์™€์ฃผ๋Š” API์ด๋‹ค. ์ฆ‰, ์ž๋ฐ”์—์„œ ๊ฐ์ฒด๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ..
์ธ๋„ค์ผ [๋„คํŠธ์›Œํฌ] REST API๋ž€? - REST API - REST API๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ๋ฐฉ๋ฒ• REST API๋ž€? ์‰ฝ๊ฒŒ ๋งํ•ด REST๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ API ์ด๋‹ค. ๋จผ์ € REST์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž REST ๋ž€? Representationnal State Tranfer์˜ ์•ฝ์–ด๋กœ '์ž์›์„ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ํ•ด๋‹น ์ž์›์˜ ์ƒํƒœ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๋ชจ๋“  ๊ฒƒ' ์„ ์˜๋ฏธํ•œ๋‹ค. 1. HTTP URI(Uniform Resource Identifier)๋ฅผ ํ†ตํ•ด ์ž์›(Resource)์„ ๋ช…์‹œ 2. HTTP Method(POST, GET, PUT, DELETE, PATCH๋“ฑ)๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ์ž์›(URI)์— ๋Œ€ํ•œ CRUD Operation์„ ์ ์šฉํ•˜๋Š” ๊ฒƒ ์„ ์˜๋ฏธํ•œ๋‹ค. ์—ฌ๊ธฐ์—์„œ, CRUD Operation์ด๋ž€? CRUD๋Š” ๋Œ€๋ถ€๋ถ„ ์ปดํ“จํ„ฐ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ๊ฐ€์ง€๋Š” ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ..
์ธ๋„ค์ผ ์•„ํ‚คํ…์ฒ˜, ํ”„๋ ˆ์ž„์›Œํฌ๋ž€ ๋ฌด์—‡์ธ๊ฐ€? Architecture(์•„ํ‚คํ…์ฒ˜) ๋ž€? ์•„ํ‚คํ…์ฒ˜๋Š” ์‹œ์Šคํ…œ ๊ตฌ์„ฑ ๋ฐ ๋™์ž‘ ์›๋ฆฌ๋ฅผ ๋‚˜ํƒ€๋‚ด๊ณ  ์žˆ๋‹ค. ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์˜ ๊ด€๊ณ„ ๋ฐ ์‹œ์Šคํ…œ ์™ธ๋ถ€ ํ™˜๊ฒฝ๊ณผ์˜ ๊ด€๊ณ„๊ฐ€ ๋ฌ˜์‚ฌ๋œ๋‹ค. ์•„ํ‚คํ…์ฒ˜๋ž€ "์„œ๋น„์Šค์˜ ๋™์ž‘์›๋ฆฌ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š”๊ฒƒ" ์ฆ‰, ํ•˜๋‚˜์˜ ์„œ๋น„์Šค๊ฐ€ ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑ์ด ๋˜๋ฉฐ ์–ด๋–ป๊ฒŒ ๋™์ž‘์ด ๋œ๋‹ค. ๋ฅผ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ ์•„ํ‚คํ…์ฒ˜ vs ์„ค๊ณ„ ์•„ํ‚คํ…์ฒ˜์™€ ์„ค๊ณ„๋Š” ๋น„์Šทํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ์šฉ์–ด์ด๋‹ค. ๋”๋ณด๊ธฐ ์•„ํ‚คํ…์ฒ˜ : ๊ณ ์ˆ˜์ค€์˜ ๊ตฌ์กฐ ๋˜๋Š” ๊ฒฐ์ •์‚ฌํ•ญ ์„ค๊ณ„(Design) : ์ €์ˆ˜์ค€์˜ ๊ตฌ์กฐ ๋˜๋Š” ๊ฒฐ์ •์‚ฌํ•ญ ์ด ๋‘ ์šฉ์–ด๋Š” ๋ณธ์งˆ์ ์œผ๋กœ ๊ฐ™์€ ์˜๋ฏธ์ด๋‹ค. ๋ชจ๋‘ SW ์ „์ฒด ์„ค๊ณ„์˜ ๊ตฌ์„ฑ ์š”์†Œ์ด๋ฉฐ, ๊ฐœ๋ณ„๋กœ ์กด์žฌํ•  ์ˆ˜ ์—†๊ณ  ๊ฒฝ๊ณ„๊ฐ€ ๋šœ๋ ทํ•˜์ง€ ์•Š๋‹ค. ๊ณ ์ˆ˜์ค€, ์ €์ˆ˜์ค€ ์ค‘ ์˜์‚ฌ๊ฒฐ์ •์˜ ์—ฐ์†์„ฑ์˜ ์ฐจ์ด์ด๋‹ค. Framework(ํ”„๋ ˆ์ž„์›Œํฌ)๋ž€? "Frame"์€ 'ํ‹€' , "Work"๋Š” '์ผํ•˜๋‹ค' ๋ผ๋Š”..
์ธ๋„ค์ผ [๊ธฐ๋ณธ ์ง€์‹] Node.js๋ž€? ์š”์ฆ˜ ํŠธ๋žœ๋“œ๋ฅผ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด ๊ณต๊ณ ๋ฅผ ๋ณด๋‹ค๊ฐ€ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ํ•„์ˆ˜ ์Šคํ‚ฌ ์ค‘ "Node.js" ์— ๋Œ€ํ•ด ๋„ˆ๋ฌด ๋งŽ์ด ๋ดค๋‹ค. ๊ทธ๋ž˜์„œ, Node.js ๊ฐ€ ๋„๋Œ€์ฒด ๋ญ”๋ฐ? ํ•˜๊ณ  ๋„ˆ๋ฌด ๊ถ๊ธˆํ•ด์„œ ์ฐพ์•„๋ดค๋‹ค. Node.js์˜ ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€ ์— ๋”ฐ๋ฅด๋ฉด, Node.js๋Š” Chrome V8 JavaScript ์—”์ง„์œผ๋กœ ๋นŒ๋“œ๋œ JavaScript ๋Ÿฐํƒ€์ž„์ด๋‹ค. ๋ผ๊ณ  ์ •์˜ํ•˜๊ณ  ์žˆ์ง€๋งŒ, ์‚ฌ์‹ค ๋ญ” ๋œป์ธ์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค... ์ •์˜๋Š” ๋’ค๋กœํ•˜๊ณ , Node.js๋กœ ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ค์ˆ˜ ์žˆ๋Š”๋ฐ ์™œ ? Node.js๋กœ ์„œ๋ฒ„๋ฅผ ๋งŒ๋“œ๋Š”์ง€์— ๋Œ€ํ•ด ๋ถ„์„ํ•˜๋ฉฐ, ์กฐ๊ธˆ ์ด Node.js ์— ๋Œ€ํ•ด ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค. ์™œ ? Node.js๋กœ ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ค๊นŒ? ์šฐ๋ฆฌ๋Š” ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋ž˜ํ”ฝ์„ ์ž์ฃผ ๊ฒฝํ—˜ํ•˜๊ฒŒ ๋œ๋‹ค. ์ˆ˜๋งŽ์€ ๊ณ ๊ฐ์˜ ์š”์ฒญ์„ ํ•œ ๋ฒˆ์— ๋ฐ›์•„ ๊ฑฐ์˜ ๋™์‹œ์—, ์ฆ‰ ์ˆœ์„œ์™€ ..
์ธ๋„ค์ผ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํด๋ฆฐ์ฝ”๋“œ๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ  ํด๋ฆฐ ์ฝ”๋“œ(Clean Code) ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฐœ๋…์œผ๋กœ, ๋ง ๊ทธ๋Œ€๋กœ ์ฝ๊ธฐ ์‰ฝ๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ”„๋กœ๊ทธ๋žจ์˜ ๋™์ž‘์„ ๋ณด์žฅํ•˜๋Š” ๊ฒƒ ๋ฟ ์•„๋‹ˆ๋ผ ์ฝ”๋“œ ์ž์ฒด๊ฐ€ ๊ฐ€๋…์„ฑ์ด ๋›ฐ์–ด๋‚˜๊ณ  ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์‰ฝ๋„๋ก ์ž‘์„ฑ๋˜์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ํด๋ฆฐ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ฒŒ ๋˜๋ฉด 1. ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์‰ฝ๊ณ  2. ์˜ค๋ฅ˜๋ฅผ ๋ฐœ๊ฒฌํ•œ ํ›„์—๋„ ์ˆ˜์ •์ด ์–ด๋ ต๋‹ค 3. ๊ฐœ๋ฐœ ์†๋„๋ฅผ ๋Šฆ์ถ˜๋‹ค ๋”ฐ๋ผ์„œ ๋‹น์—ฐํ•˜๊ฒŒ๋„, ํŒ€ ์ „์ฒด์™€ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด์„œ๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฐ€์น˜๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ํด๋ฆฐ์ฝ”๋“œ์˜ ์ฃผ์š” ์›์น™ 1. ์˜๋ฏธ ์žˆ๋Š” ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜๊ธฐ ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์ง€๊ณ  ์ ์  ๋งŽ์•„์ง€๊ฒŒ ๋˜๋ฉด ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜์˜ ์ด๋ฆ„์ด ์ˆ˜๋„ ์—†์ด ๋งŽ๋‹ค. ์ด๋•Œ, ์ด ํ•จ์ˆ˜์™€ ๋ณ€์ˆ˜๋Š” ์‚ฌ์šฉ ๋ฌธ๋งฅ์— ๋งž๊ฒŒ ์ •ํ™•ํ•˜๊ฒŒ ๋ช…๋ช…๋˜์–ด์•ผ ํ•œ๋‹ค. 2. ๊ฐ€๋…์„ฑ ์กฐ์€ ์ฝ”๋“œ ๋งŒ๋“ค๊ธฐ ์ฝ”๋“œ๋Š” ๋‚˜ ๋ฟ๋งŒ ์•„๋‹ˆ..
์ธ๋„ค์ผ ์•Œ์•„๋‘๋ฉด ์œ ์šฉํ•œ ๋งฅ ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด ํ„ฐ๋ฏธ๋„์€ ๊ฐœ๋ฐœ์ž๋ผ๋ฉด ํ•œ ๋ฒˆ ์ฏค์€ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค. # ํ„ฐ๋ฏธ๋„์€ MAC ์œ ์ €๋ผ๋ฉด ์ž์ฃผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๊ฒ ์ง€๋งŒ, ์œ ๋‹‰์Šค ๊ณ„์—ด ์šด์˜์ฒด์ œ์˜ ๋ช…๋ น์–ด๋Š” ์ „๋ถ€ ์œ ์‚ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์œˆ๋„์šฐ ์ œ์™ธ ๋Œ€๋ถ€๋ถ„ ์šด์˜ ์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ช…๋ น์–ด์ด๋‹ค. CLI ์™€ GUI ๋จผ์ €, ํ„ฐ๋ฏธ๋„์„ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์ „ CLI ์™€ GUI์— ๋Œ€ํ•ด ์•Œ์•„๋‘๋ฉด ์ข‹๋‹ค ์šฐ์„  CLI ๋Š” Command Line Interface์˜ ์•ฝ์–ด๋กœ, ํ™”๋ฉด์—์„œ ๋งˆ์šฐ์Šค ๋“ฑ์„ ์ด์šฉํ•ด ์ปดํ“จํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ„ฐ๋ฏธ๋„์—์„œ ํ…์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์ปดํ“จํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๋ช…๋ น์–ด ๊ธฐ๋ฐ˜์˜ ์ธํ„ฐํŽ˜์ด์Šค ์ด๋‹ค. ๋ฐ˜๋ฉด GUI ๋Š” Graphic User Interface์˜ ์•ฝ์–ด๋กœ CLI์™€ ๋‹ค๋ฅด๊ฒŒ ํ™”๋ฉด์—์„œ ๋งˆ์šฐ์Šค๋ฅผ ํ†ตํ•ด ์ปดํ“จํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๊ทธ๋ž˜ํ”ฝ ๊ธฐ๋ฐ˜์˜ ์œ ์ € ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. ํ„ฐ๋ฏธ๋„ ์‚ฌ์šฉํ•˜๊ธฐ ํ„ฐ๋ฏธ๋„์€ ์šด์˜์ฒด์ œ์— ..
์ธ๋„ค์ผ 2024 ๊ธฐ์ค€ ์‹ ์ž… ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋ฐฑ์—”๋“œ ๋กœ๋“œ๋งต / 2. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ์—…๋ฌด, 3. ๋ฐฑ์—”๋“œ ์•„ํ‚คํ…์ฒ˜ 2. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ์—…๋ฌด [์ฃผ๋œ ์—…๋ฌด : ์„œ๋ฒ„ ์ธก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ] ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ๊ฐœ๋ฐœ ์ˆœ์„œ 1. ๊ณผ์ œ ํ• ๋‹น 2. ๊ณผ์ œ ๋ถ„์„ 3. ๊ฐœ๋ฐœ 4. ํ…Œ์ŠคํŠธ (๋ฆฌ๋ทฐ) 5. QA ๋ฐ ๋ฒ„๊ทธ ์ˆ˜์ • 6. ๋ฐฐํฌ 7. ์œ ์ง€๋ณด์ˆ˜ 3. ๋ฐฑ์—”๋“œ ์•„ํ‚คํ…์ฒ˜ ์˜ค๋Š˜๋‚ ์˜ ์„œ๋น„์Šค๋Š” ๊ณ„ํš์„ ์ž˜ ์„ธ์›Œ ์ฝ”๋”ฉ์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๊ณ„ํš์„ ์ž‘์„ฑํ•˜๋Š” ์‚ฌ๋žŒ์„ ์•„ํ‚คํ…ํŠธ ๋ผ๊ณ  ํ•˜๊ณ , ๊ทธ ๊ณ„ํš์„ ์•„ํ‚คํ…์ฒ˜ ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์ด์ฒด์ ์ด๊ณ  ์ข…ํ•ฉ์ ์ด๊ณ  ์ƒ์„ธํ•˜๊ฒŒ ๊ฐœ๋ฐœ์„ ์ค€๋น„ํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐœ๋ฐœ์ž๋ผ๋ฉด ์•„ํ‚คํ…์ฒ˜๋ฅผ ์•Œ๊ณ  ์žˆ๋Š” ํŽธ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋ฐฑ์—”๋“œ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋ผ๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ ์•Œ์•„๋‘๋ฉด ์ข‹์„ ์•„ํ‚คํ…์ฒ˜๋Š” ํŒจํ„ด ์ค‘ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ณ„์ธตํ˜• ์•„ํ‚คํ…์ฒ˜, ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜, ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค๋ฌด์—์„œ๋Š” ๋Œ€๋ถ€๋ถ„ ์ด 3๊ฐ€์ง€์˜ ์กฐํ•ฉ์œผ..
์ธ๋„ค์ผ 2024 ๊ธฐ์ค€ ์‹ ์ž… ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋ฐฑ์—”๋“œ ๋กœ๋“œ๋งต /1. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผ ํ•˜๋Š”๊ฒƒ ์ „์—๋Š” ์ž๋ฐ”, JSP, SQL๋งŒ ์•Œ์•„๋„ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋  ์ˆ˜ ์žˆ์—ˆ๋˜ ๋ฐ˜๋ฉด, ์ง€๊ธˆ ์‹ ์ž… ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋กœ์„œ ์ทจ์—…์„ ํ•˜๋ ค๋ฉด ์•Œ์•„์•ผ ํ•˜๋Š” ์ง€์‹์ด ๋„ˆ๋ฌด ๋งŽ๋‹ค. 1. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ์•Œ์•„์•ผ ํ•˜๋Š” ๊ฒƒ ๋ฐฑ์—”๋“œ๋Š” "์‹œ์Šคํ…œ์˜ ๋’ท๋‹จ(=๋ฐฑ์—”๋“œ)"์„ ์˜๋ฏธํ•œ๋‹ค ์ฆ‰, ์‰ฝ๊ฒŒ ๋งํ•ด ์•„์ด๋””์™€ ํŒจ์Šค์›Œ๋“œ๋ฅผ ์ž…๋ ฅํ•  ๋•Œ ์ด์— ๋Œ€ํ•œ ๊ฒ€์ฆ์„ ์–ด๋””์„ ๊ฐ€ ํ•ด์ฃผ๊ณ , ๊ทธ ์ •๋ณด๋ฅผ ์œ ์ง€์‹œ์ผœ์ฃผ๋Š” ์ธ์ฆํ•˜๋Š” ์ž‘์—… ๋”ฐ๋ผ์„œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์ด์–ธํŠธ(์•ฑ, ๋ธŒ๋ผ์šฐ์ € ๋“ฑ)์˜ ํ”„๋ก ํŠธ์—”๋“œ ์˜์—ญ์˜ ์š”์ฒญ์„ ์ปดํ“จํ„ฐ๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ•˜๋Š” ์‚ฌ๋žŒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„๋กœ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค. ์ด๋•Œ ๋ฏธ๋ฆฌ ์ •ํ•ด๋†“์€ ํ”„๋กœํ† ์ฝœ(=๋„คํŠธ์›Œํฌ)์„ ์‚ฌ์šฉํ•œ๋‹ค. ์ด ํ”„๋กœํ† ์ฝœ์—๋Š” HTTP, TCP/UDP, ๋ผ์šฐํŒ…, NAT, OSI7๊ณ„์ธต ๋“ฑ ์ •๋ง ๋งŽ์ง€๋งŒ, ๊ทธ ์ค‘ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋ผ๋ฉด HTTPํ”„๋กœํ† ์ฝœ์— ..