๋‚˜๋งŒ์˜ ์˜ค๋ž˜๋‹ฌ๋ฆฌ๊ธฐ๋ฅผ ํ•˜๋Š” ์‚ฌ๋žŒ

Become a ghost

์ „์ฒด ๊ธ€ 55

[Java] ๋ฉ”์„œ๋“œ 'printf(String)'๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค

๐Ÿ’ก ๋ฌธ์ œ ์ƒํ™ฉ ์ธํ…”๋ฆฌ์ œ์ด์—์„œ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑํ•˜๋‹ˆ ๊ฐ‘์ž๊ธฐ ์œ„์™€ ๊ฐ™์€ ์˜ค๋ฅ˜๋ฉ”์‹œ์ง€๊ฐ€ ๋–ด๋‹ค. ๋”ฑํžˆ ๋ฌธ์ œ๋  ๊ฒƒ์€ ์—†์–ด๋ณด์˜€๋Š”๋ฐ...   ๐Ÿ’กํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ๊ฒ€์ƒ‰ํ•ด๋ณด๋‹ˆ IntelliJ ์˜ ์บ์‹œ ์˜ค๋ฅ˜์ผ ์ˆ˜๋„ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค. ๋ฉ”๋‰ด -> ํŒŒ์ผ -> ์บ์‹œ ๋ฌดํšจํ™” -> ๋ฌดํšจํ™” ๋ฐ ๋‹ค์‹œ ์‹œ์ž‘ ํ•ด์ฃผ๋‹ˆ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๊ฐ€ ์‚ฌ๋ผ์ง     โœ…  IntelliJ ์บ์‹œ ์ธํ…”๋ฆฌ์ œ์ด๋Š” ์†๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด ๋‚ด๋ถ€์ ์œผ๋กœ ์ฝ”๋“œ ๋ถ„์„ ๊ฒฐ๊ณผ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ •๋ณด, ์ธ๋ฑ์Šค ๋“ฑ์„ ์บ์‹œ์— ์ €์žฅํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ€๋” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฒฝ๋กœ๊ฐ€ ๋ฐ”๋€Œ์—ˆ๋Š”๋ฐ ๋ฐ˜์˜์ด ์•ˆ๋˜์—ˆ๊ฑฐ๋‚˜ maven ๋นŒ๋“œ ์ •๋ณด๊ฐ€ ๊ผฌ์˜€๊ฑฐ๋‚˜, ํŒŒ์ผ ๊ตฌ์กฐ๋‚˜ ์ฝ”๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ๋Š”๋ฐ ๋‚ด๋ถ€์ ์œผ๋กœ ์ •๋ฆฌ ์•ˆ๋์„๋•Œ ide ์—์„œ ์—๋Ÿฌ๋ผ๊ณ  ์ฐฉ๊ฐํ•˜๋Š” ํ˜„์ƒ์ด ์ƒ๊ธด๋‹ค.  ์บ์‹œ ๋ฌดํšจํ™”๋ฅผ ํ•ด์คŒ์œผ๋กœ์จ ์ €์žฅ๋œ ์บ์‹œ๋ฅผ ๋‚ ๋ฆฌ๊ณ , ์ธ๋ฑ์‹ฑ์„ ์ƒˆ๋กœํ•˜๊ณ , ๋นŒ๋“œ ๋™๊ธฐํ™”..

[250331] ์šด์˜์ฒด์ œ ๊ธฐ์–ต์žฅ์น˜ ๊ด€๋ฆฌ

