Post

Java๋ž€?

๐ŸงJava๋ž€?

์ž๋ฐ”๋Š” 1996๋…„ 1์›”์— ์„ธ์ƒ์— ๋‚˜์˜จ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Object Oriented Programming, OOP) ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

์šด์˜์ฒด์ œ์— ๋…๋ฆฝ์ ์œผ๋กœ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์—, Write Once, Run Anywhere์ด๋ผ๋Š” ์Šฌ๋กœ๊ฑด์„ ๋‚ด์„ธ์›€

๋‹ค์–‘ํ•œ ์šด์˜์ฒด์ œ๊ฐ€ ๊ณต์กดํ•˜๋Š” ์›น ํ™˜๊ฒฝ์— ์ ํ•ฉํ•œ ์–ธ์–ด๋กœ์„œ, ํ˜„์žฌ๊นŒ์ง€๋„ ์ „ ์„ธ๊ณ„์—์„œ ๋งŽ์ด ์“ฐ์ด๋Š” ์ธ๊ธฐ ์žˆ๋Š” ์–ธ์–ด์ž„

๐Ÿ˜Java์˜ ํŠน์ง•

1. ์šด์˜์ฒด์ œ์— ๋…๋ฆฝ์ 

ํŠน์ • ์šด์˜ ์ฒด์ œ๋‚˜ ํ•˜๋“œ์›จ์–ด์— ์ข…์†๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋กœ์จ ๋™์ผํ•œ Java ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์—์„œ ์‹คํ–‰ ๊ฐ€๋Šฅ

JRE(Java Runtime Environment: JVM(์ž๋ฐ” ๊ฐ€์ƒ๋จธ์‹ ) + ํ‘œ์ค€ ํด๋ž˜์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ)๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ๋Š”

๋ชจ๋“  ์šด์˜์ฒด์ œ์—์„œ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ๋งŒ๋“ค์–ด์กŒ์Šต๋‹ˆ๋‹ค.

2. ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ์–ด(Object Oriented Programming, OOP)

์ž๋ฐ”๋Š” ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐœ๋…์„ ์‚ฌ์šฉํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ชจ๋“  ๊ธฐ๋Šฅ์€ ๊ฐ์ฒด๋กœ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด ์ง€ํ–ฅ์ ์œผ๋กœ ์„ค๊ณ„๋œ ํ”„๋กœ๊ทธ๋žจ์€ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์‰ฝ๊ณ  ํ™•์žฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค

3. ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ง€์›

์ž๋ฐ” 8๋ฒ„์ „๋ถ€ํ„ฐ ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ง€์›ํ•˜๋Š” ๋ฌธ๋ฒ•์ธ ๋žŒ๋‹ค์‹๊ณผ ์ŠคํŠธ๋ฆผ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ปฌ๋ ‰์…˜์˜ ์š”์†Œ๋ฅผ ํ•„ํ„ฐ๋ง, ๋งคํ•‘, ์ง‘๊ณ„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์‰ฌ์›Œ์ง€๊ณ  ์ฝ”๋“œ๊ฐ€ ๊ฐ„๊ฒฐํ•ด์ง€๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

4. ์ž๋™ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ(Garbage Collection)

์ž๋ฐ”๋Š” ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ(Garbage Collector)๋ฅผ ์‹คํ–‰์‹œ์ผœ ์ž๋™์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ˆ˜๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž๋Š” ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์ˆ˜๊ณ ๋ฅผ ๋œ๊ณ  ํ•ต์‹ฌ ์ฝ”๋“œ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

5. ๋‹ค์ค‘ ์Šค๋ ˆ๋”ฉ ์ง€์›

Java๋Š” ๋‹ค์ค‘ ์Šค๋ ˆ๋“œ๋ฅผ ์ง€์›ํ•˜๋ฏ€๋กœ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ๋ฐ ๋™์‹œ์„ฑ ์ž‘์—…์„ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

6. ํ’๋ถ€ํ•œ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Java์—๋Š” ๋‹ค์–‘ํ•œ ๊ธฐ๋ณธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ API๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์–ด, ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค.

7. ๋ณด์•ˆ

Java๋Š” ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•œ ์„ค๊ณ„๋กœ ์•Œ๋ ค์ ธ ์žˆ์œผ๋ฉฐ, ์•…์˜์ ์ธ ์ฝ”๋“œ ์‹คํ–‰์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ์ œ๊ณต

8. ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์–ธ์–ด

Java๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์†Œํ”„ํŠธ์›จ์–ด, ์›น ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ, ๋ชจ๋ฐ”์ผ ์•ฑ ๋“ฑ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋ฉฐ, Android ํ”Œ๋žซํผ์—์„œ๋„ ์ฃผ์š” ์–ธ์–ด๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

This post is licensed under CC BY 4.0 by the author.