Rust
2.03K subscribers
122 photos
86 videos
2 files
164 links
Полезный контент по программированию на Rust
Download Telegram
Rust Lang Уроки

Начало работы с языком программирования Rust & Visual Studio Code. Debugging & unit tests
Переменные и типы данных в Rust
Арифметические операции и операции сравнения. Язык Rust
Логические операции и конструкция if...else. Язык Rust
Почему Rust? ❤️ Конструкция match
Функции. Язык Rust
Структуры. Язык Rust. Анджелина и Бред вместе ❤️ благодаря структурам
Tuples | кортежи. Структуры-tuples. Язык Rust
Массивы. Язык программирования Rust.
Циклы loop | while | for. Язык Rust.

источник

👉 @rust_lib
👍51
Rust как часть микросервисной архитектуры

Как использовать Rust в веб-приложении полного цикла? В этой статье расскажем об альтернативном способе включения Rust в приложение.
В целом можно сказать, что самые очевидные преимущества Rust  —  это скорость решения задач, интенсивно расходующих ресурсы процессора, и очень эффективная работа с памятью (причем без сборщика мусора).

Но есть небольшой недостаток  —  очень строгая модель владения. Впрочем, не такой уж это и недостаток: если ее придерживаться, получается очень стабильный и легкий в сопровождении код.

https://nuancesprog.ru/p/16265/

👉 @rust_lib
👍7
SongRec

Клиент Shazam с открытым исходным кодом для Linux, написанный на языке Rust

https://github.com/marin-m/SongRec

👉 @rust_lib
👍5
Шпаргалка по Rust

Мы создали эту шпаргалку по Rust изначально для студентов нашего Rust Bootcamp: Rust Programming: Но теперь мы делимся ею со всеми разработчиками, которые хотят выучить и запомнить некоторые ключевые функции и концепции Rust, а также иметь краткое справочное руководство по основам Rust.

Мы гарантируем, что это лучшая и наиболее полная шпаргалка по Rust, которую вы можете найти.

https://zerotomastery.io/cheatsheets/rust-cheat-sheet/

👉 @rust_lib
👍6
Тестирование Rust

Я всё ещё продолжаю изучать Rust. Кроме синтаксиса, для знания языка нужно понимать его идиомы и экосистему. Сейчас я нахожусь на этапе изучения тестирования в Rust.

Rus https://habr.com/ru/companies/ruvds/articles/697772/

Eng https://dzone.com/articles/different-test-scopes-in-rust

👉 @rust_lib
👍7
Какую модель памяти следует использовать в языке Rust?

В этой статье рассматривается несколько альтернативных моделей памяти для языка Rust. Надеюсь, эта дискуссия будет ценна всему сообществу Rust – но, в конце концов, это их язык, поэтому и выбор модели памяти тоже за ними.

Rus https://habr.com/ru/companies/timeweb/articles/697882/

Eng https://paulmck.livejournal.com/66175.html

👉 @rust_lib
👍4👎1
Работа с графикой на языке Rust

Всем привет! Меня зовут Саша и я backend разработчик. Нет, не на rust. Но раст мой любимый язык и недавно я задался целью портировать движок онлайн игры, написанный на C++. Первый месяц ушел на то, чтобы разобраться с бинарными ассетами, их чтением и управлением. Но статья будет не об этом, а о WGPU.

Часть 1 https://habr.com/ru/articles/690514/
Часть 2 https://habr.com/ru/articles/698426/


👉 @rust_lib
👍5
Простое понимание замыканий в Rust

У вас бывало такое, что вы никак не можете скомпилировать код с замыканиями в Rust? Уже и все варианты Fn-трейтов перебрали, и move написали везде, где можно, а borrow checker все равно не унимается? И тут оказывается, что просто нужно внутри замыкания клонировать переданную переменную окружения! Сложно и непонятно. Дурацкий привереда Rust.

На самом деле довольно просто понять, почему так происходит и на что влияет move, а на что — клонирование. Но отсутствие подобного понимания я наблюдаю не только у начинающих программистов, но и у вполне зрелых. Хуже того, есть статьи, в которых это объясняется неправильно.

Итак, ключ к пониманию — это представление, что замыкание на самом деле реализуется компилятором как структура. Причем захваченные переменные окружения становятся полями структуры, а тело замыкания становится телом метода для вызова (одного из трех возможных: Fn::call, FnMut::call_mut, FnOnce::call_once).

https://habr.com/ru/articles/699596/

👉 @rust_lib
👍4🤔1
Rust: параметризуем мутабельность через маркеры и ассоциированные типы

Borrow-checker — отличный секюрити, который очень эффективен, если мы находимся в безопасном Rust. Его поведение отлично описано в RustBook, и, по крайней мере, я почти никогда не сталкиваюсь с придирками, которым я бы не был благодарен.


Но вот когда нужно написать семантически-безопасный API над функциями и данными, которые вообще не безопасны — у меня всё стало валиться из рук. Последние пару дней я потратил на то, чтобы придумать элегантный способ параметризации мутабельности. Над тем, чтобы на уровне API сохранялась семантика — зависимость изменяемости полей друг от друга. Даже если на самом деле они живут сами по себе.

https://habr.com/ru/articles/703018/

👉 @rust_lib
👍4
Rust в стартапе: поучительная история

Rust прекрасен для определенных целей. Но подумайте дважды перед тем как внедрять его в стартап, который должен быстро развиваться.

Я очень долго думал писать ли мне этот пост или нет, потому что я не хочу начинать или быть вовлеченным в холивар про языки программирования (чтобы сразу расставить все точки над "i": Visual Basic самый лучший язык программирования на свете). Но уже несколько людей спрашивали меня про мой опыт с Rust и должны ли они использовать его в своих проектах. В общем, я хочу поделиться своими наблюдениями, какие я вижу достоинства и недостатки Rust в стартапах, когда скорость разработки и легкость масштабирования команды очень важны.

Rus https://habr.com/ru/articles/704362/

Eng https://mdwdotla.medium.com/using-rust-at-a-startup-a-cautionary-tale-42ab823d9454

👉 @rust_lib
👍4