ยซ   2025/02   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Recent Posts
02-02 03:27

Today
Total

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

์—ฐ์˜ ๊ธฐ๋ก ๐Ÿช

์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ : 2. ์ฒ˜์Œ ์‹œ์ž‘ํ•˜๋Š” Java ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ณธ๋ฌธ

WEB/Server

์ฝ”๋“œํ”„๋ ˆ์†Œ ์ฒดํ—˜๋‹จ : 2. ์ฒ˜์Œ ์‹œ์ž‘ํ•˜๋Š” Java ํ”„๋กœ๊ทธ๋ž˜๋ฐ

kite707 2022. 1. 14. 22:05

์ด๋ฏธ C++์„ ๊ณต๋ถ€ํ–ˆ๋Š”๋ฐ Java์™€ ์ƒ๋‹นํžˆ ์œ ์‚ฌํ•œ ๋ถ€๋ถ„์ด ๋งŽ์•„ ์ด๋ก ์ ์ธ ๋ถ€๋ถ„์„ ๋งŽ์ด ์–ป์–ด๊ฐ„ ๊ฐ•์˜์˜€๋‹ค.

 

Java ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ์†Œ๊ฐœ

์šฐ์„  Java์–ธ์–ด์˜ ํŠน์ง•์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

  • WORA - Write Once Run Anywhere
  • ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด
    →์ƒ์†, ๋‹คํ˜•์„ฑ, ์บก์Šํ™” ๋“ฑ์˜ ๊ฐ์ฒด์ง€ํ–ฅ์  ์š”์†Œ๋ฅผ ์–ธ์–ด์ ์œผ๋กœ ์ง€์›
    →Java ์ฝ”๋“œ๋Š” class๋ฅผ ๊ธฐ๋ณธ ๋‹จ์œ„๋กœ ๊ตฌ์„ฑ๋จ
  • ์ž๋™ํ™” ๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ
    →JVM์˜ Garbage Collector๊ฐ€ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ž์›์„ ํšŒ์ˆ˜
    →๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋ฅผ ํ•˜์ง€ ์•Š์•„๋„ ๋จ
  • Java ์ด์ „ C,C++์€ ํ•˜๋“œ์›จ์–ด์— ์˜์กด์ 
    →๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ํ•˜๋“œ์›จ์–ด์—์„œ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์žฌ ์ปดํŒŒ์ผ ํ•„์š”
  • Java๋Š” ํ•œ ๋ฒˆ ์ž‘์„ฑ ๋ฐ ์ปดํŒŒ์ผ ๋œ ๊ฒฐ๊ณผ๋ฌผ์ด ์–ด๋””์„œ๋“  ๋™์ž‘ ๊ฐ€๋Šฅ
    →JVM(Java Virtual Machine)์ด ํ•ต์‹ฌ

Java์–ธ์–ด์˜ ํŠน์ง• ์ค‘ ํ•˜๋‚˜์ธ WORA๋Š” JVM(Java Virtual Machine)์— ์˜ํ•ด ๊ตฌํ˜„์ด ๋œ๋‹ค. ์ด๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์†Œ์Šค์ฝ”๋“œ์˜ ์‹คํ–‰ ๊ณผ์ •์— ๋Œ€ํ•ด ์•Œ์•„์•ผํ•œ๋‹ค. 

๐Ÿ’ก์†Œ์Šค์ฝ”๋“œ๋ž€?

์‚ฌ๋žŒ์€ ์ฝ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ปดํ“จํ„ฐ๋Š” ์ฝ์„ ์ˆ˜ ์—†๋Š” ์ฝ”๋“œ. ์†Œ์Šค์ฝ”๋“œ๋กœ ๋งŒ๋“  ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๊ณ„์–ด๋กœ ๋ฒˆ์—ญ์„ ํ•ด์•ผ ํ•œ๋‹ค.

๊ทธ๋ž˜์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ์šฐ๋ฆฌ๊ฐ€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ ๋’ค, ์‹คํ–‰์„ ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ๊ธฐ๊ณ„์–ด๋กœ ๋ฒˆ์—ญํ•˜๋Š” ๊ณผ์ •์ด ์ผ์–ด๋‚œ๋‹ค.

์ด๋•Œ C์–ธ์–ด์˜ ๊ฒฝ์šฐ ๋นŒ๋“œ๋œ ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ์—์„œ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์ƒˆ๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ๋นŒ๋“œํ•ด์•ผํ•œ๋‹ค. ํ•˜์ง€๋งŒ Java์˜ ๊ฒฝ์šฐ ์ปดํŒŒ์ผ๋˜์–ด ๋‚˜์˜จ  Bytecode๋ฅผ JavaVirtualMachine์ด ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ์—์„œ ์‹คํ–‰ํ•œ๋‹ค๊ณ  ํ•ด๋„ ๋‹ค์‹œ ์ปดํŒŒ์ผ ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. 
โญ์ฆ‰ JVM์„ ๊น” ์ˆ˜ ์žˆ๊ธฐ๋งŒ ํ•˜๋ฉด ์–ด๋””์„œ๋‚˜ Java์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

