Придёт ли Rust на смену C и C++?

12 января 2021, 13:57
0

Придёт ли Rust на смену C и C++?

Rust — молодой и амбициозный язык программирования, который часто позиционируют как замену С и С++. Мы решили разобраться, близок ли конец C и каковы возможности языка.
Придёт ли Rust на смену C и C++?

Rust начинался как сторонний проект Грэйдона Хора, сотрудника Mozilla. Спустя 3 года компания официально подключилась к развитию технологии, и в 2012 году была выпущена первая версия, в 2015 — рабочая Rust 1.0. За короткий период существования языка команда Evrone начала применять его в масштабных проектах для разных индустрий и накопила большую экспертизу. Рассказываем, какими особенностями обладает молодой язык и что ждёт Rust в будущем.

Особенности Rust

Разработчики Rust стремились создать более производительный и безопасный язык, который бы закрывал недостатки C и C++.

Особенности языка:

  • Мощный синтаксический анализатор помогает избежать проблем в работе с многопоточностью и утечек памяти.

  • Если написанная на Rust программа небезопасна, она не сможет пройти стадию компиляции. В случае ошибки автоматически будут предложены варианты решения.

  • Компилятор Rust — многофункциональный инструмент, он включает в себя менеджер пакетов, инструменты для тестирования и генерации документации.

  • В Rust отсутствует сборщик мусора, а концепция владения создаёт условия для безопасной работы с памятью. Такая система исключает ошибки сегментации.

  • В случае ручного управления памятью разработчики используют абстракции, что значительно облегчает работу.

  • Язык поддерживает строгую статическую типизацию.

Из недостатков разработчики упоминают слишком строгий компилятор, отсутствие наследования и классов, которые обычно встречаются в объектно-ориентированном программировании.

Сферы применения Rust

Rust получил широкое распространение за счёт четырех характеристик, язык поддерживает процедурное, параллельное, функциональное и объектно-ориентированное программирование.

Язык применяется при разработке программного обеспечения, веб-серверов, блокчейн-продуктов, браузерных движков, веб-приложений и инфраструктуры. В экспериментальном формате Rust используется даже в машинном обучении.

Примеры продуктов, разработанных на Rust:

  • Mozilla активно применяет Rust в работе над своими продуктами, один из примеров — браузерный движок Servo.

  • Больше 98% блокчейн-экосистемы Polkadot написано на Rust.

  • Технология виртуализации Firecracker, созданная для управления окружениями, работающими на бессерверной модели.

  • Coursera выбрала Rust для написания инструментов для оркестрации контейнеров.

  • Хостинг Dropbox мигрировал часть своей инфраструктуры на компоненты на Rust.

Будущее языка

У Rust есть большой потенциал, язык активно развивается и стремится предложить решение недочётов C, C++ и других языков. Rust уже занимает лидирующие позиции на Stack Overflow и вызывает большой интерес у разработчиков. Заменит ли он языки C, мы узнаем только через 10 или 20 лет.

_________________

Команда Evrone использовала Rust в разработке CRM-системы для крупной ресторанной сети, нам удалось написать высоконагруженный микросервис, который отвечает за распространение публичной информации о заведениях. Также мы создали Vexor, инструмент для непрерывной интеграции. На Rust написаны системы диспетчеризации задач и логирования, агент для управления изоляцией задач, функция автоматической закупки мощностей.

Наш опыт подсказывает, что интерес и востребованность Rust будут только расти. Если вы хотите ощутить преимущества Rust в работе своего проекта, напишите нам.

Ответить?
Введите капчу