๊ฐœ์š” - ์ดˆ๊ธฐ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์—์„œ ์ฃผ๊ธฐ์–ต์žฅ์น˜(main memory) ๋Š” ๋น„์‹ผ ์žฅ๋น„์˜€๊ธฐ ๋•Œ๋ฌธ์— ํšจ์œจ์ ์ธ ์‚ฌ์šฉ, ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋…ธ๋ ฅ์ด ๊ณ„์† ๋˜์—ˆ๋‹ค. - ์ฃผ๊ธฐ์–ต ์žฅ์น˜์—๋Š” ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ง์ ‘ ์‹คํ–‰๋˜๊ณ  ์ฒ˜๋ฆฌ๋˜์–ด์•ผ ํ•˜๋Š” ๋Œ€์ƒ์ด๊ธฐ ๋•Œ๋ฌธ. - ๊ทธ๋Ÿฌ๋‚˜ ์ฃผ๊ธฐ์–ต์žฅ์น˜ ์šฉ๋Ÿ‰์€ ์ œํ•œ๋˜์–ด ์žˆ๊ณ , ๋น„์‹ธ๋‹ค. ์ด์— ์ƒ๋Œ€์ ์œผ๋กœ ์ €๋ ดํ•˜๊ณ  ์šฉ๋Ÿ‰์ด ํฐ ์ž๊ธฐํ…Œ์ด๋ธŒ, ํ•˜๋“œ ๋””์Šคํฌ, ํ”Œ๋ž˜์‹œ ๋ฉ”๋ชจ๋ฆฌ ๋“ฑ์˜ ๋ณด์กฐ ๊ธฐ์–ต ์žฅ์น˜๊ฐ€ ์‚ฌ์šฉ๋˜์—ˆ๋‹ค. - ์ฃผ๊ธฐ์–ต์žฅ์น˜๋ฅผ ์ตœ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋„๋ก ๊ตฌ์„ฑ, ๊ด€๋ฆฌํ•˜๋˜ ์ดˆ๊ธฐ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์—์„œ๋ถ€ํ„ฐ ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ์— ์ด๋ฅด๊ธฐ ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๊ธฐ๋ฒ•์ด ๋ฐœ์ „๋˜์–ด์™”๋‹ค.  ์ดˆ์ฐฝ๊ธฐ: ๋‹จ์ผ ์‚ฌ์šฉ์ž ์ „์šฉ ์‹œ์Šคํ…œ์ค‘๊ธฐ: ์‹ค๊ธฐ์–ต์žฅ์น˜ ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ดํ›„: ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ  ์— ์ด๋ฅด๊ธฐ ๊นŒ์ง€ ๋ฐœ์ „ํ•ด์˜จ ๋‚ด์šฉ์„ ์•„๋ž˜ ์งง๊ฒŒ ์ •๋ฆฌํ•˜๊ฒ ๋‹ค.   ๋จผ์ € ..

[250312] ์šด์˜์ฒด์ œ ์Šค๋ ˆ๋“œ(Thread) ๊ฐœ๋… ์ •๋ฆฌ / ์ž๋ฐ” ์Šค๋ ˆ๋“œ ์˜ˆ์ œ

์Šค๋ ˆ๋“œ(Thread)  ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋žจ๋“ค (ํ”„๋กœ์„ธ์Šค) ์ด ์„œ๋กœ ๋…๋ฆฝ์ ์ธ ์ผ๋“ค์„ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์ˆœ์ฐจ์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋Š” ์ ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœ์„ธ์Šค๋ณด๋‹ค ์ž‘๊ณ , ๋…๋ฆฝ์ ์œผ๋กœ ์Šค์ผ€์ค„๋ง์ด ๊ฐ€๋Šฅํ•œ ์Šค๋ ˆ๋“œ(CPU ์— ๋ณด๋‚ด์ ธ ์‹คํ–‰๋˜๋Š” ๋‹จ์œ„) ๊ฐœ๋…์ด ๋‚˜์˜ค๊ฒŒ ๋˜์—ˆ๋‹ค.  ๐Ÿ’ก ๊ฐ ํ”„๋กœ์„ธ์Šค๋Š” ๋…๋ฆฝ๋œ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ ์„ ์œ„ํ•ด์„œ๋Š” ๋ฉ”์‹œ์ง€ ํ, ์„ธ๋งˆ ํฌ์–ด, ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ๋“ฑ ์‹œ์Šคํ…œ ์ž์›์ด ํ•„์š”ํ–ˆ์Œ. ๐Ÿ’ก๋ฌผ๋ฆฌ์ ์œผ๋กœ ํ•˜๋‚˜์˜ CPU ๋กœ ๋™์‹œ์— ํ•œ ๊ฐœ ์ด์ƒ์˜ ์Šค๋ ˆ๋“œ๊ฐ€ ์ˆ˜ํ–‰๋  ์ˆ˜๋Š” ์—†๋‹ค. ์ฆ‰, cpu ๋Š” ๋งค์šฐ ๋น ๋ฅด๊ฒŒ ์Šค๋ ˆ๋“œ์—์„œ ๋‹ค์Œ ์Šค๋ ˆ๋“œ๋กœ ๊ตํ™˜(switch) ๋˜์–ด ์ธ๊ฐ„์˜ ๋ˆˆ์—๋Š” ๊ทธ๊ฒƒ๋“ค์ด ๋™์‹œ์— ์„œ๋น„์Šค ๋ฐ›๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ผ ๋ฟ์ด๋‹ค.  ์Šค๋ ˆ๋“œ์— ๋Œ€ํ•ด์„œ - ๊ฐ ์Šค๋ ˆ๋“œ๋Š” ๋…๋ฆฝ์ ์ด๋‹ค.- ์Šค๋ ˆ๋“œ์˜ ์‹คํ–‰, ์ข…๋ฃŒ ์ˆœ์„œ๋Š” ์˜ˆ์ธกํ•  ์ˆ˜ ์—†๋‹ค..

