en
Feedback
Rust

Rust

Open in Telegram

Полезный контент по программированию на Rust

Show more
2 230
Subscribers
No data24 hours
+37 days
+230 days
Posts Archive
Rust
2 230
Как Rust меняет мышление разработчика Я страшно ненавижу C++. Обычно я люблю программирование, но каждый проект, с которым я
Как Rust меняет мышление разработчика Я страшно ненавижу C++. Обычно я люблю программирование, но каждый проект, с которым я имел дело на C++, ощущался как монотонная рутина. В январе 2023 года я пошёл по пути изучения Rust, поэтому теперь могу сказать, что знаю язык системного программирования, который действительно люблю использовать. Первый стабильный релиз Rust появился в 2015 году, и каждый год, начиная с 2016, он признаётся в Stack Overflow’s Annual Developer Survey самым любимым языком (в 2023 году эта категория называется «обожаемый»). Почему же разработчики, ощутившие вкус Rust, не могут отказаться от его использования? Похоже, в мире прогремевших наследников C/C++ репутация растёт только у Rust. Как же этот язык, появившийся на сцене меньше десятка лет назад, стал настолько популярным? Rus https://habr.com/ru/companies/ruvds/articles/769846/ Eng https://medium.com/@caring_lion_hedgehog_829/rust-beyond-the-syntax-9d10fe5ccaec 👉 @rust_lib

Rust
2 230
Тест производительности Web-фреймворков для Rust В этой статье мы сравним производительность 3 наиболее популярных бекэнд-фре
Тест производительности Web-фреймворков для Rust В этой статье мы сравним производительность 3 наиболее популярных бекэнд-фреймворков для Rust: Axum, Actix и Rocket. https://habr.com/ru/articles/769100/ 👉 @rust_lib

Rust
2 230
Не так страшен Rust, как его излагают Последние годы часто хвалят язык программирования Rust. Однако, без изучения синтаксиса и особенностей языка в нём сложно разобраться. Честно говоря, при первом просмотре дальше простых примеров я продвинуться не смог. Вроде догадываешься, что тут указываем тип переменных, амперсанд – это вроде “я только посмотреть”, но всё равно код складывался в некую мешанину иероглифов с кучей скобок и, на первый взгляд, случайно проставленных точек с запятыми. То ли дело Python, минимализм синтаксиса которого так привлекателен для неокрепших душ. Однако, так ли сложен Rust на самом деле или это миф? Я предположил, что те базовые знания по программированию, которые предлагают распространенные курсы можно дать и с помощью Rust. https://habr.com/ru/articles/677978/ 👉 @rust_lib

Rust
2 230
Rust 1.73.0: новый формат сообщений о панике, изменение в работе с локальными данными потока Команда Rust рада сообщить о новой версии языка — 1.73.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.73.0 вам достаточно выполнить команду: rustup update stable https://blog.rust-lang.org/2023/10/05/Rust-1.73.0.html 👉 @rust_lib

Rust
2 230
Пишем игру от первого лица в 2КБ на Rust Поначалу кажется, что создать игру от первого лица без движка или графического API практические невозможно. В этом посте я расскажу, как это сделать при помощи алгоритма под названием ray casting. Моя цель — показать, что сложную задачу можно разбить на более простые части, и если я всё сделаю правильно, то у вас появится ощущение, что вы сами открыли, как работает игра. Для начала разберёмся, как работает алгоритм, а затем построчно напишем его. Затем мы пересмотрим код, добавим несколько возможностей и оптимизируем его размер. Я постарался сделать пост максимально доступным и дружелюбным, но вам поможет приличное знание программирования, Rust и основ геометрии. Rus https://habr.com/ru/articles/720672/ Eng https://grantshandy.github.io/posts/raycasting/ 👉 @rust_lib

Rust
2 230
Rust и C++ при создании астродинамической библиотеки Моя прошлая статья заканчивалась тем, что у меня возникла проблема выбор
Rust и C++ при создании астродинамической библиотеки Моя прошлая статья заканчивалась тем, что у меня возникла проблема выбора на чем писать и я говорил, что в следующей части продолжу свое изложение как сравнение Rust и C++. Но проблема на тот момент заключалось в том, что с первым из них я был знаком шапочно, и чтобы нести ахинею нужно было узнать его поглубже. И как оказалось этот процесс не очень простой. Изначально я планировал еще привести сравнение производительности, но сейчас понимаю, что будет это не совсем корректно. «Почему?» – спросите Вы меня. Давайте разбираться вместе. Да, пока не начали, оговорюсь сразу, что в данной статье я решил не рассказывать о смысле приводимого кода, т.к. это сразу усложнит восприятие. https://habr.com/ru/articles/720538/ 👉 @rust_lib

