Rust
الذهاب إلى القناة على Telegram
Rust programming language По всем вопросам- @workakkk #VRHSZ
إظهار المزيد8 453
المشتركون
-424 ساعات
+187 أيام
+29830 أيام
أرشيف المشاركات
8 453
Реализуем на Rust пул потоков с балансировкой нагрузки, пользуясь только стандартной библиотекой
https://habr.com/ru/companies/timeweb/articles/761398/
8 453
Yazi — молниеносный терминальный файловый менеджер, написанный на Rust.
• Встроенная поддержка нескольких протоколов изображений
• Полная асинхронная поддержка: все операции ввода-вывода являются асинхронными, задачи ЦП распределяются по нескольким потокам, что позволяет максимально эффективно использовать доступные ресурсы.
• Встроенная подсветка кода
• Интеграция с fd, rg, fzf, zoxy
• Vim-подобное управление
• Поддержка нескольких вкладок, предварительный просмотр с возможностью прокрутки (для видео, PDF-файлов, архивов, каталогов, кода и т. д.)
• Система тем, пользовательские макеты, корзина для мусора
и многое другое...
Совместим с GNU/Linux, Windows, macOS
• Github
@rust_code
8 453
🔥 Дайджест полезных материалов из мира : Rust за неделю
Почитать:
— Enum в стиле Rust-а в Python
— Learning Rust 🦀: 14 - Option Enum: An Enum and Pattern matching use case
— Next rust validator, should be ergonomics and functional
— The Embedded Rust ESP Development Ecosystem
— My Web3 Journey with Solana
— Introduction to graphs - BFS algorithm
— How Rust memory management work to beginners.
— Rust Tutorial 1: Writing Hello World
— Building a PinePhone App With React and Tauri
— Rust & MySQL: delete, insert data using crate sqlx.
— Using arti to Connect to TOR Network and query WHOIS information in Rust
Посмотреть:
🌐 Learning To Code Is Easy (⏱ 08:59)
🌐 NEW React Hooks Saves 1K+ Lines Of Code (⏱ 01:00)
Хорошего дня!
8 453
👣 Fuzzer Development With Rust (Basic)
Каждому исследователю необходимо уметь разрабатывать собственные инструменты для фаззинга. В этом репозитории материалы для разработки средств фаззинга с нуля, чтобы исследователи могли использовать собственные фаззеры для обнаружения уязвимостей в открытых инструментах, библиотеках и коде, разрабатываемом внутри компаний.
• Github
@rust_code
8 453
🎥 Rust: рефакторинг для новичков
📌 Отсутствие идиом Rust
Опытным программистам Rust режет глаз тот факт, что следующая функция возвращает кортеж, а не Result<>:
fn add_student() -> (Student, bool)
Данный подход не только не является идиоматическим, но и вводит в заблуждение читателя кода. Непонятно, что подразумевает логическое значение bool. В ответ на вывод этой функции придется написать что-то сложное, как показано ниже:
// Добавление студента на курс
let (st, err) = add_student();
// Проверка наличия ошибки. В случае ошибки продолжить цикл
if !err {
continue;
}
Получается 5 строк с комментариями, объясняющими код. Это считается плохой практикой, так же как и короткие имена переменных.
📌 Рефакторинг
Сначала проведем рефакторинг этих фрагментов. То, что было:
fn add_student() -> (Student, bool) {
// ...
let mut st = Student {
name: "".to_string(),
age: 0,
};
// ...
if student_name.len() < 3 {
// ...
return (st, false);
}
// ...
(st, true)
}
преобразуем в более идиоматический и читаемый вариант:
fn add_student() -> Result<Student, &'static str> {
// ...
if student_name.len() < 3 {
// ...
return Err("Student's name too short");
}
// ...
let age = age.parse.map_err(|_| "Cannot parse student's age")?;
Ok(Student {
name: student_name,
age
})
}
Понятно, что возврат статических строк в качестве ошибок не относится к разряду привычных практик, но вполне подойдет для данного примера.
◾️Метод .map_err() позволяет преобразовать экземпляр типа, содержащийся в значении перечисления Err(e), в такой, который поддерживается функцией.
В этом случае объявленным типом является &'static str (эквивалент Rust для идиомы типа const char* в С), чем объясняется совпадение текстов в кавычках. Оператор ? — одна из лучших функциональностей Rust. Он проверяет стоящий перед ним экземпляр Result<>. Если значение равно Err(e), возвращает результат, в противном случае продолжает работу. В старом коде встречался макрос try!().
В итоге проверка ожидаемого вывода функции выглядит так:
let student = if let Ok(student) = add_student() {
student
} else {
continue;
}
student_db.push(student.clone());
Это неидеальное условие, поскольку оно фактически исключает любую ошибку. Действуя таким образом, мы исходим из предположения допустимости такого подхода, но предусматриваем обработку перечисления Err(e) на индивидуальной основе.
📌 Ошибка новичков: бесконечный цикл
Читать8 453
🔥 Дайджест полезных материалов из мира : Rust за неделю
Почитать:
— Можно ли доверить компилятору оптимизацию вашего кода?
— Упрощенный пример на Rust обучения нейронной сети на основе Candle Framework от Hugging Face
— Идиоматический код на Rust для тех, кто перешел с других языков программирования
— Introducing PassMeRust: Advanced Password Strength Calculator in Rust
— Learning Rust 🦀: 13 - Pattern matching basics
— Fetching Bitcoin Mempool Data from the Terminal
— GreptimeDB Quickstart Guide - Seamlessly Launch Our Time-Series Database from the Ground Up
— Rust, Go, Rinha e I/O
— 🚀 Discover the Rust Revolution for Shell Scripts with Mush 🚀
— Why Rust Is the Optimal Choice for Deep Learning, and How to Start Your Journey with the Burn Deep Learning Framework
— ESP32 Standard Library Embedded Rust: GPIO Interrupts
— Moving from Typescript and Langchain to Rust and Loops
— 🚀 Mastering Integration Testing in Rust with Testcontainers 🧪
Посмотреть:
🌐 HTMX заменит Frontend?! WTF? (⏱ 12:12)
🌐 5+ CSS Features That Will Change How You Code (⏱ 17:58)
🌐 NEW Way To Create Variables In JavaScript (⏱ 01:00)
Хорошего дня!
8 453
Можно ли доверить компилятору оптимизацию вашего кода?
https://habr.com/ru/companies/timeweb/articles/759326/
8 453
Упрощенный пример на Rust обучения нейронной сети на основе Candle Framework от Hugging Face
https://habr.com/ru/articles/758658/
8 453
Идиоматический код на Rust для тех, кто перешел с других языков программирования
https://habr.com/ru/articles/758566/
8 453
🔥 Дайджест полезных материалов из мира : Rust за неделю
Почитать:
— «Я пропагандирую коллегам переход на Rust». В статье — 6 основных причин
— Rust 1.72.0: потенциально полезные отключенные элементы, неограниченные константные вычисления
— Acrylic Window effect with Tauri
— Raspberry Pi - Blinking an LED with Rust
— Use just to manage Rust project commands
— A Weekly Rust🦀 Pill #5
— Understanding Ownership in Rust: Ensuring Safety and Preventing Errors
— Comparing Rust vs. Zig: Performance, safety, and more
— Computing the 10,000th Fibonacci number in less than a second. Unveiling the Secrets of Giant Numbers: Building Your Own BigInt
— Soroban Series 2: Building a Name Resolution Service
— How to make your own Godbolt (for C++ and Rust)
— Echo2: A Tiny Piece of Code for Learning and Practicing Soroban Rust SDK
Посмотреть:
🌐 CSS Anchor Is The Best New CSS Feature Since Flexbox (⏱ 15:39)
🌐 New useFormStatus React Hook (⏱ 01:00)
Хорошего дня!
8 453
«Я пропагандирую коллегам переход на Rust». В статье — 6 основных причин
https://habr.com/ru/companies/kryptonite/articles/757362/
8 453
🎙 Pake — это инструмент на Rust, который позволяет преобразовывать веб-страницы в приложения.
✔️ Поддерживает операционные системы Mac, Windows и GNU/Linux.
✔️ Значительно компактнее, чем Electron, и работает быстрее, чем фреймворки, основанные на JavaScript.
✔️ Уже имеет множество популярных пакетов, таких как WeRead, Twitter, ChatGPT и YouTube Music. Пользователи могут легко навигировать по приложению с помощью сочетаний клавиш.
✔️ Pake можно настроить через командную строку и изменение структуры кодовой базы.
▪Github
@rust_code
8 453
Вы ещё успеваете поступить в онлайн-магистратуру МФТИ «Финансовые технологии и аналитика» 👩🎓Ближайшие даты экзаменов — 4 и 19 сентября.
➕Диплом очной магистратуры гособразца по направлению 38.03.05 «Бизнес-информатика».
➕Онлайн-обучение из любой точки мира.
➕Углубленная специализация в сфере финтех-разработки или аналитики.
➕Гранты на запуск своего стартапа в области Data Science/AI/ML до 3 млн ₽.
➕Более 5 проектов в портфолио: реальные задачи от Сбера, ВТБ, Ozon Fintech, Альфа-Банка и других финтех-компаний уже с первого семестра.
➕Возможность совмещать с работой и развивать корпоративный проект в качестве дипломного.
➕Рассрочка под 3% от Сбера и Минобразования. Платёж во время учебы — до 900 ₽ в месяц.
Бесплатный подготовительный курс и запись прошедших консультаций по экзаменам доступны после регистрации. Оставьте заявку, чтобы зарегистрироваться на день открытых дверей и начать готовиться к поступлению: https://netolo.gy/b3n6
Реклама ООО “Нетология” LatgBdxss
8 453
Rust 1.72.0: потенциально полезные отключенные элементы, неограниченные константные вычисления
https://habr.com/ru/articles/757158/
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
