[Rust] Rust 프로그래밍 언어
![[Rust] Rust 프로그래밍 언어](https://cdn.hashnode.com/res/hashnode/image/stock/unsplash/lm0NmFbypcc/upload/146dbc65df0035eb32cb03b8d7d64748.jpeg)
Hansei Cyber Security High Schoool (2022/3/2 ~ 2025/2/10)
Rust 프로그래밍 언어란?
Rust 프로그래밍 언어는 모질라 재단에서 2010년 7월 7일에 발표한 언어입니다.
성능과 안전성에 중점을 둔 프로그래밍 언어로 Garbage Collection(GC) 없이 메모리 안전성을 제공하는 대표적인 언어입니다.
성능이 우선되는 모든 곳에서 어느정도의 파이를 조금씩 가져가리라 기대되는 언어이기도 합니다.
(C++로 만들거였는데 이젠 Rust로 만들어보자 느낌)
러스트 프로그래밍 언어의 장점
컴파일 되면 보통은 잘 동작함. 특히 CLI 도구나 데이터 처리, 알고리즘 작성시 유용합니다.
별다른 노력없이 좋은 퍼포먼스를 보여줌. C#보다 1.5~2.5배 정도 빠른 경험이 있습니다.
Enum이 잘 구현되어 있습니다.
Rust analyzer 덕분에 IDE 사용성이 크게 개선됩니다.
Trait 시스템이 잘 되어 있음. Orphan rule만 좀 완화된다면 훨씬 활용도가 높아질 것 입니다.
러스트 프로그래밍 언어의 단점
학습 곡선: 러스트는 C++과 같은 다른 언어에 비해 학습 곡선이 가파른 편입니다. 특히, 메모리 안전성을 보장하기 위한 러스트의 소유권 시스템은 이해하기 어려울 수 있습니다.
어려운 생태계: 러스트는 비교적 새로운 언어이기 때문에, 다른 언어에 비해 라이브러리와 도구의 생태계가 아직 완성되지 않았습니다.
컴파일 시간: 러스트 코드는 C++ 코드보다 컴파일하는데 더 많은 시간이 걸릴 수 있습니다.
Rust 프로그래밍 언어가 적합한 경우
안정성과 성능이 중요한 시스템 프로그래밍
메모리 안전성이 중요한 프로그램 개발
현대적인 프로그래밍 언어를 배우고 싶은 경우
Rust 프로그래밍 언어가 적합하지 않은 경우
빠르게 프로토타입을 만들거나 개발해야 하는 경우
다양한 라이브러리와 도구가 필요한 경우
학습 곡선이 가파른 언어를 배우고 싶지 않은 경우
Rust 프로그래밍 언어의 개인적 견해
Rust는 '익숙'함보다 '성숙'함이 필요하다.