2015년 버전 1.0이 발표된 프로그램언어인 'Rust'에 대해 WiKi를 찾아보면,
기본 언어들에 비해 아래와 같은 특징들을 알수 있다.
- 인터넷 기반 서버 및 클라이언트 프로그램을 개발하는데 적합한 언어를 목표로 설계되었다.
- 이 목표에 따라 러스트는 안전성과 병행 프로그래밍, 그리고 메모리 관리의 직접 제어에 초점을 맞추고 있다.
- 또한 성능 면에서는 C++와 비슷한 수준을 목표로 하고 있다.
- 메모리 오류를 발생시키지 않도록 설계되었다. 러스트는 널 포인터나 초기화되지 않은 포인터가 존재하지 않도록 강제하고 있다. 모든 변수는 초기값을 가지고 할당되며, 해제된 포인터에 접근하는 코드는 컴파일러가 미리 감지하여 컴파일 오류를 일으킨다.
사실 러스트를 알게 된 것은 아래 기사처럼, 기존 C, C++ 코드를 러스트로 전환한다는 내용때문이다.
오랜동안 메모리 문제는 C, C++ 개발자들을 괴롭혀??? 왔다. (물론 보안 문제가 가장 큰 것이지만...)
그리고 이런 문제들을 해결하기 위한 대안으로 러스트 사용이 검토되고 있다고 알려져 왔다.
러스트는 C, C++ 등의 기계어를 대체하는 언어로 주목받고 있다. C 언어에서 발생하는 보안 결함을 없애고, 메모리 안정성을 높였다. 러스트는 C 수준의 성능과 자원효율성을 가지면서, 자바처럼 메모리 안정성을 높인 언어로 묘사된다.
최근에는 구글을 비롯해 마이크로소프트, 아마존웹서비스(AWS) 등 빅테크는 보안 강화를 위해 인프라 및 시스템 프로그래밍 분야에서 C, C++를 러스트로 전환하는 추세다. 하지만 크롬 같은 대규모 코드베이스는 러스트로 단기간에 전환하는 것은 불가능해 해당 방안을 우선 적용하고 있다고 구글 크롬 보안팀은 밝혔다.
https://zdnet.co.kr/view/?no=20220222132457
https://zdnet.co.kr/view/?no=20220530020434
'1. SW 개발 & IT 트렌드' 카테고리의 다른 글
[기사] 코딩 없이 코딩…노코드, 개발 지형 바꾼다 (0) | 2022.05.30 |
---|---|
아파치 카프카(Apache Kafka) - 이벤트 스트리밍 플랫폼 (0) | 2022.05.30 |
마이크로소프트, 연례 최대 개발자대회 ‘빌드 2022’ 25일 개최 (0) | 2022.05.29 |
Azure Container Apps - 쿠버네티스를 위한 서버리스 컨테이너 서비스 (0) | 2022.05.29 |
AI 기반 코딩 어시스턴트 ‘깃허브 코파일럿(GitHub Copilot)’ (0) | 2022.05.29 |
댓글