Bytecode๋ฅผ JVM์ด ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์šด์˜์ฒด์ œ๊ฐ€ ๋‹ฌ๋ผ์ ธ๋„ ๋‹ค์‹œ ์ปดํŒŒ์ผ ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

์•„๋ž˜๋Š” Java์˜ ์ฃผ์š” ์šฉ์–ด๋“ค์ด๋‹ค.

  • Bytecode
    →Java ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋นŒ๋“œ ํ–ˆ์„ ๊ฒฝ์šฐ ์ƒ์„ฑ๋˜๋Š” ์ค‘๊ฐ„ ์ฝ”๋“œ
    →์–ด์…ˆ๋ธ”๋ฆฌ์–ด์™€ ์œ ์‚ฌํ•œ ํ˜•ํƒœ
    →๊ธฐ๊ณ„๊ฐ€ ๋ฐ”๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Œ
  • JVM
    →Bytecode๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ€์ƒ๋จธ์‹ 
    →Write Once, Run Anywhere๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ํ•ต์‹ฌ
    →OS,HW ๋…๋ฆฝ์ ์œผ๋กœ Bytecode๋ฅผ ์‹คํ–‰ ๊ฐ€๋Šฅ
  • JAE
    →Java Runtime Environment
    →JVM+Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰์— ํ•„์š”ํ•œ ์ถ”๊ฐ€์ ์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋“ฑ์„ ํฌํ•จ
    →Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ณธ ๋‹จ์œ„
  • JDK
    →Java Development Kit
    →JRE + Java ๊ฐœ๋ฐœ ๋„๊ตฌ๋ฅผ ํฌํ•จ
    →Java ๊ฐœ๋ฐœ์„ ์œ„ํ•ด์„œ๋Š” JDK ์„ค์น˜๊ฐ€ ํ•„์ˆ˜

 

Java ์–ธ์–ด ์ ์šฉ ๋ถ„์•ผ

Java์–ธ์–ด๋Š” ์—ฌ๋Ÿฌ ๋ถ„์•ผ์— ์ ์šฉ์ด ๊ฐ€๋Šฅํ•œ๋ฐ ๊ทธ ์ค‘ ์•„๋ž˜ 4๊ฐœ๊ฐ€ ๋Œ€ํ‘œ์ ์ด๋‹ค.

๐Ÿ’ก ์•ˆ๋“œ๋กœ์ด๋“œ : ์•ฑ ๊ฐœ๋ฐœ
๐Ÿ’กSpring : ์›น ๊ฐœ๋ฐœ
๐Ÿ’กhadoop : ๋น…๋ฐ์ดํ„ฐ ๊ธฐ์ˆ 
๐Ÿ’กelasticsearch : ๊ฒ€์ƒ‰์—”์ง„ ๋ฐ์ดํ„ฐ๋ฒ ์ดํ„ฐ

๊ทธ ์™ธ ์•„๋ž˜ ๋ถ„์•ผ๋“ค์—๋„ ์ ์šฉ๋œ๋‹ค.

  • ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ
  • ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ
  • ๋น…๋ฐ์ดํ„ฐ ์†”๋ฃจ์…˜ ๊ฐœ๋ฐœ
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ๋ฐœ
  • ๋ฐ์Šคํฌํƒ‘ GUI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ
  • ๋น…๋ฐ์ดํ„ฐ ๋ถ„์„, ๋จธ์‹ ๋Ÿฌ๋‹
  • ๊ฒŒ์ž„ ๊ฐœ๋ฐœ
  • ์ž„๋ฒ ๋””๋“œ SW ๊ฐœ๋ฐœ

 

๐Ÿ“Œ์ฝ”๋“œํ”„๋ ˆ์†Œ Java ์›น ๊ฐœ๋ฐœ ์ฒดํ—˜๋‹จ ํ™œ๋™์œผ๋กœ ์ œ๊ณต๋ฐ›์€ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ์ฝ”๋“œํ”„๋ ˆ์†Œ์—์„œ "์ฒ˜์Œ ์‹œ์ž‘ํ•˜๋Š” Java ํ”„๋กœ๊ทธ๋ž˜๋ฐ" ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ• ํ›„ ์ž‘์„ฑํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ์ฝ”๋“œํ”„๋ ˆ์†Œ ๋ฐ”๋กœ๊ฐ€๊ธฐ ๋งํฌ : https://www.codepresso.kr/