MapleStory Finger Point

๐ŸŸค JAVA/๐Ÿ“š๋ช…ํ’ˆ JAVA_ESSENTIAL

(๊ฐœ๋…) ์ž๋ฐ” ๊ธฐ์ดˆ - ๋ช…ํ’ˆ JAVA ESSENTIAL

HYEJU01 2024. 3. 20. 21:27

· ์†Œํ”„ํŠธ์›จ์–ด : ํ•˜๋“œ์›จ์–ด๋ฅผ ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น์–ด์˜ ์ง‘ํ•ฉ

· ํ•˜๋“œ์›จ์–ด : Cpu ํ˜•ํƒœ๊ฐ€ ์žˆ๋Š” ์žฅ์น˜๋“ค

· ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด : ์ปดํ“จํ„ฐ๊ฐ€ ์‹คํ–‰ํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์–ธ์–ด 

· ์ด์ง„์ˆ˜: cpu๋Š” ์ด์ง„์ˆ˜ 0,1 ๋งŒ ์ดํ•ด ๊ฐ€๋Šฅํ•จ

· ๊ธฐ๊ณ„์–ด: ์ด์ง„์ˆ˜์˜ ๋ช…๋ น์–ด๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ ์–ธ์–ด

· ์–ด์…ˆ๋ธ”๋ฆฌ์–ด : ๋‹ˆ๋ชจ๋‹‰ ๊ธฐํ˜ธ๋กœ 1:1 ๋Œ€์‘ ์‹œํ‚จ ์–ธ์–ด

· ์ €๊ธ‰์–ธ์–ด : ๊ธฐ๊ณ„์–ด, ์–ด์…ˆ๋ธ”๋ฆฌ์–ด ๊ฐ™์€ ์‚ฌ๋žŒ์ด ๋‹ค๋ฃจ๊ธฐ ํž˜๋“  ์–ธ์–ด

· ๊ณ ๊ธ‰์–ธ์–ด : ์‚ฌ๋žŒ์ด ๋‹ค๋ฃจ๊ธฐ ์‰ฌ์šด ์–ธ์–ด pascal , C/C++, C# ๋“ฑ๋“ฑ

์ ˆ์ฐจ or ๊ฐ์ฒด ์ง€ํ–ฅ์œผ๋กœ ๋‚˜๋‰จ

· ์ ˆ์ฐจ ์ง€ํ–ฅ ์–ธ์–ด  : ์ˆœ์ฐจ์  ์ฒ˜๋ฆฌ  (C์–ธ์–ด)

· ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด  : ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด ์ƒํ˜ธ์ž‘์šฉ ํ•˜๋„๋ก ๊ฐœ๋ฐœ 

·  ํ”„๋กœ๊ทธ๋ž˜๋ฐ : ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ํ”„๋กœ๊ทธ๋žจ ์†Œ์Šค ํŒŒ์ผ์„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ

·  ์ œ์ž„์Šค ๊ณ ์Šฌ๋ง : ์ž๋ฐ” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ์ตœ์ดˆ ๊ฐœ๋ฐœ

· ์ž๋ฐ” ๋ช…์นญ ์œ ๋ž˜ : ์ž๋ฐ” ์„ฌ์—์„œ ๋‚˜์˜จ ์ปคํ”ผ๋ฅผ ์ข‹์•„ํ•ด์„œ JAVA๋กœ ์ •ํ•จ

·   ์ปดํŒŒ์ผ : ์†Œ์Šค -> ๊ธฐ๊ณ„์–ด๋กœ ๋ณ€ํ™˜ ํ•˜๋Š” ๊ณผ์ •

· ์ปดํŒŒ์ผ๋Ÿฌ : ์ปดํŒŒ์ผ ํ•ด์ฃผ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐ ์–ธ์–ด์˜ ์ „์šฉ ์ปดํŒŒ์ผ๋Ÿฌ ์กด์žฌ

· ์ž๋ฐ” ์–ธ์–ด ํƒ„์ƒ ๊ณ„๊ธฐ : ๊ธฐ์กด ์–ธ์–ด์˜ ํ”Œ๋žซํผ ์ข…์†์„ฑ์„ ๋ถ€์ˆ˜๊ณ  ํ”Œ๋žซํผ์— ๋…๋ฆฝ์ ์ธ ์–ธ์–ด๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•จ