Rust
2 230
Gyroflow Приложение, что позволяет стабилизировать ваши видео, используя данные о движении от гироскопа и, при необходимости, акселерометра Современные камеры записывают эти данные внутри себя (GoPro, Sony, Insta360 и т. д.), и это приложение стабилизирует отснятый материал именно с их помощью. Gyroflow также поддерживает использование данных из внешнего источника. https://github.com/gyroflow/gyroflow 👉 @Githublib

Rust
2 230
Rust Web Programming: A hands-on guide to developing, packaging, and deploying fully functional Rust web apps, 2nd Edition Автор: Maxwell Flitton (2023) Используйте язык программирования Rust для создания полнофункциональных веб-приложений с использованием асинхронного Rust для усиления безопасности и повышения производительности ваших программ. Работайте с передовыми веб-технологиями, такими как distroless серверы Rust, Terraform и развертывание AWS. Познакомьтесь с концепциями async, такими как акторы и постановка задач в очередь, используя фреймворки более низкого уровня, такие как Tokio Создайте полноценное веб-приложение на Rust с базой данных, аутентификацией и фронтендом.

Rust
2 230
Как я приложение с Go на Rust переписывал О Rust я слышал ещё несколько лет назад и все его либо хвалили, либо порицали, по р
Как я приложение с Go на Rust переписывал О Rust я слышал ещё несколько лет назад и все его либо хвалили, либо порицали, по различным причинам. Но сам как-то не брался за него - мне, неподготовленному к подобному синтаксису и не знакомому с подобными языками хотя бы на базовом уровне, в то время он казался совершенно непонятным. Но вот спустя время для себя решил написать что-то похожее на бенчмарк для тестов локальных HTTP API-серверов. https://habr.com/ru/articles/720382/ 👉 @rust_lib

Rust
2 230
Полиморфизм: подавать холодным Полиморфизм («истинный», параметрический) — свойство, позволяющее обрабатывать данные разных типов одним образом. Полиморфизм является одним из трёх столпов ООП, наравне с наследованием и инкапсуляцией, да и в целом краеугольным камнем современного программирования. Думаю, большинство читателей не представляет своей жизни без полиморфизма, за что я, конечно, это большинство никак не осуждаю, ибо сам к нему принадлежу. Дело, однако, в том, что многие не задумываются об устройстве этого полиморфизма, ведь любой принцип программирования, по сути, представляет из себя математическую матрёшку. Реализуем функции print_static, print_dynamic и print_enum для демонстрации различных методов реализации полиморфизма. https://habr.com/ru/articles/718888/ 👉 @rust_lib

Rust
2 230
Как сломанный лифт привел к появлению одного из самых популярных языков программирования То, что начиналось как маленький поб
Как сломанный лифт привел к появлению одного из самых популярных языков программирования То, что начиналось как маленький побочный проект на ноутбуке одного разработчика — сегодня стало одним из самых успешных языков программирования с открытым исходным кодом, которым пользуются Microsoft, Amazon, Google, Tesla, Discord и многие другие. Если кто не знает эту историю — велком. Программисты славятся тем, что часто создают разные одноразовые решения для быстрого устранения возникших проблем или удовлетворения конкретных потребностей. Но случается и так, что решение, созданное под конкретную задачу, оказывается гораздо больше этой самой задачи. И остается актуальным, развивается и процветает даже спустя десятилетия. Семнадцать лет назад программист из Mozilla Грейдон Хоар вернулся с работы и обнаружил, что лифт в его доме вышел из строя. Он был вынужден подниматься на двадцать первый этаж, проклиная всё на свете. А потом узнал, что лифт не работал из-за сбоя программного обеспечения. Тогда он решил попробовать сделать язык программирования, который сводил бы такие ошибки к нулю. Чтобы даже начинающий разработчик мог бы написать код, который не зависал. https://habr.com/ru/companies/getmatch/articles/719214/ 👉 @rust_lib

Rust
2 230
Ripdrag Утилита Drag and Drop, написанная на Rust и GTK4 https://github.com/nik012003/ripdrag 👉 @rust_lib

Rust
2 230
Как при помощи Rust в 150 раз ускорить код на Python Python — довольно простой в освоении язык, по сравнению с некоторыми дру
Как при помощи Rust в 150 раз ускорить код на Python Python — довольно простой в освоении язык, по сравнению с некоторыми другими языками код на нём пишется очень быстро. Но в жертву приносится скорость выполнения кода. Перепишем часть Python-кода в Rust и импортируем этот код в виде пакета Python в проект. Получим сверхбыстрый пакет Python, который сможем импортировать и использовать, как любой другой пакет. В качестве бонуса добавим многопроцессорность и в итоге получим функцию, которая примерно в 150 раз быстрее обычного кода на Python. Rus https://habr.com/ru/companies/skillfactory/articles/718894/ Eng https://towardsdatascience.com/create-a-python-package-with-super-fast-rust-code-in-3-steps-a27389629beb 👉 @rust_lib

