rust_code | Unsorted

Telegram-канал rust_code - Rust

8052

Rust programming language По всем вопросам- @haarrp @ai_machinelearning_big_data - машинное обучение @programming_books_it - бесплатные it книги @pythonl - 🐍 @ArtificialIntelligencedl - AI @datascienceiot - ml 📚 #VRHSZ

Subscribe to a channel

Rust

🔥 Дайджест полезных материалов из мира Rust за неделю

Почитать:
— Идиоматическая обработка ошибок в Rust
— 15 лучших бесплатных курсов по Linux
— Rust против Go: практическое сравнение
— Rust Tutorial 3: Handling Errors and Other Concepts
— IoT with Rust on ESP: Connecting WiFi
— Unlocking the Power of Native Modules in JavaScript: An Introductory Guide
— Deprecated dispatchables removed from Polkadot SDK
— Side by Side Series: Rust & Go - The Builder
— AWS Lambda with Rust and SAM
— Writing a game engine in Rust and Vulkan
— Building a scheduler for a Rust application
— Boost Your Productivity and Write Better Code with AI Tools 🪄
— Rust vs. Zig: A Head-to-Head Comparison of Two Modern Systems Programming Languages

Посмотреть:
🌐 Лекция 0: введение и реклама Rust | Лекции о языка программирования Rust в ФТШ
🌐 CSS nth-child Just Got 100x Better (⏱ 00:56)
🌐 Clean Code Is Killing Your Projects (⏱ 09:20)

Хорошего дня!

@rust_code

Читать полностью…

Rust

👣 Eyra

Eyra - это пакет, поддерживающий создание программ на языке Rust, полностью реализованных на нем.

Он использует Origin для запуска и завершения программ и потоков, а также c-gull для ABI-совместимых реализаций функций libc.

• Github

@rust_code

Читать полностью…

Rust

👣 microsoft/windows-drivers-rs

Платформа, позволяющая разрабатывать драйверы Windows на языке Rust. Разработана компанией Surface.

• Github

@rust_code

Читать полностью…

Rust

JetBrains представили новую интегрированную среду разработки RustRover, ориентированную на написание приложений на языке Rust.

Среда RustRover предназначена для повышениея эффективности разработки на языке Rust, удовлетворение потребностей связанной с Rust экосистемы и первичную поддержку данного языка.


RustRover базируется на существующем открытом плагине intellij-rust, добавляющем поддержу Rust в IDE CLion и IntelliJ IDEA.

https://www.jetbrains.com/rust/

@rust_code

Читать полностью…

Rust

Собственный строковый тип на Rust
https://habr.com/ru/companies/ruvds/articles/761746/

Читать полностью…

Rust

🔥 Дайджест полезных материалов из мира : 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)

Хорошего дня!

@rust_code

Читать полностью…

Rust

Enum в стиле Rust-а в Python
https://habr.com/ru/articles/759978/

Читать полностью…

Rust

🔥 Дайджест полезных материалов из мира : Rust за неделю

Почитать:
— Можно ли доверить компилятору оптимизацию вашего кода?
— Упрощенный пример на Rust обучения нейронной сети на основе Candle Framework от Hugging Face
— 9 лучших консольных файловых менеджеров Linux
— Идиоматический код на 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)

Хорошего дня!

@rust_code

Читать полностью…

Rust

Можно ли доверить компилятору оптимизацию вашего кода?
https://habr.com/ru/companies/timeweb/articles/759326/

Читать полностью…

Rust

Идиоматический код на Rust для тех, кто перешел с других языков программирования
https://habr.com/ru/articles/758566/

Читать полностью…

Rust

👣 php-tokio 🖥

Эта библиотека позволяет асинхронно использовать любую библиотеку async rust из PHP.

▪Github

@rust_code

Читать полностью…

Rust

🎙 Pake — это инструмент на Rust, который позволяет преобразовывать веб-страницы в приложения.

✔️ Поддерживает операционные системы Mac, Windows и GNU/Linux.

✔️ Значительно компактнее, чем Electron, и работает быстрее, чем фреймворки, основанные на JavaScript.

✔️ Уже имеет множество популярных пакетов, таких как WeRead, Twitter, ChatGPT и YouTube Music. Пользователи могут легко навигировать по приложению с помощью сочетаний клавиш.