[250306] ํ”„๋กœ์„ธ์Šค ๊ฐœ๋… ์ •๋ฆฌ / ํ”„๋กœ์„ธ์Šค๋ž€? / PCB ๊ฐœ๋… / ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ค„๋ง ์ข…๋ฅ˜

๊ฐœ์š” ์šด์˜์ฒด์ œ์—์„œ ํ”„๋กœ์„ธ์Šค์˜ ๊ฐœ๋…์€ ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค๊ณ  ํ•œ๋‹ค. ํ”„๋กœ์„ธ์Šค ๊ฐœ๋… ์ •๋ฆฌ์— ์•ž์„œ, ์ฑ…์— ๋‚˜์™€์žˆ๋Š” ๊ฐœ์š”๋ฅผ ๋ณด๋ฉด ์Šค์ผ€์ค„๋ง ๊ฐœ๋…์„ ๋จผ์ € ์–ธ๊ธ‰ํ•œ๋‹ค.  "์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜(cpu) ์Šค์ผ€์ค„๋ง์ด๋ž€ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์˜๋ขฐ๋ฐ›์€ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœ์„ธ์Šค๋“ค์—๊ฒŒ ์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜ ๋˜๋Š” ํ”„๋กœ์„ธ์„œ๋“ค์„ ํ• ๋‹นํ•˜๊ธฐ ์œ„ํ•œ ์ •์ฑ…์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด๋‹ค." - ์šด์˜์ฒด์ œ(์ƒ๋Šฅ์ถœํŒ์‚ฌ) 48p ์ค‘  ํ”„๋กœ์„ธ์Šค? ํ”„๋กœ์„ธ์„œ?์ฒœ์ฒœํžˆ ์•Œ์•„๋ณด๋„๋กํ•˜์ž "๋ชจ๋“  ์ปดํ“จํ„ฐ ์ž์›์€ ์‚ฌ์šฉ๋˜๊ธฐ ์ „์— ์‹ ์ค‘ํ•œ ์ •์ฑ…์ด ์ „์ œ๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ ์Šค์ผ€์ค„๋ง์€ ์šด์˜์ฒด์ œ์˜ ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ด๋ฉฐ ...  (์ค‘๋žต) ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ค„๋ง์€ ์ค€๋น„์™„๋ฃŒ(ready) ์ƒํƒœ์— ์žˆ๋Š” ํ”„๋กœ์„ธ์Šค๋“ค ์ค‘ ์–ด๋Š ๊ฒƒ์„ CPU ์— ํ• ๋‹น์‹œํ‚ฌ ๊ฒƒ์ธ๊ฐ€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ์ทจ๊ธ‰ํ•˜๋Š” ๊ฒƒ์œผ๋กœ์„œ, CPU์˜ ํšจ์œจ ๋ฐ ์ฒ˜๋ฆฌ์œจ(throughput) ์ตœ๋Œ€ํ™”,..