Rust
2 230
+9
Учим Rust вместе Hello World Guessing Game переменные и типы данных функции и контроль выполнения программы разбор задач владение заимствование и слайсы структуры и методы перечислимые типы пакеты и модули вектор строки HashMap разбор задачи обработка ошибок дженерики трейты https://www.youtube.com/playlist?list=PLXhUgKrQD6UoggzaDTQ1luq3XMpYboMTM 👉 @rust_lib

Rust
2 230
Реализация Redux на Rust Redux — это популярная библиотека предсказуемого и последовательного управления состоянием с простой
Реализация Redux на Rust Redux  —  это популярная библиотека предсказуемого и последовательного управления состоянием с простой разработкой и сопровождением сложных приложений JavaScript. Реализуем Redux на Rust, производительном и безопасном статически типизированном языке системного программирования. Для этого создадим структуру, которой обозначается состояние приложения, и типаж для определения выполняемых с этим состоянием действий. И еще функцию редьюсера, которой принимается текущее состояние и действие, а возвращается обновленное этим действием состояние. https://levelup.gitconnected.com/implementing-redux-with-rust-a-step-by-step-guide-220acd2885f9 👉 @rust_lib

Rust
2 230
Создание модуля WebAssembly с помощью Emscripten, AssemblyScript и Rust В этой небольшой заметке предлагается рассмотреть несколько способов компиляции модуля для WebAssembly, используя три разных подхода. Мы реализуем решение одной и той же задачки на трёх языках и скомпилируем полученный код в модуль WebAssembly. Будем использовать: Emscripten для компиляции кода, написанного на c++ AssemblyScript для компиляции кода, написанного на, собственно, AssemblyScript wasm-pack для компиляции кода, написанного на Rust https://habr.com/ru/articles/718874/ 👉 @rust_lib

Rust
2 230
+1
Rust Minimum room count: Rust interview with an Amazon Engineer K Nearest Restaurants (Mock Interview) источник 👉 @rust_lib

Rust
2 230
Введение в Unicode (опять?) разберём, что из себя представляет Unicode, его символы и их свойства, кодировки. Напишем валидацию строк UTF-8, научимся преобразовывать запись символа в кодировке UTF-8 в код символа (кодпоинт) Unicode и обратно. выясним, что представляет собой нормализация текста, зачем она нужна и где её применять. расскажу про каноническую эквивалентность символов и эквивалентность совместимости, разберём как делается декомпозиция/композиция, быстрые проверки, под конец — напишем реализацию алгоритмов нормализации. узнаем, что такое сопоставление (collation) строк, алгоритм сопоставления (UCA), что такое DUCET и CLDR; уровни и веса сопоставлений, различные подходы к взвешиванию весов, немного затронем тему баз данных, и, наконец, напишем пример. https://habr.com/ru/articles/751616/ 👉 @rust_lib

Rust
2 230
Как избавиться от проверок выхода за границы при доступе по индексу в Rust (без unsafe!) В сети часто можно услышать, что в Rust доступ по индексу со слайсом (как, например, my_slice[i]) работает медленно, и вместо этого в целях повышения производительности вы должны организовать свой код как‑нибудь иначе. Детали этого, однако, зачастую туманны. Мало где можно найти какие‑либо внятные замеры производительности, и нет почти никакой документации по устранению этих накладных расходов, не прибегая к unsafe коду. Поэтому я решил поделиться с вами опытом и методами, которые я обнаружил в процессе удаления проверок выхода индекса за границы (далее просто «проверка границ»), а также удаления unsafe кода, где это возможно, из множества громоздких крейтов. В этой статье я расскажу: Каковы типичные накладные расходы на проверку границ при доступе по индексу. Как избежать проверки границ без использования unsafe кода. Как убедиться, что проверки границ были устранены. Как замерять производительность и профилировать Rust‑код. Как нам сконструировать самую дешевую проверку границ в случае, когда она все‑таки необходима. https://shnatsel.medium.com/how-to-avoid-bounds-checks-in-rust-without-unsafe-f65e618b4c1e 👉 @rust_lib

Rust
2 230
Solana смарт-контракты на Rust для самых маленьких Начнем с определения того, что такое "Solana program" - именно так в блокчейне обозначаются смарт-контракты. Это исполняемый код интерпретирующий проходящие через него инструкции, которые в свою очередь являются частью любой транзакции в сети Solana. https://habr.com/ru/articles/716312/ 👉 @rust_lib