Rust Backend | YeaHub
178 subscribers
38 photos
14 videos
123 links
Теория, подготовка к интервью и курсы для Rust разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#Собес
🤔 Какая функция конвертирует итератор в Vec в Rust?

Для конвертации итератора в Vec используется функция .collect() является универсальным способом сбора элементов из итератора в
контейнер. В случае с вектором ( Vec ), она преобразует все элементы итератора в новый вектор.

👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Что такое HashMap в Rust и когда стоит его использовать?

HashMap - Это коллекция, состоящая из пар ключ-значение. Она эффективно используется для
быстрого доступа к данным по ключу и особенно полезна, когда необходимо искать значения по
уникальному ключу.

👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
IT-куры выпускают на рынок труда новых джунов
#Собес
🤔 Как оператор вопроса в Rust преобразует ошибки в нужный тип?

Оператор вопроса ? используется для упрощения обработки ошибок в Rust. Он позволяет
"передать" ошибку из функции без явного использования match . Когда ошибка возникает, оператор
вопроса конвертирует её в нужный тип с помощью трейта Into . Это позволяет легко
преобразовывать одну ошибку в тип, соответствующий возвращаемому типу функции.

👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🥺 The fastest, most feature-complete zkVM for developers

SP1 - это самая быстрая, самая функциональная виртуальная машина (zkVM), которая может доказать выполнение произвольных программ на Rust (или любом другом LLVM-компилируемом языке).

SP1 делает ZK доступной для любого разработчика, позволяя легко писать программы ZKP на Rust.
Гитхаб

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Каковы последствия для производительности при использовании объектов трейтов и динамической диспетчеризации в Rust?
Использование объектов трейтов и динамической диспетчеризации приводит к дополнительным
накладным расходам, так как они требуют индирекции через указатели и динамический вызов
функций, что замедляет выполнение по сравнению с статическими типами.

👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓 Как в Rust создаётся неизменяемая ссылка?
Anonymous Quiz
19%
let ref x = y;
13%
let mut x = &y;
56%
let x = &y;
13%
let &x = y;
#вакансии
👨‍💻 Rust разработчик middle

Создаем удобный личный кабинет для корпоративных клиентов СберТеха, пользующихся нашими ИТ-сервисами.


Что и как?

🔵 Доход не указан
🔵 График 5/2
🔵 Опыт от 1 до 3 лет

📩 Изучить вакансию
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Что такое супер-трейт в Rust?

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

👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#новости
😱 Вышел Rust 1.85.0!

В этом выпуске не только добавлены асинхронные замыкания, но и полностью новая версия Rust Edition, Rust 2024!
Смотреть изменения

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😅 MinDNS

Минимальный DNS-сервер, написанный на Rust, с системой правил и журналированием.
Гитхаб

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес
🤔 Когда следует использовать декларативные макросы в Rust?

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

👉 Новости 👉 Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
🤯 Rust: безопасный парсинг с нулевым копированием

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

📌 Что такое zero-copy парсинг?
Zero-copy — это техника обработки данных без создания дополнительных копий в памяти. В Rust это достигается за счёт продвинутой системы владения и заимствования (ownership & borrowing). Вместо копирования байтов Rust позволяет ссылаться на данные напрямую, что значительно ускоряет обработку.
ТЫК на itnext
(понадобится VPN)

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
👍 mail-server

Безопасный и современный почтовый сервер «все в одном» (IMAP, JMAP, POP3, SMTP)
Гитхаб

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#собес
🤔 Расскажи про Rust

Rust - это язык программирования для системного программирования с акцентом на безопасность памяти и высокую производительность. Этот вопрос проверяет понимание базовых характеристик Rust.

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
🤯 Maelstrom

Это инструмент для запуска тестов, который обеспечивает изоляцию каждого теста в отдельном контейнере!

Основные особенности Maelstrom

🟠 Изоляция тестов: Каждый тест запускается в своем собственном легковесном контейнере, что предотвращает взаимное влияние тестов друг на друга и обеспечивает чистоту окружения.

🟠 Поддержка нескольких языков: Maelstrom предоставляет инструменты для работы с тестами на Rust (cargo-maelstrom), Go (maelstrom-go-test) и Python (maelstrom-pytest), предлагая простую интеграцию с существующими проектами.

🟠 Масштабируемость: Возможность настройки кластера для распределенного выполнения тестов, что позволяет увеличивать пропускную способность тестирования путем добавления новых рабочих узлов.

🟠 Высокая производительность: Собственная реализация контейнеров на Rust обеспечивает низкие накладные расходы и быструю инициализацию, что ускоряет процесс тестирования по сравнению с традиционными методами.
Гитхаб

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM
#статьи
😊 Пишем простой драйвер на Rust

Популярность Rust неуклонно растёт, а с ней и сопутствующая экосистема. И оно не удивительно, ведь это единственный современный язык, который обеспечивает безопасность памяти и многопоточной обработки на этапе компиляции, предоставляя мощную и богатую систему сборки (cargo), а также всё больше различных пакетов (крейтов).

В своей повседневной работе я по-прежнему придерживаюсь C++, так как основная её часть связана с низкоуровневым программированием систем и ядра, а из этого языка легко задействовать написанный на С Windows API и COM API.

Rust — это язык для системного программирования, то есть он может справляться с теми же задачами, что и C/C++. Основное неудобство при этом создаёт громоздкий синтаксис, необходимый для преобразования типов С в типы Rust. Но это неудобство можно преодолеть, используя подобающие обёртки и макросы.

Короче говоря, я решил попробовать написать простой и полезный драйвер WDM. Это будет Rust-версия драйвера «Booster», о котором я пишу в своей книге (Windows Kernel Programming), позволяющего изменять приоритет любого потока на любое значение.
Читать статью

👉Новости 👉Платформа
Please open Telegram to view this post
VIEW IN TELEGRAM