Rust 란?
Rust
모질라 리서치에서 개발한 범용 프로그래밍 언어로써 안정성을 중점으로 개발된 언어
2006년 개발자 그레이든 호아레의 개인 프로젝트로 시작되어, 2009년 모질라의 지원으로 현재까지 이어져오고 있다
인터넷에서 실행되는 서버 및 클라이언트 프로그램을 개발하는데 적합한 언어를 목표로 설계되었으며,
C++과 비슷한 성능 수준을 목표로 한다.
2012년 1월 최초 알파버전 0.1이 발표되었다
모질라의 정책에 따라 오픈소스로 개발되고 있어 많은 커뮤니티 및 개발자로부터 피드백을 받으며 설장하고 있다
- 목표
C와 C++을 대체하기
Rust의 특징
- 형식 안전
컴파일러는 잘못된 형식의 변수에 어떤 작업도 적용되지 않게 보장한다
- 메모리 안전
Rust 포인터(참조라고도 함)는 항상 유효만 메모리를 참조한다
- 데이터 경합 없음
Rust의 바로우 검사기는 프로그램의 여러 부분이 동일한 값을 동시에 변경할 수 없도록 하여 스레드 보안을 보장한다
- 무비용 추출
Rust를 사용하면 최소한의 성능 비용으로 또는 성능 비용 없이 반복, 인서페이스, 함수 프로그래밍 같은 상위 수준의 개념을 사용할 수 있다
또한 추상화는 기본 코드를 직접 작성하는 것처럼 수행된다
- 최소 런타임
Rust에는 최소한의 선택적 런타임이 있다
메모리를 효율적으로 관리할 수 있도록 이 언어에는 가비지 컬렉터도 없고, 이러한 측면에서 C 및 C++과 가장 유사한 언어이다
- 운영체제 미설치 대상
Rust는 임베디드 및 운영체제 미설치 프로그래밍을 대상으로 지정하여 운영체제 커널 또는 디바이스 드라이버 작성에 적합하도록 한다
Rust의 구조
- 크레이트
모듈의 집합.
모듈들을 하나로 합쳐 컴파일된 바이너리 혹은 라이브러리의 단위
- 모듈
크레이트를 구성하고 있는 집합
- 경로
모듈에 접근하는 방식
Cargo
Rust 언어로 쓰여진 러스트 소스코드 컴파일러
rustc를 포함하는 빌드 시스템이며, 러스트의 패키지 매니저 역할을 수행
.Rust를 사용하는 서비스
- 파이어 폭스
- 매직 포켓 (드롭 박스의 파일 스토리지 시스템)
- 서보 (모질라의 새 병렬 렌더링 엔진)
- OpenDNS
- 디스코드
Reference
[Rust] 1. Rust 란?
러스트(Rust) 란? 러스트(Rust) 는 모질라 리서치에서 개발한 범용 프로그래밍 언어로써 안정성을 중점으로 개발된 언어이다. 2006년 개발자 그레이든 호아레의 개인 프로젝트로 시작되어, 2009년 모
copynull.tistory.com
Rust (1) - 개념과 구조
제가 Node.js를 많이 해서 이거랑 비교 하면서 좀 하겠습니다. Rust는 2010년 모질라 재단에서 만들어 발표 했다가 2021년 부터 러스트 재단으로 파생되어 관리되어오고 있다. Rust는 컴파일러 및 인터
wonlf.tistory.com