Краткая версия
Rust дает вам возможности низкоуровневого языка, такого как C, с гарантией безопасности памяти.
Длинная версия
Контрольные точки
В целом Rust дает очень хорошую производительность. Рассмотрим следующий наивный алгоритм проверки простоты:
def is_prime(n): if n < 2: return False else if n % 2 == 0: return n == 2 else: i = 3 while i^2 <= n: if n % i == 0: return False i += 2 return True
Когда реализовано на C и Rust и протестировано на всех целых числах до 10000003, мы получаем следующее:
Мы видим, что в этом конкретном тестовом примере Rust работает лишь немного медленнее, чем C. Фактически, Rust работает так же или быстрее, чем C, в пяти из десяти тестов The Computer Language Benchmark Game. Что касается использования памяти, Rust имеет тенденцию использовать больше памяти, но во многих случаях он сопоставим с C.
В частности, поскольку у Rust нет среды, которую нужно поддерживать во время выполнения, его объем памяти довольно мал. А поскольку он регулярно улучшается, мы можем ожидать, что производительность и объем памяти со временем только улучшатся.
Легкость использования
Сначала Rust чувствует себя неловко, но после развития беглости и понимания концепции владения кодирование на этом языке очень похоже на написание на любом знакомом низкоуровневом языке, таком как C или C ++. Однако набор пакетов, предоставляемых Cargo, позволяет пользователю очень быстро создавать надежные программы.
Безопасность
Rust - это безопасный для памяти язык; распространенные ошибки, возникающие в системном программировании, такие как висячие указатели, разыменование нулевых указателей и гонка данных, не могут возникать в Rust. Все это управляется без сборщика мусора за счет использования в нем типов параметров, его проверки заимствования и концепции право собственности.
Например, рассмотрим следующий код
fn main() { let val; { let temp = 5; val = &temp; } println!(“r: {}”, val); }
Когда val присваивается адресу памяти temp, областью действия которой является функция main (), появляется висячий указатель. Rust обнаруживает это во время компиляции:
Резюме
Независимо от того, интересуетесь ли вы встроенными, сетевыми или веб-приложениями, Rust предоставляет надежную среду для создания потрясающих инструментов. Созданный Mozilla, Rust в настоящее время представляет собой язык программирования с открытым исходным кодом, управляемый сообществом, который используется многими промышленными компаниями из-за его производительности, надежности и продуктивности. Одним из наиболее заметных аспектов Rust является его поддержка сообществом. Программисты на Rust даже дали себе прозвище: Rustaceans.
Рынок вакансий полон возможностей для разработчиков на Rust. Rust разработан для крупных и амбициозных программных проектов, таких как Servo, современный высокопроизводительный движок браузера, и он менее подвержен проблемам, которые обычно возникают в крупномасштабных проектах. Такие компании, как Mozilla (создатель Rust и Firefox), Samsung, Dropbox и Yelp, используют Rust для систем параллелизма, компонентов Javascript, компонентов Ruby и многого другого!