Rust
Статьи в секции
Rust libraries
Двоичные коды в Rust
Rust Build Tools
Command-line arguments
Closures and filters
Rust Standard Collections
Constant values
Cross-compiling of RUST code to different OS
Enums and match
Error handling in Rust
File reading in Rust, running system commands
Rust program flow control - if-else, loops
Generics in Rust
Rust Iterators
Rust Lifetimes
Rust modules cheat sheet
Rust ownership and reference rules
Calling Python from Rust
Rust regular expressions
Rust Performance Measurements
Rust &String and &str difference
Rust struct type
Rust Type-Driven Development
Rust Threads
Rust traits
Rust variables and compound variables
Аргументы за/против Rust
Плюсы
- Memory safety, высокая скорость приложений +самые быстрые в мире веб-фреймворки https://www.techempower.com/benchmarks/#hw=ph&test=fortune§ion=data-r22
- Высокая скорость вычислений для ML, Python переходит под капотом на Polars взамен Pandas - https://rongxin.me/substitute-pandas-with-polars-a-dataframe-module-rewritten-in-rust
- любимый язык StackOverflow уже 8+ лет https://survey.stackoverflow.co/2024/technology/#admired-and-desired
- Ядро Linux, ядро Android, ядро Windows, ядро контейнеров переезжает с Golang
- Проект переписывания всех главных системных утилит Linux на Rust - https://github.com/TaKO8Ki/awesome-alternatives-in-rust
- Fearless Concurrency
- Диалог с компилятором
- Передача переменных в функции максимально чётко
- нет void / null https://www.youtube.com/watch?v=ybrQvs4x0Ps
- мощная типизация
- traits вместо классов и наследования
- Единый сборщик Cargo
- На выходе единый бинарник как в Golang
- Нативная поддержка WebAssembly (за счёт отсутствия сборщика мусора), первый язык
- Rust главный язык надёжной разработки финансовых инструментов для технологий Blockchain
Минусы
- Его сложно учить, много синтаксиса
- Перестроение мозгов: дуализм результата (enums Result), метки lifecycle, traits
- Язык молодой, экосистема беднее чем у Python, тем более чем у C++, сообщество меньше
Сравнения
- Golang, хороший-плохой-злой: https://habr.com/ru/companies/vk/articles/353790/
- Ощущения от Golang после Rust: https://habr.com/ru/articles/980752/
Видеокурсы
- Курс Алексея Кладова - https://youtu.be/Oy_VYovfWyo?si=WRCHJv_0cZYitGao
Задачи по программированию
- https://www.codewars.com/
- https://leetcode.com/
- Свежая статья по теме - https://habr.com/ru/articles/726366/
- Интерактивные задачи на ветвления в Git - https://learngitbranching.js.org/
Установка с Rustup
После установки Rust через rustup можно переключать версии компилятора:
После установки следует установить доп. инструменты для удобства работы.