Rust์˜ ์ด์ 

๋Ÿฌ์ŠคํŠธ๋งŒ์˜ ๋…ํŠนํ•œ ์„ธ์ผ์ฆˆ ํฌ์ธํŠธ(์žฅ์ ):

  • ์ปดํŒŒ์ผ ์‹œ๊ฐ„ ๋ฉ”๋ชจ๋ฆฌ ์•ˆ์ „ - ๋ฉ”๋ชจ๋ฆฌ ๋ฒ„๊ทธ์˜ ์ „์ฒด ํด๋ž˜์Šค๊ฐ€ ์ปดํŒŒ์ผ ์‹œ๊ฐ„์— ๋ฐฉ์ง€๋ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š๋Š” ๋ณ€์ˆ˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
    • ๋ฉ”๋ชจ๋ฆฌ ์ด์ค‘ ํ•ด์ œ๊ฐ€ ์›์ฒœ์ ์œผ๋กœ ๋ถˆ๊ฐ€๋Šฅ ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ฉ”๋ชจ๋ฆฌ ํ•ด์ œ ํ›„ ์‚ฌ์šฉ์ด ์›์ฒœ์ ์œผ๋กœ ๋ถˆ๊ฐ€๋Šฅ ํ•ฉ๋‹ˆ๋‹ค.
    • NULLํฌ์ธํ„ฐ๋Š” ์—†์Šต๋‹ˆ๋‹ค.
    • ๋ฎคํ…์Šค๋ฅผ ์ž ๊ถˆ ๋†“๊ณ  ์—ฌ๋Š” ๊ฒƒ์„ ์žŠ๋Š” ์‹ค์ˆ˜๋ฅผ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
    • ์Šค๋ ˆ๋“œ๊ฐ„ ๋ฐ์ดํ„ฐ ๋ ˆ์ด์Šค๋ฅผ ๋ง‰์•„์ค๋‹ˆ๋‹ค.
    • ๋ฐ˜๋ณต์ž๊ฐ€ ๊ฐ‘์ž๊ธฐ ๋ฌดํšจํ™” ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
  • ์ •์˜๋˜์ง€ ์•Š์€ ๋Ÿฐํƒ€์ž„ ๋™์ž‘ ์—†์Œ - Rust ๋ฌธ์ด ์‹คํ–‰ํ•˜๋Š” ์ž‘์—…์€ ์ง€์ •๋˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ๋‘์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    • ๋ฐฐ์—ด ์ ‘๊ทผ์‹œ ๊ฒฝ๊ณ„ ์ฒดํฌ.
    • ์ •์ˆ˜ํ˜• ํƒ€์ž…์˜ ๋ณ€์ˆ˜์—์„œ ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ ๋ฐœ์ƒ์‹œ ๋™์ž‘์ด ์ž˜ ์ •์˜๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ตœ์‹  ์–ธ์–ด ๊ธฐ๋Šฅ - ์ƒ์œ„ ์ˆ˜์ค€ ์–ธ์–ด๋งŒํผ ํ‘œํ˜„๋ ฅ์ด ๋›ฐ์–ด๋‚˜๊ณ  ์ธ์ฒด๊ณตํ•™์ ์ž…๋‹ˆ๋‹ค.

    • ์—ด๊ฑฐํ˜•๊ณผ ํŒจํ„ด ๋งค์นญ.
    • ์ œ๋„ค๋ฆญ.
    • FFI ๋Ÿฐํƒ€์ž„ ์˜ค๋ฒ„ํ—ค๋“œ ์—†์Œ.
    • ๋น„์šฉ์ด ๋“ค์ง€ ์•Š๋Š” ์ถ”์ƒํ™”.
    • ์นœ์ ˆํ•œ ์ปดํŒŒ์ผ๋Ÿฌ ์˜ค๋ฅ˜๋ฉ”์‹œ์ง€.
    • ๋‚ด์žฅ ์ข…์†์„ฑ ๊ด€๋ฆฌ์ž.
    • ๋‚ด์žฅ ํ…Œ์ŠคํŠธ ์ง€์›.
    • LSP (Language Server Protocol, ์–ธ์–ด ์„œ๋ฒ„ ํ”„๋กœํ† ์ฝœ) ์ง€์›์ด ์ž˜๋˜์–ด ์žˆ์Œ.
This slide should take about 3 minutes.

์—ฌ๊ธฐ์—์„œ ๋งŽ์€ ์‹œ๊ฐ„์„ ๋ณด๋‚ด์ง€ ๋งˆ์„ธ์š”. ์ด ๋ชจ๋“  ์‚ฌํ•ญ์€ ๋‚˜์ค‘์— ์ž์„ธํžˆ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

์ˆ˜๊ฐ•์ƒ๋“ค์—๊ฒŒ ์–ด๋–ค ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”์ง€ ๋ฌผ์–ด๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์–ด๋–ค ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š๋ƒ์— ๋”ฐ๋ผ ๋Ÿฌ์ŠคํŠธ์—์„œ ์–ด๋–ค ์ ์„ ๊ฐ•์กฐํ•ด์•ผ ํ• ์ง€๋ฅผ ๊ณ ๋ฏผํ•ด ๋ณด์„ธ์š”:

  • C/C++: ๋Ÿฌ์ŠคํŠธ๋Š” โ€™๋นŒ๋ฆผโ€™๊ฒ€์‚ฌ๊ธฐ๋ฅผ ํ†ตํ•ด์„œ ์ˆ˜ํ–‰์ค‘์— ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์—๋Ÿฌ๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ๋Ÿฌ์ŠคํŠธ๋Š” C์™€ C++๊ณผ ๋น„์Šทํ•œ ์ˆ˜์ค€์˜ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ฃผ๋ฉด์„œ๋„, ๊ทธ ์–ธ์–ด๋“ค์—์„œ ์ข…์ข… ๋ฐœ์ƒํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ จ ์˜ค๋ฅ˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ํŒจํ„ด ๋งค์นญ์ด๋‚˜, ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ์ข…์†์„ฑ ๊ด€๋ฆฌ์™€ ๊ฐ™์€ ํ˜„๋Œ€์ ์ธ ์–ธ์–ด์˜ ๊ธฐ๋Šฅ๋“ค์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • Java, Go, Python, JavaScript: ์ด ์–ธ์–ด๋“ค๊ณผ ๋™์ผํ•œ ๋ฉ”๋ชจ๋ฆฌ ์•ˆ์ •์„ฑ๊ณผ ํ•จ๊ป˜, โ€™ํ•˜์ด๋ ˆ๋ฒจโ€™์–ธ์–ด์˜ ๋Š๋‚Œ์„ ๋Š๋‚„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์— ๋”ํ•ด, ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ๊ฐ€ ์—†๋Š” C/C++์™€ ์œ ์‚ฌํ•œ ์ˆ˜์ค€์˜ ๋น ๋ฅด๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์„ฑ๋Šฅ์„ ๊ธฐ๋Œ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ €์ˆ˜์ค€ ํ•˜๋“œ์›จ์–ด๋ฅผ ๋‹ค๋ฃจ๋Š” ์ฝ”๋“œ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.