์ „์ฒด ๊ธ€ 90

F007 - JVM : Memory Architecture

โœ๏ธ ๋‘ ๋ฒˆ์งธ ๋ฉ˜ํ† ๋ง ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋ฉด์„œ Reference Type๊ณผ String ํด๋ž˜์Šค์— ๊ด€ํ•œ ์ด์•ผ๊ธฐ๋ฅผ ๋‚˜๋ˆ„๋‹ค H๋‹˜๊ป˜์„œ Garbage Collector์™€ JVM ํ‚ค์›Œ๋“œ๋ฅผ ๊บผ๋‚ด์…จ๊ณ , ์ด์— ๋Œ€ํ•œ ๋ฉ˜ํ† ๋‹˜์˜ ๊ฐ‘์ž‘์Šค๋Ÿฌ์šด ์งˆ๋ฌธ์— ๋‹นํ™ฉํ–ˆ์—ˆ๋‹ค. 1. ์ž๋ฃŒํ˜•์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๋ฉด์„œ JVM ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ์— ๋Œ€ํ•ด ์กฐ๊ธˆ ๋” ๊ณต๋ถ€ํ•˜๊ณ  ์‹ถ์–ด์กŒ๋‹ค. 2. ๋ฉ˜ํ† ๋‹˜ ์งˆ๋ฌธ์— ๋‹นํ™ฉํ•˜๋˜ ๋‚ด ์ž์‹ ์ด ๋ถ€๋„๋Ÿฌ์› ๋‹ค. ๋ถ€๋„๋Ÿฝ์ง€ ์•Š์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด์„œ. ๊ทธ๋ž˜์„œ ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ๋จผ์ € Java ์ปดํŒŒ์ผ ์‹œ, JVM ์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๊ณ  ์–ด๋–ป๊ฒŒ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹น๋ฐ›์•„ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์•Œ์•„๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์ž. ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋Š” ๊ณผ์ •์„ ํ†บ์•„๋ณด์ž Java ํŒŒ์ผ์ด ์‹คํ–‰๋˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ปดํŒŒ์ผ ๋‹จ๊ณ„์™€ ๋Ÿฐํƒ€์ž„ ๋‹จ๊ณ„๋กœ ๋‚˜๋‰˜์–ด ์ง€๋Š”๋ฐ, ์ปดํŒŒ์ผ ๋‹จ๊ณ„์—์„œ๋Š” Java Compiler(๋ช…๋ น์–ด jav..

Programming/Java 2021.05.14

Week 2

Week 2 : ๋‚˜๋ฆ„ ๊ณต๋ถ€๋Š” ํ•œ ๊ฒƒ ๊ฐ™์€๋ฐ โœ๏ธ ์˜ค๋Š˜์€ ์ €๋ฒˆ ์ฃผ์— ์ž˜ ์•Œ์ง€ ๋ชปํ–ˆ๋˜ ๊ฒƒ์— ๋Œ€ํ•œ ๋‹ต๋ณ€ ์‹œ๊ฐ„๊ณผ ์ฑ…์„ ์ฝ์œผ๋ฉฐ ์ƒˆ๋กญ๊ฒŒ ๊ณต๋ถ€ํ•œ ๊ฒƒ๋“ค์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๋“ค์„ ๋‚˜๋ˆ„์—ˆ๊ณ , ํ”ผ๋“œ๋ฐฑ์œผ๋กœ๋Š” ์–ด๋–ค ํ•œ ์ฃผ๋ฅผ ๋ณด๋ƒˆ๋Š”์ง€, ํ•œ ์ฃผ๋ฅผ ๋ณด๋‚ธ ๊ฒฐ๊ณผ๋กœ ๋ฉ˜ํ† ๋ง์—์„œ ์–ด๋–ค ๊ฒƒ์„ ๋Š๋ผ๊ณ  ์–ป์—ˆ๋Š”์ง€ ๊ธฐ๋กํ•˜๋ ค ํ•œ๋‹ค. Q : ๊ฐ€์Šด์— ์†์„ ์–น๊ณ , ์ด๋ฒˆ ์ฃผ๋Š” ์—ด์‹ฌํžˆ ์‚ด์•˜๋Š”๊ฐ€? A : ๋ถ€๋„๋Ÿฝ์ง€๋งŒ ์—ด์‹ฌํžˆ ์‚ด์ง€ ๋ชปํ–ˆ๋‹ค. ๋‹ค์ณค๋‹ค๋Š” ํ•‘๊ณ„๋กœ ์ฃผ๋ง์—๋Š” ๋ฐ˜๋‚˜์ ˆ ์ด์ƒ ์นจ๋Œ€์—์„œ ๋‚˜์˜ค์ง€ ์•Š์•˜๋‹ค. ๋‚˜๋ฆ„ ๋ฐ˜์„ฑ์˜ ์˜๋ฏธ๋กœ ์ถœํ‡ด๊ทผ ์ค‘์— ์ฑ…์„ ์ฝ์œผ๋ ค ๋…ธ๋ ฅํ–ˆ์ง€๋งŒ ํ•œ ๊ธ€์ž๋„ ์ฝํžˆ์ง€ ์•Š์•˜๋‹ค. ์‚ฌ์‹ค์ƒ ์‹คํŒจ์˜ ํ•œ ์ฃผ๋ผ๊ณ  ์ƒ๊ฐ๋œ๋‹ค. 1. Reference Type / Primitive Type - Reference Type Reference Type ์— ๋Œ€ํ•ด์„œ ์ œ๋Œ€๋กœ ์„ค๋ช…ํ•˜์ง€ ์•Š๊ณ  ๊ฐ‘์ž๊ธฐ..

์‚ถ/F-Lab 2021.05.13

F006 - Throwable, Exception, Error

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

Programming/Java 2021.05.11

F005 - Stack & Heap Memory

โœ๏ธ ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•๊ณผ ์ฐธ์กฐ ์ž๋ฃŒํ˜•์„ ๊ณต๋ถ€ํ•˜๊ณ  ๋‚˜๋‹ˆ Stack๊ณผ Heap ๋ฉ”๋ชจ๋ฆฌ์— ๋Œ€ํ•ด์„œ๋„ ๊ถ๊ธˆํ•ด์กŒ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค ์ฒซ ๋ฉ˜ํ† ๋ง ์‹œ๊ฐ„์— ์ด ๋‘˜์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์ œ๋Œ€๋กœ ํ•˜์ง€ ๋ชปํ•ด ๋ณต์Šต์„ ํ•˜๊ธด ํ–ˆ์–ด์•ผ ํ–ˆ๋‹ค. ๋˜, ์‹ค๋ฌด์—์„œ ์ด์— ๋Œ€ํ•œ ๊ฐœ๋…์ด ์ œ๋Œ€๋กœ ์žกํžˆ์ง€ ์•Š์•„ ์—ฌ๋Ÿฌ ๋ฒˆ ์‹ค์ˆ˜๋ฅผ ๊ฒฝํ—˜ํ•œ ์ ์ด ์žˆ๋‹ค. ์•ž์œผ๋กœ ์ด๋Ÿฐ ์‹ค์ˆ˜๋ฅผ ๋‹ค์‹œ ๋˜ํ’€์ดํ•˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด ๋Œ€๋žต์ ์œผ๋กœ๋งŒ ํŒŒ์•…ํ•˜๊ณ  ์žˆ๋˜ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์•Œ์•„๋ณด์ž! Stack Memory ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์œผ๋กœ ์„ ์–ธ๋œ ๋ณ€์ˆ˜๋Š” ๊ฐ’๊ณผ ํ•จ๊ป˜ ํ• ๋‹น๋œ๋‹ค. ์ฐธ์กฐ ์ž๋ฃŒํ˜•์€ ํ• ๋‹น๋œ Heap Memory์˜ ์ฐธ์กฐ๊ฐ’๊ณผ ํ• ๋‹น๋œ๋‹ค. ๊ฐ ์Šค๋ ˆ๋“œ๋Š” ๊ฐ์ž์˜ Stack Memory ์˜์—ญ์„ ๊ฐ€์ง„๋‹ค. ์ง€์—ญ ๋ณ€์ˆ˜, ๋งค๊ฐœ ๋ณ€์ˆ˜์˜ ์ƒ๋ช…์ฃผ๊ธฐ๋Š” ์ž์‹ ์ด ์†ํ•œ ๊ณณ์˜ ์Šค์ฝ”ํ”„๊ฐ€ ์‹คํ–‰๋˜๋ฉด ์‚ฌ๋ผ์ง„๋‹ค. public class StackMemoryTest ..

Programming/Java 2021.05.08

F004 - Reference Type

โœ๏ธ ๋“œ๋””์–ด ์ฒซ ๋ฉ˜ํ† ๋ง์„ ์‹œ์ž‘ํ–ˆ๋‹ค! ์—ฌ๋Ÿฌ ๋Œ€ํ™”๊ฐ€ ์˜ค๊ฐ”์ง€๋งŒ, ๊ฐ€์žฅ ์ž์‹  ์—†์—ˆ๋˜ ์ฐธ์กฐ ํƒ€์ž…๊ณผ ํ•ด๋‹น ํƒ€์ž…์ด ๋ฉ”๋ชจ๋ฆฌ ์ƒ์—์„œ ์–ด๋–ป๊ฒŒ ์šด์šฉ๋˜๋Š”์ง€ ๊ธฐ๋กํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์™œ๋ƒ๋ฉด ๋ฉ˜ํ† ๋‹˜๊ป˜์„œ ํ•ด๋‹น ์งˆ๋ฌธ์„ ์ฃผ์…จ๋Š”๋ฐ ๋Œ€๋‹ต์„ ์ž˜๋ชปํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค์‹œ ๋˜์งš์–ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋ ค๊ณ  ํ•œ๋‹ค. ์ฐธ์กฐ ์ž๋ฃŒํ˜• ์ฐธ์กฐ ์ž๋ฃŒํ˜•์€ ์•ž์„œ ๊ณต๋ถ€ํ•œ ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์„ ์ œ์™ธํ•œ ๋ชจ๋“  ์ž๋ฃŒํ˜•์„ ๋œปํ•œ๋‹ค. ๋‹ค๋งŒ String ํด๋ž˜์Šค์˜ ๊ฒฝ์šฐ new ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  Literal ํ˜•ํƒœ๋กœ ๋ณ€์ˆ˜๊ฐ’์„ ์„ ์–ธ ํ•  ์ˆ˜ ์žˆ๊ณ , + ์—ฐ์‚ฐ์ด ๊ฐ€๋Šฅํ•œ ์œ ์ผํ•œ ์ฐธ์กฐ ์ž๋ฃŒํ˜•์ด๋‹ค. ๋ชจ๋“  ์ฐธ์กฐ ์ž๋ฃŒํ˜•์€ java.lang.Object ๋ฅผ ์ƒ์†๋ฐ›๋Š”๋‹ค. ์ด๋Ÿฌํ•œ ์ฐธ์กฐ ์ž๋ฃŒํ˜•์—๋Š” Annotation(@์ฃผ์„) Arrays(๋ฐฐ์—ด) Class Enum Interface ๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์ฐธ์กฐ ์ž๋ฃŒํ˜•๊ณผ ๊ธฐ..

Programming/Java 2021.05.08

F003 - Access Modifier

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

Programming/Java 2021.05.06

F002 - Primitive Type

๊ธฐ์ดˆ๋ถ€ํ„ฐ ๋‹ค์ง€๊ธฐ ์˜ค๋Š˜์€ ์˜ˆ์Šต 2์ผ์ฐจ. ์ฑ…์„ ์ฐฌ์ฐฌํžˆ ์ฝ์–ด๋ณด๋ฉฐ ๋“œ๋””์–ด ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•๊ณผ ์ฐธ์กฐ ์ž๋ฃŒํ˜•์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•˜๊ฒŒ ๋๋‹ค. ํ˜ผ๊ณต์ž๋กœ ๊ณต๋ถ€ํ•  ๋•Œ๋Š” ์ฒ˜์Œ์ด๋‹ˆ๊นŒ ๋Œ€์ถฉ ํ›‘๊ณ  ๊ฐ€์•ผ์ง€! ๋ผ๋Š” ์ƒ๊ฐ์œผ๋กœ, ๋ฐฑ์„ ์žฅ๋‹˜ ์Šคํ„ฐ๋””์—์„œ๋Š” ๋‚˜๋„ ๋‚จ๋“ค์ฒ˜๋Ÿผ ๊ณ ๊ธ‰์ง€๊ณ  ๋ฉ‹์ง€๊ฒŒ ์ •๋ฆฌํ•ด๋ด์•ผ์ง€ ํ•˜๋Š” ์ƒ๊ฐ์œผ๋กœ ์ž„ํ–ˆ๋‹ค. ๊ฒฐ๊ตญ์— ๋‚ด๊ฒŒ ๋Œ์•„์˜ค๋Š” ๊ฒƒ์€ ํ•˜๋‚˜๋„ ์—†์—ˆ๋‹ค. byte ๋Š” ์™œ ์ตœ๋Œ€๊ฐ’์ด 255๊ฐ€ ์•„๋‹ˆ๋ผ 127์ธ์ง€ ์ด์ œ์„œ์•ผ ์•Œ๊ฒŒ๋œ ์…ˆ์ด๋‹ค. ๋Šฆ๊ฒŒ๋ผ๋„ ์•Œ๊ฒŒ๋˜์—ˆ์œผ๋‹ˆ ๋‹คํ–‰์ด์ง€๋งŒ ์žŠ์ง€ ์•Š๊ธฐ ์œ„ํ•ด ์ดํ•ดํ•œ ๋‚ด์šฉ์„ ์Šค์Šค๋กœ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๊ธฐ๋ณธ ์ž๋ฃŒํ˜• ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์—๋Š” ์ด 8 ๊ฐ€์ง€์˜ ์ž๋ฃŒํ˜•์ด ์กด์žฌํ•œ๋‹ค. ๋…ผ๋ฆฌํ˜• boolean ์ •์ˆ˜ํ˜• byte char short int long ์†Œ์ˆ˜ํ˜• float double ๊ฐ ํƒ€์ž…์€ ๋ฒ”์œ„๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜๋Š”๋ฐ, ๋…ผ๋ฆฌํ˜•์ธ boolean ํƒ€์ž…์€ ..

Programming/Java 2021.05.06

F001 - psvm

์ฒ˜์Œ๋ถ€ํ„ฐ ์ฐฌ์ฐฌํžˆ F-Lab ๋ฉ˜ํ† ๋ง ์‹œ์ž‘ ์ „, ์ž๋ฐ”์˜ ์‹  ์˜ˆ์Šต ์‹œ๊ฐ„์„ ๊ฐ€์ง€๊ธฐ๋กœ ํ–ˆ๋‹ค. ์˜ค๋Š˜์€ ๊ทธ ๋Œ€๋ง์˜ ์ฒซ ๋‚ ์ด๋‹ค. ์ฒ˜์Œ ํ˜ผ๊ณต์ž๋กœ Java ๋…ํ•™ ํ–ˆ์„ ๋•Œ์˜ ๋งˆ์Œ๊ฐ€์ง์œผ๋กœ ์‚ฐ๋œปํ•˜๊ฒŒ ์‹œ์ž‘ํ•ด๋ณด์ž! Java Version : Java 11 OpenJDK OS : Mac OS Big Sur 11.1 Utils : iTerm, oh-my-zsh, vi, Sublime Text ๋“ฑ public static void main(String[] args) {} ๋‚˜๋Š” ์ง€๊ธˆ๊นŒ์ง€ ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด์„œ MSG ๊ฐ™์€ IDE์˜ ๋ง›์— ํ‘น ๋น ์ ธ ๊ฐ€์žฅ ๊ธฐ์ดˆ์ ์ธ Java๊ฐ€ ๋™์ž‘ํ•˜๋Š” ์›๋ฆฌ, ์‹ฌ์ง€์–ด ์ฝ˜์†”์—์„œ ์–ด๋–ป๊ฒŒ Java ํŒŒ์ผ์„ ์ปดํŒŒ์ผ ํ•ด์•ผ ํ•˜๋Š”์ง€ ์žŠ๊ณ  ์‚ด์•˜๋‹ค. ์ด๋ฒˆ ๊ธฐํšŒ๋ฅผ ํ†ตํ•ด IDE๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  Java ํŒŒ์ผ์„ ๋งŒ๋“ค๊ณ , ๋ช…๋ น์–ด๋กœ ์ง์ ‘ ํ•ด๋‹น ํŒŒ์ผ..

Programming/Java 2021.05.06

Docker 01 | ๋„์ปค ์•Œ์•„๋ณด๊ธฐ

๋„์ปค๋Š” ์™œ ํ•„์š”ํ• ๊นŒ? ๋‚˜๋Š” Mac OS ํ™˜๊ฒฝ์—์„œ ๊ฐœ๋ฐœ์„ ํ•˜๊ณ  A๋Š” Windows OS ํ™˜๊ฒฝ์—์„œ ๊ฐœ๋ฐœ์„ ํ•˜๊ณ  B๋Š” Obuntu OS ํ™˜๊ฒฝ์—์„œ ๊ฐœ๋ฐœ์„ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. ์ด๋ ‡๊ฒŒ ๊ฐ์ž ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ ์œ„์—์„œ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ–ˆ์„ ๋•Œ, Java ์˜ ๊ฒฝ์šฐ JVM ์œ„์—์„œ ์ž‘๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋– ํ•œ OS์—์„œ๋„ ์†์‰ฝ๊ฒŒ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ๋ผ๋ฉด ๋ˆ„๊ตฌ๋Š” ๋นŒ๋“œ๋ฅผ ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ, ํ˜„์žฌ AWS ๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค๊ฐ€ ํ›„์— Google Cloud ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๋“ฑ ์„œ๋ฒ„์˜ ํ™˜๊ฒฝ์ด ๋ณ€ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์–ด๋– ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋กœ ๊ฐœ๋ฐœ ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํ™ฉ๋„ ๋ฐœ์ƒํ•œ๋‹ค. ์ด๋Ÿด ๋•Œ, Docker ๋ฅผ ์ด์šฉํ•œ๋‹ค๋ฉด ์กฐ๊ธˆ ๋” ์ˆ˜์›”ํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ์„œ๋ฒ„๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋„์ปค๋กœ ์„œ..

DevOps/Docker 2021.04.18