fa
Feedback
Rust

Rust

رفتن به کانال در Telegram

Rust programming language По всем вопросам- @workakkk #VRHSZ

نمایش بیشتر
8 452
مشترکین
+424 ساعت
+157 روز
+29030 روز
آرشیو پست ها
Rust
8 449
Repost from 📚Python Books
📔 Title: Speed Up Your Python with Rust #Rust #Python #Book #EN 🌐 Lang.: English 🧔 Author: Maxwell Flitton 🕘 Year: 2021 📑 Pages: 541 #️⃣ ISBN: 978-1-80181-144-6 📝введение в Rust для разработчиков Python и использует примеры Python, чтобы вы быстро освоились с Rust. @pythonlbooks

Rust
8 449
Ускоряем сериализацию JSON в Python с orjson и Rust https://habr.com/ru/company/stm_labs/blog/670576/

Rust
8 449
femtoТерминальный текстовый редактор, написанный на Rust Проект предназначен для демонстрации минимального терминального текстового редактора, написанного минимальным количеством строк. Для достижения этой цели необходимо было сделать пару «взломов» в некоторых строках, но остальная часть кода, особенно структура программы, написана так, чтобы быть легко расширяемой Состоит из 300 Кб статически связанного (стриженного) двоичного файла. GitHub | #Rust #Interesting #Text #Editor

Rust
8 449
Dexios – быстрый, безопасный инструмент для шифрования файлов из командной строки с открытым исходным кодом Он полностью написан на Rust и уделяет первостепенное внимание безопасности, производительности и удобству GitHub | #Rust #Interesting #Useful

Rust
8 449
Spacedriveкроссплатформенный файловый менеджер с открытым исходным кодом, основанный на виртуальной распределенной файловой системе (VDFS), написанный на Rust VDFS это файловая система, предназначенная для работы на различных уровнях хранения. Она не ограничена одной машиной, и поставляется с единым API для управления контентом и доступа к нему на многих устройствах GitHub | #Rust #File #Manager #Interesting

Rust
8 449
Как я разогнал fail2ban* в тысячу раз с помощью SIMD https://habr.com/ru/post/668634/

Rust
8 449
Dexios – быстрый, безопасный инструмент шифрования командной строки с открытым исходным кодом Он полностью написан на Rust и уделяет первостепенное внимание безопасности, производительности и удобству GitHub | #Rust #Interesting #Useful @rust_code

Rust
8 449
Сохранение списка значений с помощью вектора Первым типом коллекции, который мы разберём, будет Vec, также известный как вект
Сохранение списка значений с помощью вектора Первым типом коллекции, который мы разберём, будет Vec<T>, также известный как вектор (vector). Векторы позволяют сохранять более одного значения в одной структуре данных, сохраняющей элементы в памяти один за другим. Векторы могут сохранять данные только одного типа. Их удобно использовать, когда нужно сохранить список элементов, например, список текстовых строк в файле, или список цен товаров в корзине покупок. Создание нового вектора Чтобы создать новый пустой вектор, мы вызываем функцию Vec::new, как показано в листинге 8-1. let v: Vec<i32> = Vec::new(); Читать дальше @rust_code

Rust
8 449
Go против Rust — производительность вне конкуренции https://habr.com/ru/post/668166/

Rust
8 449
Ядро Pydantic переписывается на Rust. Внезапно! https://github.com/samuelcolvin/pydantic-core