[250306] JAVA ๊ธฐ๋ณธ - ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(OOP): ๋‹คํ˜•์„ฑ(polymorphism)๊ณผ ์บก์Šํ™”(encapsulation)

์ž๋ฐ”์˜ ๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ดํ•ดํ•  ๋•Œ ์ค‘์š”ํ•œ ๊ฐœ๋…์œผ๋กœ ๊ผฝํžˆ๋Š” ๊ฒƒ์ด ๋„ค๊ฐ€์ง€ ์žˆ๋‹ค.  1. ํด๋ž˜์Šค2. ์ƒ์†3. ๋‹คํ˜•์„ฑ4. ์บก์Šํ™”  ์ด์ค‘์—์„œ ํด๋ž˜์Šค์™€ ์ƒ์†์€ ์ง€๋‚œ ๊ฒŒ์‹œ๊ธ€๋“ค์„ ํ†ตํ•ด ๋‹ค๋ฃจ์–ด๋ดค์œผ๋‹ˆ์˜ค๋Š˜์€ ๋‹คํ˜•์„ฑ๊ณผ ์บก์Šํ™”์— ๋Œ€ํ•ด ์ •๋ฆฌํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์ž.    ๋จผ์ €, ๐Ÿ“Œ ๋‹คํ˜•์„ฑ(polymorphism)์ด๋ž€? - Polymorphism = Poly (๋งŽ์€, ์—ฌ๋Ÿฌ ๊ฐœ) + Morphism (ํ˜•ํƒœ, ๊ตฌ์กฐ)์ฆ‰, ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ํ˜•ํƒœ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค๋Š” ์˜๋ฏธ๋กœ ์ž๋ฐ”์˜ ๋‹คํ˜•์„ฑ ๊ฐœ๋…์—์„œ๋Š”- ๊ฐ™์€ ๋ฉ”์„œ๋“œ(๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค) ๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ์ฒด์—์„œ ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.- ๊ฐ™์€ ๋ถ€๋ชจ ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง„ ๊ฐ์ฒด๊ฐ€ ์—ฌ๋Ÿฌ ํ˜•ํƒœ(๋‹ค์–‘ํ•œ ํƒ€์ž…)๋กœ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ- ์ž์‹ ํด๋ž˜์Šค๊ฐ€ ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ํƒ€์ž…์œผ๋กœ ์ฐธ์กฐ๋  ์ˆ˜ ์žˆ์Œ (Bicycle m..

[250305] ์Šคํ’€๋ง (SPOOLing) / ์ธํ„ฐ๋ŸฝํŠธ(Interrupt) ๊ฐœ๋… ์ •๋ฆฌ

์Šคํ’€๋ง (SPOOLing) ์ด๋ž€ - Simultaneous Peripheral Operation OnLine ์˜ ์•ฝ์ž. (์ง์—ญ: ๋™์‹œ ์ฃผ๋ณ€ ์žฅ์น˜ ์ž‘์—… ์˜จ๋ผ์ธ)- ์ฃผ๋ณ€์žฅ์น˜(I/O) ๊ฐ€ ์˜จ๋ผ์ธ ์ƒํƒœ์—์„œ ๋™์‹œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ์‹์„ ์˜๋ฏธํ•œ๋‹ค. -  ๋””์Šคํฌ(๋ณด์กฐ ๊ธฐ์–ต ์žฅ์น˜) ๋ฅผ ๋งค์šฐ ํฐ ๋ฒ„ํผ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜์—ฌ ์ž…์ถœ๋ ฅ(I/O) ์ž‘์—…์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋ฒ•- ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์—์„œ ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋™์‹œ์— ์ž…์ถœ๋ ฅ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐ€์ƒ ์ž…์ถœ๋ ฅ ์žฅ์น˜ (virtual I/O) ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. - ์ž…์ถœ๋ ฅ ์š”์ฒญ ๋ฐ์ดํ„ฐ๋ฅผ "๋””์Šคํฌ"์— ๋จผ์ € ์ €์žฅํ•ด๋‘๊ณ , CPU ๊ฐ€ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋™์•ˆ ์ž…์ถœ๋ ฅ ์žฅ์น˜๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ๊ฐ€๋„๋ก ํ•œ๋‹ค.  ํ•ต์‹ฌ ๊ฐœ๋…๊ฐ€์ƒ ์žฅ์น˜ (Virtual Device): ์‹ค์ œ ์ž…์ถœ๋ ฅ ์žฅ์น˜์ฒ˜๋Ÿผ ๋™์ž‘ํ•˜๋Š” ๋…ผ๋ฆฌ์  ๊ฐœ๋… ..

[250305] ์šด์˜์ฒด์ œ๋ž€? / ์šด์˜์ฒด์ œ์˜ ์œ ํ˜• 9๊ฐ€์ง€

๊ธด ๊ธ€ ์ฃผ์˜. ์ดํ•ด ์•ˆ๋˜์–ด์„œ ์ด๊ฒƒ์ €๊ฒƒ ์ถ”๊ฐ€ํ•˜๋‹ค๋ณด๋‹ˆ ์—„์ฒญ ๊ธธ์–ด์ง.๋งจ ์•„๋ž˜์— ์š”์•ฝ๋ณธ ์žˆ์Œ.      1. ์šด์˜์ฒด์ œ๋ž€ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๋กœ ํ•˜๋“œ์›จ์–ด์™€ ์‚ฌ์šฉ์ž ๊ฐ„์˜ ๋งค๊ฐœ์ฒด ์—ญํ• ์„ ํ•˜๋Š” "์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด"์ด๋‹ค. ๋ชฉ์ : ์‚ฌ์šฉ์ž๊ฐ€ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ(ํ•˜๋“œ์›จ์–ด) ์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ์ด์šฉํ•˜๋„๋ก ํ•˜๋Š” ๊ฒƒ,์ด๋ฅผ ์œ„ํ•ด ํ•˜๋“œ์›จ์–ด์™€ ์ปดํ“จํ„ฐ์˜ ๋ชจ๋“  ์ž์›์„ ๊ด€๋ฆฌํ•œ๋‹ค. (์ž์› ํ• ๋‹น, ์ž…์ถœ๋ ฅ ์žฅ์น˜ ์ œ์–ด ๋“ฑ) ๊ฒฐ๊ตญ ๊ทผ๋ณธ์ ์œผ๋กœ๋Š” ์œ„ ๋ชจ๋“  ํ™œ๋™์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌธ์ œ๋ฅผ ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.   2. ์šด์˜์ฒด์ œ์˜ ์œ ํ˜• ์šด์˜์ฒด์ œ๊ฐ€ ์–ด๋–ค ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ๋˜๋Š”์ง€๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆˆ ๊ฒƒ. ์ฆ‰ ์šด์˜์ฒด์ œ์˜ ๋ชฉ์ ์— ๋”ฐ๋ผ ๋ถ„๋ฅ˜๋œ ๊ฒƒ์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ OS ๊ฐ€ ๋™์ž‘ํ•˜๋Š” ๋ฐฉ์‹์„ ์˜๋ฏธํ•œ๋‹ค.  1) ์ผ๊ด„ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ (batch Processing System)์—ฌ๋Ÿฌ ์ž‘์—…(Jo..

[250304] JAVA ๊ธฐ๋ณธ - ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(OOP): ์ƒ์†(Inheritance) ๊ฐœ๋… ์ดํ•ดํ•˜๊ธฐ (๋ถ€๋ชจ ํด๋ž˜์Šค, ์ž์‹ ํด๋ž˜์Šค, super ํ‚ค์›Œ๋“œ, ์˜ค๋ฒ„๋ผ์ด๋”ฉ), ๋‹ค์ค‘์ƒ์†

์ƒ์†(Inheritance)์ด๋ž€ ?์ž๋ฐ”์—์„œ๋Š” ํ•˜๋‚˜์˜ ํด๋ž˜์Šค๊ฐ€ ๋‹ค๋ฅธ ํด๋ž˜์Šค์—์„œ ํ•„๋“œ(๋ณ€์ˆ˜)์™€ ๋ฉ”์„œ๋“œ(๊ธฐ๋Šฅ)์„ ์ƒ์†๋ฐ›์•„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฉฐ ์ด๋ฅผ ์ƒ์†์ด๋ผ๊ณ  ํ•œ๋‹ค.  ๋ถ€๋ชจ ํด๋ž˜์Šค(base class, parent class)์™€ ์ž์‹ ํด๋ž˜์Šค(derived class, extended class, child class)๋กœ ๋‚˜๋ˆ ์ ธ ์žˆ๋‹ค.  ๋ถ€๋ชจ ํด๋ž˜์Šค(์Šˆํผ ํด๋ž˜์Šค, Superclass) → ๊ธฐ์กด์˜ ํด๋ž˜์Šค๋กœ, ๊ณตํ†ต ๊ธฐ๋Šฅ์„ ์ •์˜ํ•จ.์ž์‹ ํด๋ž˜์Šค(์„œ๋ธŒ ํด๋ž˜์Šค, Subclass) → ๋ถ€๋ชจ ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›์•„ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•จ. ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ํด๋ž˜์Šค๋ฅผ ์žฌ์‚ฌ์šฉํ•ด์„œ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ์ด๋‹ค. ๋˜ํ•œ ์ž๋ฐ”์—์„œ๋Š” ๋ชจ๋“  ํด๋ž˜์Šค๊ฐ€ Object ํด๋ž˜์Šค๋ฅผ ์ง์ ‘, ๋˜๋Š” ๊ฐ„์ ‘์ ์œผ๋กœ ์ƒ์† ๋ฐ›๋Š”๋‹ค. ( ์ž๋ฐ”์—..

[250303] Apache ๊ธฐ๋ณธ ๊ฐœ๋… ๋ฐ ์‚ฌ์šฉ๋ฒ•

์•ฑ, ์›น์‚ฌ์ดํŠธ๋ฅผ ๊ฐœ๋ฐœํ•ด์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•˜๋ ค๋ฉด ์›น ์„œ๋ฒ„๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๊ฐœ์ธํ”„๋กœ์ ํŠธ๋ฅผ ํ•  ๋•Œ ์‚ฌ์šฉํ–ˆ๋˜ ์•„ํŒŒ์น˜์— ๋Œ€ํ•ด์„œ ์งง๊ฒŒ ์ •๋ฆฌํ•˜๊ณ ์ž ํ•œ๋‹ค.   Apache ์•„ํŒŒ์น˜๋ž€?- Apache HTTP Server ์•„ํŒŒ์น˜ ์›น์„œ๋ฒ„๋Š” "์›น ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด" ๋กœ ์›น ์‚ฌ์ดํŠธ์—์„œ ํด๋ผ์ด์–ธํŠธ (์‚ฌ์šฉ์ž)๊ฐ€ ์š”์ฒญํ•˜๋ฉด ์ฆ‰, ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์š”์ฒญ์ด ์˜ค๋ฉด HTML, CSS, JavaScript, PHP ๋“ฑ์„ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. - ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋กœ ์ „ ์„ธ๊ณ„ ๊ฐœ๋ฐœ์ž๋“ค์ด ํ˜‘๋ ฅํ•˜์—ฌ ๊ฐœ๋ฐœ, ์œ ์ง€๋ณด์ˆ˜ ๋“ฑ์„ ํ•œ๋‹ค. - Apache Software Foundation(ASF) ์—์„œ ๊ด€๋ฆฌํ•œ๋‹ค. - 1995๋…„ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋˜ NCSA HTTPd ๋ผ๋Š” ์›น์„œ๋ฒ„ ๊ฐœ๋ฐœ ์ค‘๋‹จ ํ›„ ๋งŒ๋“ค์–ด์ง. ๊ทธ ํ•ด 12์›” ์›น์„œ๋ฒ„ ์‹œ์žฅ์—์„œ 1์œ„ํ•จ. - ์›น ๊ธฐ์ˆ ์„ ํŠน..

[250224] JAVA ๊ธฐ๋ณธ ๋ฌธ๋ฒ• - ๊ฐ์ฒด์ง€ํ–ฅ, ํด๋ž˜์Šค, ๊ฐ์ฒด, ๋ฉ”์„œ๋“œ (feat. ์ ํ”„ ํˆฌ ์ž๋ฐ”) / ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์ธ์ˆ˜์˜ ์ฐจ์ด, ์ž…๋ ฅ๊ฐ’๊ณผ ๋ฆฌํ„ด๊ฐ’์˜ ์ฐจ์ด

์ž๋ฐ”๋Š” ๊ฐ์ฒด ์ง€ํ–ฅ (object oriented) ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋‹ค. ๊ฐ์ฒด ์ง€ํ–ฅ๊ณผ ๊ด€๋ จํ•ด์„œ๋Š” ํด๋ž˜์Šค, ๊ฐ์ฒด, ์ธ์Šคํ„ด์Šค, ์ƒ์†, ์ธํ„ฐํŽ˜์ด์Šค, ๋‹คํ˜•์„ฑ, ์ถ”์ƒํ™” ๋“ฑ์˜ ๊ฐœ๋…์ด ์กด์žฌํ•œ๋‹ค. ํ•œ ๊ฐœ์”ฉ ์ดํ•ดํ•ด๋ณด๋„๋ก ํ•˜์ž. ์ด ๊ฒŒ์‹œ๊ธ€์—์„œ๋Š” ํด๋ž˜์Šค, ๊ฐ์ฒด, ์ธ์Šคํ„ด์Šค๋งŒ ์–ธ๊ธ‰ํ•  ์˜ˆ์ • ๊ฐ์ฒด ์ง€ํ–ฅ์ด๋ž€? ๊ตญ์–ด ์‚ฌ์ „ ๋œป์— ์˜ํ•˜๋ฉด "๋…๋ฆฝ์ ์ธ ๊ฐ๊ฐ์˜ ๊ฐ์ฒด๋กœ ํ”„๋กœ๊ทธ๋žจ์ด๋‚˜ ์‹œ์Šคํ…œ์„ ๊ตฌ์„ฑํ•˜๋Š” ์ผ" ์ด๋ผ๊ณ  ์ •์˜ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๊ฐ์ฒด: ๋ฌธ์žฅ ๋‚ด์—์„œ ๋™์‚ฌ์˜ ํ–‰์œ„๊ฐ€ ๋ฏธ์น˜๋Š” ๋Œ€์ƒ, ์ž‘์šฉ์˜ ๋Œ€์ƒ์ด ๋˜๋Š” ์ชฝ, ์˜์‚ฌ๋‚˜ ํ–‰์œ„๊ฐ€ ๋ฏธ์น˜๋Š” ๋Œ€์ƒ ex. ์„ ์ƒ๋‹˜์ด ์ˆ ๋ž˜์—๊ฒŒ ์žกํžˆ์…จ๋‹ค. ์„ ์ƒ๋‹˜=๊ฐ์ฒด ์ง€ํ–ฅ: ์–ด๋–ค ๋ชฉํ‘œ๋กœ ๋œป์ด ์“ธ๋ฆฌ์–ด ํ–ฅํ•จ. ๋˜๋Š” ๊ทธ ๋ฐฉํ–ฅ์ด๋‚˜ ๊ทธ์ชฝ์œผ๋กœ ์ ๋ฆฌ๋Š” ์˜์ง€. ex. ํ‰ํ™”ํ†ต์ผ ์ง€ํ–ฅ.  ์ฆ‰, ์ž๋ฐ”๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์„ฑํ•˜๋Š” ์š”์†Œ๋“ค์„ ํŠน์ • ๋Œ€์ƒ ๋‹จ์œ„๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ์„œ ..