@poslannikD
Java/C/C++ Programmer

Каков статус языка Rust в данный момент?

Поделитесь информацией пожалуйста!
Собственно развивается ли раст и не планируют ли его прикрыть и забросить?
Какие результаты в продвижении этого языка достигнуты?(часто ли его выбирают для новых проектов, есть ли гуи и веб фреймворки заточенные чисто под раст)
Сложились ли best practice в написании кода?

UPD
Насколько удобно работать с базами данных?
Есть ли движение в сфере микроконтроллеров?

UDP 2
Благодарю всех кто участвовал в обсуждении, спасибо вам большое!
  • Вопрос задан
  • 5548 просмотров
Решения вопроса 2
@freecoder_xx
Rust развивается стабильно, новые возможности и исправления вводятся с каждым релизом раз в 6 недель. Замеченные баги тоже исправляются оперативно в нерегулярных минорных релизах. Иногда такая динамика развития даже может служить препятствием: многие "живые" библиотеки требуют новой версии компилятора, но не всякая компания способна быстро обновлять его на своих проектах.

Инфроструктура вокруг Rust хотя и развивается, все равно еще остается сырой. Многие библиотеки, хотя и работают уже достаточно стабильно, все равно в реальном использовании требуют небольших доработок. Если вы готовы форкать на GitHub такие библиотеки и слегка дорабатывать под свои нужды, то я думаю у вас больше никаких особых проблем с использованием Rust в боевых проектах возникнуть не должно.

Что касается веба - вот тут есть список актуальных компонентов: www.arewewebyet.org

Какого-то единого сборника лучших практик использования Rust, насколько я знаю, пока нет. Много полезных советов есть в официальной документации (в так называемых Книгах), а также разбросано по разным отдельным статьям. Однако, существуют списки полезных статей, которые помогут найти среди них нужную. Например эти:
https://github.com/ctjhoa/rust-learning
https://github.com/brson/rust-anthology/blob/maste...

В новых проектах Rust используется, и пока тенденция идет на расширение. Вот на этой странице вы можете посмотреть, какие компании используют Rust сейчас и для чего: https://www.rust-lang.org/en-US/friends.html

Итак, если вы планируете использовать Rust в производстве, готовьтесь вот к чему:
  1. Довольно высокий порог входа в язык. Тут нет особой сложности, просто потребуется практика на языке и поначалу время на следование советам компилятора по устранению постоянно возникающих ошибок компиляции.
  2. Достаточно частые обновления компилятора по добавлению новых возможностей в язык. Это может приводить к тому, что нужная вам библиотека будет требовать свежую версию компилятора.
  3. Сыроватые библиотки. Вероятно, вам придется их слегка дорабатывать под себя.
  4. Rust упрощает сложное, но усложняет простое. Для совсем простых проектов, не требующих высокой производительности и серьезных доработок в будущем, возможно, Rust будет не лучшим выбором.
Но что вы получите от использования Rust?
  1. Высокую производительность программ, автоматическое управление памятью без сборщика мусора.
  2. Высокую надежность и защищенность программ, устранение большого количества потенциальных проблем на этапе компиляции.
  3. Достаточно легкий и безопасный процесс рефакторинга и доработки программ, благодаря развитой системе типов.
  4. Развитую систему управления зависимостями проекта.
  5. Действительно хороший универсальный инструмент: Rust подойдет и для прототипирования, и для разработки, причем для любого типа программ (утилиты, настольные приложения, веб-приложения, мобильные приложения, встраиваемые системы). Хорошая поддержка пока еще есть не для всего, но на перспективу - это большой плюс.
Ответ написан
@snuk182
Rust развивается основательно. Не семимильными шагами, потому что каждый шаг согласовывается с сообществом и ресурсами на его воплощение, но достаточно быстро, и крупных жалоб пока нет (кроме кривой обучения, но это субъективно, главное понять принцип владения данными). Best Practices есть. Для новых коммерческих проектов его выбирают в основном в отрасли блокчейна и специальных вебсервисов с быстрым откликом. Веб фреймворков россыпь, пока лидируют Actix и Rocket. Десктопного гуя стабильного нет, пользуются биндами к gtk.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@beduin01
Крайне сложно представить себе реальный проект в котором писать Rust было бы экономически оправдано. Вся структура языка заточена на то, чтобы вынуждать человека указывать достаточно низкоуровневые подробности не тогда, когда это действительно нужно, а ПОСТОЯННО. Исключение где Rust может быть реально полезен могут составлять только Embedded и hard real-time системы. Однако это капля в море разрабатываемого софта. На Rust нельзя написать ни одной программы, не имея хорошего понимания lifetime & ownership. Это автоматически делает его очень сложным. Так же стоит отметить очень свобразный апострофо-кавычечный синтаксис Rust значительно усложняющий написание кода.

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

Войдите, чтобы написать ответ

Похожие вопросы