· ํ”Œ๋žซํผ ์ข…์†์„ฑ : ํŠน์ • ํ”Œ๋žซํผ์— ์ข…์†๋˜์–ด ๋ณ€ํ™˜๋œ ์ฝ”๋“œ๋Š” ๋‹ค๋ฅธ ํ”Œ๋žซํผ์—์„œ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค. (๋”ฐ๋กœ ์ปดํŒŒ์ผํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ ์žฌ์ƒ์„ฑ)

· ๋ฐ”์ดํŠธ ์ฝ”๋“œ : ์ž๋ฐ” ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์†Œ์Šค ํ”„๋กœ๊ทธ๋žจ์„ ์ปดํŒŒ์ผํ•œ ์ผ์ข…์˜ ๊ธฐ๊ณ„์–ด

· ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฐฉ์‹ : ํ•œ ๋ช…๋ น์”ฉ ํ•ด์„๋˜์–ด ์‹คํ–‰๋˜๋Š” ๋ฐฉ์‹

· ์ž๋ฐ” ๊ฐ€์ƒ ๊ธฐ๊ณ„ (JVM) :  (ํ”Œ๋žซํผ์— ์ข…์†์ ) ํ”Œ๋žซํผ์— ์ ํ•ฉํ•˜๊ฒŒ ์„œ๋กœ ๋‹ค๋ฅด๊ฒŒ ๊ตฌํ˜„๋จ.

 ํด๋ž˜์Šค ํŒŒ์ผ ๋กœ๋”ฉ -> ๋ฐ”์ดํŠธ ์ฝ”๋“œ ์‹คํ–‰์‹œํ‚ด

· ํด๋ž˜์Šค ํŒŒ์ผ .class : ์ž๋ฐ” ์ปดํŒŒ์ผ๋Ÿฌ -> ์ž๋ฐ” ์†Œ์Šค ํ”„๋กœ๊ทธ๋žจ (์ปดํŒŒ์ผ) -> ๋ฐ”์ดํŠธ ์ฝ”๋“œ (์ƒ์„ฑ) -> ํด๋ž˜์Šค ํŒŒ์ผ (์ €์žฅ)

· C/C++ : ์ปดํŒŒ์ผํ•  ๋ชฉ์  ํŒŒ์ผ์„ ๋งํฌ์‹œ์ผœ ํ•˜๋‚˜์˜ ์‹คํ–‰ํŒŒ์ผ .exe ์ƒ์„ฑ -> cpu ๊ฐ€ ์‹คํ–‰

· ์ž๋ฐ”: ๋งํฌ ๊ณผ์ •์ด ์—†๊ณ , JVM ์ด .class ํŒŒ์ผ ์‹คํ–‰ -> .jar ํŒŒ์ผ ํ˜•ํƒœ๋กœ ๋ฐฐํฌ

· JDK : ์ž๋ฐ” ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋ฌด๋ฃŒ ๋ฐฐํฌํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด (๊ฐœ๋ฐœ๋„๊ตฌ + JRE ๋กœ ๊ตฌ์„ฑ)

· JRE : ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋ ๋•Œ ํ•„์š”ํ•œ ์†Œํ”„ํŠธ์›จ์–ด (์ž๋ฐ”API + JVM)

· API : application programming interface ๊ฐœ๋ฐœ์ž๋“ค์ด ์‚ฌ์šฉํ•˜๋„๋ก ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด๋‘” ์ž๋ฐ” ํด๋ž˜์Šค ์ง‘ํ•ฉ

· ์ž๋ฐ” ํŠน์ง•

- ํ”Œ๋žซํผ ๋…๋ฆฝ์„ฑ/ ๊ฐ์ฒด์ง€ํ–ฅ / ํด๋ž˜์Šค๋กœ ์บก์Šํ™” / ์†Œ์Šค์™€ ํด๋ž˜์Šค ํŒŒ์ผ /์‹คํ–‰์ฝ”๋“œ ๋ฐฐํฌ/ ํŒจํ‚ค์ง€ / ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ / ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜ / ์‹ค์‹œ๊ฐ„ ์‘์šฉ ์‹œ์Šคํ…œ ๋ถ€์ ํ•ฉ / ์•ˆ์ „ํ•จ / ์ž‘์„ฑ ์‰ฌ์›€ / ์‹คํ–‰์†๋„ ๊ฐœ์„ ์„ ์œ„ํ•œ JIT ์ปดํŒŒ์ผ๋Ÿฌ ์‚ฌ์šฉ