✔️ Pake можно настроить через командную строку и изменение структуры кодовой базы.

▪Github

@rust_code

Читать полностью…

Rust

Rust 1.72.0: потенциально полезные отключенные элементы, неограниченные константные вычисления
https://habr.com/ru/articles/757158/

Читать полностью…

Rust

Как легко перейти с Java на Rust: Особенности и советы
https://habr.com/ru/articles/756984/

Читать полностью…

Rust

Работа с JSON в Rust. Методичка
https://habr.com/ru/companies/T1Holding/articles/746860/

Читать полностью…

Rust

Идиоматическая обработка ошибок в Rust
https://habr.com/ru/companies/piter/articles/764416/

Читать полностью…

Rust

Rust против Go: практическое сравнение
https://habr.com/ru/articles/763990/

Читать полностью…

Rust

🔥 Дайджест полезных материалов из мира Rust за неделю

Почитать:
— Реализуем на Rust пул потоков с балансировкой нагрузки, пользуясь только стандартной библиотекой
— Собственный строковый тип на Rust
— ESP Embedded Rust: Multithreading with FreeRTOS Bindings
— Managing Large DataList In Solana
— Macos M2交叉编译性能差问题
— Rust: The Future of Systems Programming?
— Writing Rust bindings for Node.js with Neon
— starting overview of my new project animal_game
— How to abstract away library interfaces working directly through syntax in Rust with procedural macros
— Rust Tutorial 2: Let's make a Guessing Game!
— Exploring Modding Systems: A Journey With Lua and Rust
— Managing Application Config in Rust

Посмотреть:
🌐 Экосистема React.js 2023 (⏱ 12:45)
🌐 The Best React State Management Solution Has Been There All Along (⏱ 05:38)
🌐 This CSS Feature Replaces CSS-In-JS (⏱ 01:00)

Хорошего дня!

@rust_code

Читать полностью…

Rust

Реализуем на Rust пул потоков с балансировкой нагрузки, пользуясь только стандартной библиотекой
https://habr.com/ru/companies/timeweb/articles/761398/

Читать полностью…

Rust

Yazi — молниеносный терминальный файловый менеджер, написанный на Rust.

• Встроенная поддержка нескольких протоколов изображений
• Полная асинхронная поддержка: все операции ввода-вывода являются асинхронными, задачи ЦП распределяются по нескольким потокам, что позволяет максимально эффективно использовать доступные ресурсы.
• Встроенная подсветка кода
• Интеграция с fd, rg, fzf, zoxy
• Vim-подобное управление
• Поддержка нескольких вкладок, предварительный просмотр с возможностью прокрутки (для видео, PDF-файлов, архивов, каталогов, кода и т. д.)
• Система тем, пользовательские макеты, корзина для мусора
и многое другое...

Совместим с GNU/Linux, Windows, macOS

• Github

@rust_code

Читать полностью…

Rust

👣 Fuzzer Development With Rust (Basic)

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

• Github

@rust_code

Читать полностью…

Rust

🎥 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) на индивидуальной основе.

📌 Ошибка новичков: бесконечный цикл

Читать

@rust_code

Читать полностью…

Rust

Rust code linter

https://github.com/estebank/redpen

@rust_code

Читать полностью…

Rust

Упрощенный пример на Rust обучения нейронной сети на основе Candle Framework от Hugging Face
https://habr.com/ru/articles/758658/

Читать полностью…

Rust

🔥 Дайджест полезных материалов из мира : 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)

Хорошего дня!

@rust_code

Читать полностью…

Rust

«Я пропагандирую коллегам переход на Rust». В статье — 6 основных причин
https://habr.com/ru/companies/kryptonite/articles/757362/

Читать полностью…

Rust

Запускаем IDEA и CLion на Android
https://habr.com/ru/articles/757222/

Читать полностью…

Rust

Разрабатываем свою ORM библиотеку на Rust: Оптимизация и Простота
https://habr.com/ru/articles/757070/

Читать полностью…

Rust

Я написал JVM на Rust
https://habr.com/ru/companies/ruvds/articles/756366/

Читать полностью…

Rust

Smart-contract developer Road Map
https://habr.com/ru/articles/756542/

Читать полностью…
Subscribe to a channel