Rust
8 449
Управление растущими проектами с помощью пакетов, крейтов и модулей По мере роста кодовой базы ваших программ, организация проекта будет иметь большое значение, ведь отслеживание всей программы в голове будет становиться всё более сложным. Группируя связанные функции и разделяя код по основным функциональностям, (фичам, feature), вы делаете более прозрачным понимание о том, где искать код реализующий определённую функцию и где стоит вносить изменения для того чтобы изменить её поведение. Программы, которые мы писали до сих пор, были в одном файле одного модуля. По мере роста проекта, мы можем организовывать код иначе, разделив его на несколько модулей и несколько файлов. Пакет может содержать несколько бинарных крейтов и опционально один крейт библиотеки. По мере роста пакета мы также можем извлекать части нашей программы в отдельные крейты, которые затем станут внешними зависимостями для основного кода нашей программы. Эта глава охватывает все эти техники. В свою очередь для очень крупных проектов, состоящих из набора взаимосвязанных пакетов развивающихся вместе, Cargo предоставляет рабочие пространства, workspaces, их мы рассмотрим за пределами данной главы, в разделе "Рабочие пространства Cargo" Главы 14. Дополнительно к группированию функциональности, инкапсуляция деталей реализации позволяет повторно использовать код на более высоком уровне: после реализации операции, другой код может вызывать этот код через открытый интерфейс, не зная как работает реализация. То, как вы пишете код, определяет какие части общедоступны для использования другим кодом и какие части являются закрытыми деталями реализации для которых вы оставляете право на изменения только за собой. Это ещё один способ ограничить количество деталей, которые вы должны держать в голове. Связанное понятие - это область видимости: вложенный контекст в котором написан код имеющий набор имён, которые определены «в текущей области видимости». При чтении, письме и компиляции кода, программистам и компиляторам необходимо знать, относится ли конкретное имя в определённом месте к переменной, к функции, к структуре, к перечислению, к модулю, к константе или другому элементу и что означает этот элемент. Можно создавать области видимости и изменять какие имена входят или выходят за их рамки. Нельзя иметь два элемента с тем же именем в одной области; есть доступные инструменты для разрешения конфликтов имён. Rust имеет ряд функций, которые позволяют управлять организацией кода, в том числе управлять тем какие детали открыты, какие детали являются частными, какие имена есть в каждой области вашей программы. Эти функции иногда вместе именуемые модульной системой включают в себя: Пакеты, Packages: Функционал Cargo позволяющий собирать, тестировать и делиться крейтами Крейты, Crates: Дерево модулей, которое создаёт библиотечный или исполняемый файл Модули, Modules и use: Позволяют вместе контролировать организацию, область видимости и конфиденциальность путей Пути, Paths: способ именования элемента, такого как структура, функция или модуль Читать дальше @rust_code

Rust
8 449
bat — продвинутая замена cat/less или о том, как Rust набирает обороты https://www.youtube.com/watch?v=3w3NndD6BKI @rust_code

Rust
8 449
Используем клиентский процессор по максимуму. Часть 2: SIMD + мультипоточность https://habr.com/ru/company/ruvds/blog/663936/

Rust
8 449
Rust 1.61.0: пользовательские коды возврата в main, расширение возможностей const fn и изменение IO-блокировок https://habr.com/ru/post/666850/

Rust
8 449
Rust с 0 до 80% для JavaScript разработчиков https://habr.com/ru/post/666246/

Rust
8 449
Что выведет код ? struct S; fn main() { let [x, y] = &mut [S, S]; let eq = x as *mut S == y as *mut S; print!("{}", eq as u8); } Ответ: 1 @rust_code

Rust
8 449
Перечисления и Сопоставление с образцом В этой статье мы рассмотрим перечисления, также называемые enums. Перечисления позволяют определять тип, перечисляя его возможные варианты. Сначала, мы определим и воспользуемся перечислением, чтобы показать, как перечисление может закодировать значение вместе с данными. Далее мы рассмотрим особенно полезный enum, называемый Option, который выражает факт того, что значение может быть либо чем-то, либо ничем. Потом мы посмотрим на сопоставление с образцом в match выражении, позволяющем легко выполнять разный код для различных значений перечисления. Наконец, мы рассмотрим конструкцию if let - ещё одну удобную и лаконичную идиому, которая позволяет вам управлять перечислениями в коде. Перечисления являются особенностью многих языков, но в каждом языке их возможности различаются. Перечисления в Rust наиболее похожи на алгебраические типы данных, Algebraic Data Types, представленные в таких функциональных языках как F#, OCaml и Haskell. Читать дальше @rust_code

Rust
8 449
Что выведет код ? Ответ: 123 @rust_code
Что выведет код ? Ответ: 123 @rust_code

Rust
8 449
Используем клиентский процессор по максимуму. Часть 1: Rust + WebAssembly https://habr.com/ru/company/ruvds/blog/662363/