Rust
Kanalga Telegram’da o‘tish
Полезный контент по программированию на Rust
Ko'proq ko'rsatish2 228
Obunachilar
-124 soatlar
+37 kunlar
+1930 kunlar
Postlar arxiv
2 227
«Zero To Production In Rust»
Это субъективное введение в разработку backend-приложений на Rust.
Этот репозиторий служит вспомогательным материалом к книге: он содержит несколько снимков (состояний) кодовой базы проекта рассылки по электронной почте, отражающих её развитие по мере продвижения по книге.
https://github.com/LukeMathWalker/zero-to-production
👉 @rust_lib
2 227
toydb — это распределённая SQL-база данных, реализованная на Rust с нуля, включая журнал предзаписи (write-ahead log), хранилище на основе B-деревьев, транзакции с сериализуемой изоляцией, согласование с помощью Raft и SQL-парсер/исполнитель.
Особенности:
* Полная реализация Raft с поддержкой снапшотов
* SQL-парсер и исполнитель, поддерживающий выборку, фильтрацию, агрегацию, соединения, подзапросы и т.д.
* Хранилище ключ-значение на основе B-деревьев с журналом предзаписи
* Механизм MVCC с сериализуемой изоляцией и детекцией конфликтов
* Планировщик транзакций с дедлок-детекцией
* Управление схемой SQL (таблицы, индексы, и т.д.)
Цель проекта — изучение реализации распределённых баз данных с нуля. Он не предназначен для использования в продакшене.
https://github.com/erikgrinaker/toydb
👉 @rust_lib
2 227
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
Excel лайфхак 📌
https://t.me/Excel_lifehack Excel лайфхак
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии 📌
https://max.ru/progjob Вакансии в IT
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
2 227
🔧 Библиотека
Rustworkx - это высокопроизводительное средство для работы с графами на Python, написанное на Rust.
Она была разработана как альтернатива NetworkX, но с упором на производительность: реализация на Rust даёт значительный прирост скорости при сохранении удобного Python-интерфейса через PyO3. Поддерживаются как направленные, так и ненаправленные графы, деревья, DAG-и, и всё это — с кастомными атрибутами узлов и рёбер.
rustworkx предоставляет большое количество алгоритмов: обходы в глубину/ширину, кратчайшие пути (Dijkstra, A*), топологическую сортировку, поиск мостов, минимальные остовные деревья, изоморфизм графов, и многое другое.
Особенно полезна для задач, где критична производительность графовых операций: квантовые вычисления, биоинформатика, планировщики, оптимизация.
Установка:
pip install rustworkx
https://github.com/Qiskit/rustworkx
👉 @rust_lib2 227
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
Excel лайфхак 📌
https://t.me/Excel_lifehack Excel лайфхак
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии 📌
https://max.ru/progjob Вакансии в IT
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
https://max.ru/piterspb Питер Новости: Санкт-Петербург / СПБ / ДТП
2 227
Один на один с Rust
Всем привет! Я Влад Лунин, занимаюсь анализом сложных угроз в экспертном центре безопасности Positive Technologies. В последнее время часто приходится сталкиваться с вредоносным ПО (ВПО), написанном на Rust, поэтому хочу поделиться своим опытом реверса исполняемых файлов, написанном на этом языке. ВПО бывает как очень простое, так и очень сложное в своей реализации, и чаще всего эта сложность обусловлена особенностями Rust. Расскажу, какие подходы применяю для успешного реверса, а также про сложности, с которыми сталкивался, и как их преодолевал.
https://habr.com/ru/companies/pt/articles/915192/
👉 @rust_lib
2 227
Joshuto
ranger-подобный терминальный файловый менеджер, написанный на Rust
https://github.com/kamiyaa/joshuto
👉 @rust_lib
2 227
Yazi — ⚡️ Молниеносно быстрый файловый менеджер для терминала
Это файловый менеджер для терминала, написанный на Rust, основанный на неблокирующем асинхронном вводе/выводе. Он ориентирован на предоставление эффективного, удобного и настраиваемого опыта управления файлами.
• Встроенная поддержка нескольких протоколов изображений
• Полная асинхронная поддержка: все операции ввода-вывода являются асинхронными, задачи ЦП распределяются по нескольким потокам, что позволяет максимально эффективно использовать доступные ресурсы.
• Встроенная подсветка кода
• Интеграция с fd, rg, fzf, zoxy
• Vim-подобное управление
• Поддержка нескольких вкладок, предварительный просмотр с возможностью прокрутки (для видео, PDF-файлов, архивов, каталогов, кода и т. д.)
• Система тем, пользовательские макеты, корзина для мусора
и многое другое...
Совместим с GNU/Linux, Windows, macOS
https://github.com/sxyazi/yazi
👉 @rust_lib
2 227
🔮 Асинхронный код часто воспринимается как магия: функции работают, задачи выполняются, но при сбоях или оптимизации становится непонятно, как всё устроено. Без этого сложно писать предсказуемые и эффективные решения.
❗️ На открытом уроке разберём, как Rust представляет асинхронные задачи, как компилятор преобразует async-функции и что происходит во время выполнения. Покажем, как описывать собственные асинхронные задачи и контролировать их поведение.
👣 Урок проходит в преддверии старта курса «Rust-разработчик. Продвинутый уровень». Если вы хотите понимать асинхронность на уровне реализации, а не только использовать её — подключайтесь.
➡️ Встречаемся 19 мая в 20:00 МСК. Подробности и регистрация: https://vk.cc/cXMQvw
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
2 227
Komorebi
Менеджер окон с тайлингом для Windows 🍉
Обзор
komorebi — это менеджер окон с тайлингом, работающий как расширение для Desktop Window Manager в Windows 10 и выше.
komorebi позволяет управлять оконными приложениями, виртуальными рабочими областями и мониторами через CLI. Его можно использовать вместе со сторонним софтом, таким как whkd и AutoHotKey, для настройки пользовательских сочетаний клавиш.
Цель komorebi — по умолчанию вносить как можно меньше изменений в операционную систему и окружение рабочего стола. Пользователи могут вносить нужные им правки в собственных конфигурационных файлах komorebi, но эти изменения останутся опциональными и отключёнными по умолчанию в обозримом будущем.
https://github.com/LGUG2Z/komorebi
👉 @rust_lib
2 227
Rustubble
Этот проект нацелен на предоставление набора компонентов, которые можно использовать в терминальных приложениях.
Компонент TextInput — это универсальное и настраиваемое текстовое поле ввода, предназначенное для терминальных приложений на языке Rust. Он поддерживает Unicode, динамическую обработку ввода и предлагает множество опций настройки для улучшения взаимодействия с пользователем.
Особенности:
* Поддержка Unicode: Без проблем обрабатывает ввод символов Unicode.
* Динамическая обработка ввода: Поддерживает ввод в реальном времени, включая вставку и удаление текста.
* Гибкая настройка: Возможность задавать отступы, плейсхолдер, начальный текст и вспомогательный текст.
* Управление курсором: Контролирует положение курсора и гарантирует его корректное размещение в зависимости от действий пользователя.
https://github.com/warpy-ai/rustubble
👉 @rust_lib
2 227
💻 100 упражнений для изучения Rust
Репозиторий 100-exercises-to-learn-rust предлагает подборку из 100 задач для практики Rust. Упражнения покрывают широкий спектр тем: от базового синтаксиса и работы с переменными до более сложных тем вроде многопоточности и асинхронного программирования.
Каждое задание направлено на закрепление конкретной концепции и часто сопровождается краткими пояснениями. Отличный способ развить навыки, если вы только начинаете изучать Rust или хотите углубить понимание языка.
https://github.com/mainmatter/100-exercises-to-learn-rust
👉 @rust_lib
2 227
👣 Изучаете Rust, но не хватает практики на уровне полноценного проекта? Часто знания остаются на уровне отдельных задач: синтаксис понятен, но при попытке собрать систему целиком возникают сложности. Особенно когда речь идёт о сети, взаимодействии клиента и сервера и логике приложения.
💬 На открытом уроке реализуем многопользовательский чат: от протокола поверх TCP до серверной и клиентской частей, включая CLI. Покажем, как связать компоненты и получить работающее решение, а не набор разрозненных примеров.
❗️ Урок проходит в преддверии старта курса «Rust-разработчик. Продвинутый уровень». Если вы хотите собрать проект, который можно показать работодателю — подключайтесь.
🗓Встречаемся 6 мая в 20:00 МСК. Принять участие: https://vk.cc/cXrftK
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
2 227
Blue Recorder - простой экранный рекордер, написанный на Rust на основе Green Recorder
Простое приложение для записи экрана на Linux. Построено с использованием GTK4 и ffmpeg.
Поддерживает запись аудио и видео практически на всех интерфейсах Linux с поддержкой сервера отображения Wayland в сессиях GNOME.
В данный момент поддерживаются следующие форматы: mkv, avi, mp4, wmv, gif и nut.
Вы можете легко остановить запись, щёлкнув правой кнопкой мыши по иконке в области уведомлений и выбрав "Остановить запись". Также можно кликнуть средней кнопкой мыши по иконке записи (но эта функция работает не на всех интерфейсах).
Можно выбрать источник аудиовхода из списка доступных устройств.
Также вы можете задать значения по умолчанию, просто изменив их в интерфейсе — программа сохранит их для следующего запуска.
Основано на Green Recorder, переписано на Rust с улучшениями.
https://github.com/xlmnxp/blue-recorder
👉 @rust_lib
2 227
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии 📌
https://max.ru/progjob Вакансии в IT
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
2 227
🦀 Zero-cost abstractions — миф или магия?
Одна из главных фишек Rust — zero-cost abstractions. Звучит круто, но что это на деле?
📦 Когда ты пишешь абстрактный код (дженерики, итераторы, трейты), ты обычно платишь ценой производительности. Но не в Rust.
🧠 Rust-компилятор (LLVM) на этапе компиляции мононизирует (специализирует) код — превращает обобщённые конструкции в конкретные, а ненужные — выкидывает. В итоге твои абстракции не тормозят, а код остаётся читаемым.
Пример:
fn square<T: Copy + std::ops::Mul<Output = T>>(x: T) -> T {
x * x
}
Такой код при компиляции становится обычной функцией для i32, f64, и так далее — без оверхеда.
⚡️ Rust даёт возможность писать выразительный код без страха потерять в перформансе. Именно поэтому он стал любимцем системных разработчиков, пишущих и под микроконтроллеры, и под веб.
🧩 А ты используешь zero-cost подходы в своём коде? Делись примерами в комментариях!
👉 @rust_lib2 227
🧵 Почему
.clone() в Rust — не всегда зло (и когда он действительно вреден)
Многие начинающие разработчики в Rust быстро усваивают: «.clone() — это плохо». И правда, если бросаться клонировать всё подряд, можно получить красивый, но тормозной код. Но важно понимать, почему .clone() вызывает проблемы, и когда его использование оправдано.
📌 Что делает .clone()?
Метод .clone() копирует данные, создавая новое значение в памяти. Это не просто копия указателя — это глубокое копирование. То есть:
let a = String::from("hello");
let b = a.clone(); // теперь у нас два разных `String`
Для простых типов (например, i32, bool, char) .clone() вообще не нужен — они Copy и дублируются автоматически.
🚩 Когда .clone() — сигнал тревоги
Если вы часто пишете .clone(), чтобы «заткнуть компилятор», скорее всего, у вас проблемы с пониманием владения и заимствования. Пример:
fn takes_ownership(s: String) { /* ... */ }
let s = String::from("data");
takes_ownership(s.clone()); // работает, но...
takes_ownership(s); // не работает без `.clone()`
Здесь правильнее задуматься: а нужно ли вообще передавать владение? Или лучше использовать ссылку:
fn takes_reference(s: &str) { /* ... */ }
let s = String::from("data");
takes_reference(&s);
✅ Когда .clone() — нормально
- Вы действительно хотите получить копию, и это оправдано логикой программы.
- Тип дешёв в копировании (Arc, Rc, PathBuf — в разумных пределах).
- Профилировали — и увидели, что это не узкое место.
- Вы работаете с immutability в многопоточном контексте — там клоны часто оправданы.
🧠 Вывод
.clone() — это инструмент. Он не «зло», а просто сигнал: здесь стоит подумать. Если вы клонируете ради того, чтобы компилятор «не ругался», скорее всего, вы пропускаете шанс написать более идиоматичный и эффективный Rust-код.
👉@rust_lib2 227
🚀 Подборка полезных IT каналов в Max
Системное администрирование, DevOps 📌
https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin Типичный Сисадмин
1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика
Программирование Go📌
https://max.ru/golang_lib Библиотека Go (Golang) разработчика
Программирование React📌
https://max.ru/react_lib React
Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика
Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика
GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных
Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков
Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов
Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼💻👩💻
Шутки программистов 📌
https://max.ru/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free
Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров
Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике
Вакансии 📌
https://max.ru/progjob Вакансии в IT
Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных
Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
2 227
Список ресурсов для изучения Rust — Дорожная карта от новичка до продвинутого уровня.
https://github.com/ImplFerris/LearnRust
👉 @rust_lib
2 227
📖 Неофициальное руководство по экосистеме Rust
https://blessed.rs/crates
https://github.com/nicoburns/blessed-rs
👉 @rust_lib
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
