[Kotlin] ์ฝ”ํ‹€๋ฆฐ์ด๋ž€?

KOTLIN

๊ฐœ์š” 

  1. Kotlin์— ๋Œ€ํ•œ ๋ฐฐ๊ฒฝ์ง€์‹์„ ์ดํ•ดํ•œ๋‹ค.
  2. Kotlin์˜ ์žฅ์ ์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค. 
  3. Kotlin์˜ ์ „๋ฐ˜์ ์ธ ์•„์ด๋””์–ด์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค.

 

Kotlin


์ฝ”ํ‹€๋ฆฐ์€ IntelliJ IDEA๋ผ๋Š” ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์œผ๋กœ ์œ ๋ช…ํ•œ JetBrains์—์„œ ๊ฐœ๋ฐœํ•œ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๊ตฌ๊ธ€์˜ ์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค๋„ IntelliJ IDEA๊ธฐ๋ฐ˜์ด๋ฉฐ ์ฝ”ํ‹€๋ฆฐ ์–ธ์–ด๋ฅผ ๊ณต์‹์ ์œผ๋กœ ์ง€์›ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ฝ”ํ‹€๋ฆฐ์€ JVM,JS,Native ์ƒ์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, JVM ๊ธฐ๋ฐ˜์˜ ์ฝ”ํ‹€๋ฆฐ์€ ์ž๋ฐ” ์—ํ”Œ๋ฆฌ์ผ€์ด์…˜, ์•ˆ๋“œ๋กœ์ด๋“œ ์—ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฉฐ JS ๊ธฐ๋ฐ˜์˜ ์ฝ”ํ‹€๋ฆฐ์€ ํ’€์Šคํƒ ์›น ๊ฐœ๋ฐœ, Native ๊ธฐ๋ฐ˜์˜ ์ฝ”ํ‹€๋ฆฐ์€ LLVM ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ํ†ตํ•ด ํŠน์ • ํ”Œ๋žซํผ์„ ํƒ€๊นƒ์œผ๋กœ ํ•œ ๊ธฐ๊ณ„์˜ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

์ฝ”ํ‹€๋ฆฐ์˜ ์žฅ์  


  • ์ž๋ฃŒํ˜• ์˜ค๋ฅ˜๋ฅผ ๋ฏธ๋ฆฌ ์žก์„ ์ˆ˜ ์žˆ๋Š” ์ •์  ์–ธ์–ด์ž…๋‹ˆ๋‹ค.
์ฝ”ํ‹€๋ฆฐ์€ ํ”„๋กœ๊ทธ๋žจ์ด ์ปดํŒŒ์ผ๋  ๋•Œ ์ž๋ฃŒํ˜•์„ ๊ฒ€์‚ฌํ•˜์—ฌ ํ™•์ •ํ•˜๋Š” ์ •์  ์–ธ์–ด์ž…๋‹ˆ๋‹ค. 

 

  • ๋„ ํฌ์ธํ„ฐ ์˜ˆ์™ธ๋กœ ์ธํ•œ ํ”„๋กœ๊ทธ๋žจ์˜ ์ค‘๋‹จ์„ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
๊ฐœ๋ฐœ์ž์—๊ฒŒ NPE์— ๋Œ€ํ•œ ๋ฌธ์ œ๋Š” ๊ฝค๋‚˜ ๊ณจ์น˜ ์•„ํ”ˆ ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ฝ”ํ‹€๋ฆฐ์€ ์ด๋Ÿฌํ•œ ๊ณจ์น˜์•„ํ”ˆ NPE๋ฌธ์ œ๋ฅผ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

  • ์•„์ฃผ ๊ฐ„๊ฒฐํ•˜๊ณ  ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค. 
์ฝ”ํ‹€๋ฆฐ์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ƒ๋žต๋œ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•œ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ์–ธ์–ด๋“ค์— ๋น„ํ•ด ์ข€ ๋” ์šฐ์•„ํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

  • ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด ๋ชจ๋‘ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
ํ•จ์ˆ˜๋ฅผ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๊ฑฐ๋‚˜ ํ•จ์ˆ˜๋ฅผ ๋‹ค๋ฅธ ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋„˜๊ธธ ์ˆ˜ ์žˆ๋Š” ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ํด๋ž˜์Šค์™€ ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ๋‘˜ ๋‹ค ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

  • ์„ธ๋ฏธํด๋ก ์„ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ๋Š˜ ๋ถ™์ด๋˜ ์„ธ๋ฏธํด๋ก ์„ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

  • Java, ์•ˆ๋“œ๋กœ์ด๋“œ์™€ ์™„๋ฒฝํ•œ ํ˜ธํ™˜์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 
Kotlin์€ ๊ฐœ๋ฐœ์ฝ”๋“œ๊ฐ€ Javaํด๋ž˜์Šค๋กœ ๋นŒ๋“œ๋˜์–ด JVM์—์„œ ๋™์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ˜ธํ™˜์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 

 

Reference 

Do it! ์ฝ”ํ‹€๋ฆฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ์ด์ง€์Šค ํผ๋ธ”๋ฆฌ์‹ฑ - ํ™ฉ์˜๋• ์ง€์Œ 

https://smilek1225.tistory.com/7

 

1 | ์ฝ”ํ‹€๋ฆฐ(Kotlin) ์†Œ๊ฐœ์™€ ํŠน์ง•

์•ˆ๋…•ํ•˜์„ธ์š” ์ด๋ฒˆ ํฌ์ŠคํŠธ ์ „๊นŒ์ง€๋Š” ํ•ญ์ƒ ์ด๋ก ์„ ์ •๋ฆฌํ•˜๋Š” '๊ณตํ†ต ๊ธฐ์ดˆ'๊ธ€๋งŒ ์ž‘์„ฑํ–ˆ๋Š”๋ฐ ์ด ๊ธ€์„ ์“ฐ๋ฉด์„œ ๊ฐœ์ธ๊ณต๋ถ€์™€ ์ •๋ณด๊ณต์œ  ๋‘๊ฐ€์ง€ ํšจ๊ณผ๋ฅผ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹คใ…Žใ…Ž ์˜ค๋Š˜๊นŒ์ง€๋Š” ์†Œ๊ฐœ์ด๊ณ  ๋‹ค์Œ ์ฝ”ํ‹€๋ฆฐ ํฌ์ŠคํŠธ๋ถ€ํ„ฐ ์ฝ”๋”ฉ๊ณผ..

smilek1225.tistory.com