Rust
Kanalga Telegram’da o‘tish
Полезный контент по программированию на Rust
Ko'proq ko'rsatish2 227
Obunachilar
Ma'lumot yo'q24 soatlar
Ma'lumot yo'q7 kunlar
-130 kunlar
Postlar arxiv
2 227
От крышки рояля до фреймворка на rust: как системное программирование помогает творческой реализации
Здравствуйте, меня зовут Тимофей, и я алкоголик программирую, чтобы писать музыку. Судя по всему, недуг мой прогрессирует:
Пять лет назад, когда я впервые услышал про LilyPond — язык программирования, на котором можно писать партитуры в текстовом редакторе — я посмеялся над гиком, что это придумал, и прошёл дальше.
Два года назад я прочитал код партитуры из примеров — удивился, насколько логично и музыкально он выглядит, подивился задротству автора, и пошёл набирать ноты в MuseScore.
В этом году я пишу экспортёр MIDI из Reaper в исходники LilyPond, а сегодня зарелизил rea-rs: фреймворк для написания расширений для Reaper на rust.
https://habr.com/ru/articles/705600/
👉 @rust_lib
2 227
Генератор для приёма QO-100 на MAX2870
Не так давно заинтересовался связью через катарский спутник QO-100. Собственно, он такой единственный геостационарный радиолюбительский, что делает его совершенно уникальным. Странно, что про него на хабре ничего не писали, технически это совершенно новый уровень радиолюбительской связи. Работает он в СВЧ диапазоне, поэтому к аппаратуре предъявляются специфические требования. В этой заметке хотел бы рассказать, как решал неожиданную для меня проблему создания высококачественного генератора на MAX2870 с использованием Bluepill и Rust.
https://habr.com/ru/articles/704968/
👉 @rust_lib
2 227
Rust в стартапе: поучительная история
Rust прекрасен для определенных целей. Но подумайте дважды перед тем как внедрять его в стартап, который должен быстро развиваться.
Я очень долго думал писать ли мне этот пост или нет, потому что я не хочу начинать или быть вовлеченным в холивар про языки программирования (чтобы сразу расставить все точки над "i": Visual Basic самый лучший язык программирования на свете). Но уже несколько людей спрашивали меня про мой опыт с Rust и должны ли они использовать его в своих проектах. В общем, я хочу поделиться своими наблюдениями, какие я вижу достоинства и недостатки Rust в стартапах, когда скорость разработки и легкость масштабирования команды очень важны.
Rus https://habr.com/ru/articles/704362/
Eng https://mdwdotla.medium.com/using-rust-at-a-startup-a-cautionary-tale-42ab823d9454
👉 @rust_lib
2 227
Rust: параметризуем мутабельность через маркеры и ассоциированные типы
Borrow-checker — отличный секюрити, который очень эффективен, если мы находимся в безопасном Rust. Его поведение отлично описано в RustBook, и, по крайней мере, я почти никогда не сталкиваюсь с придирками, которым я бы не был благодарен.
Но вот когда нужно написать семантически-безопасный API над функциями и данными, которые вообще не безопасны — у меня всё стало валиться из рук. Последние пару дней я потратил на то, чтобы придумать элегантный способ параметризации мутабельности. Над тем, чтобы на уровне API сохранялась семантика — зависимость изменяемости полей друг от друга. Даже если на самом деле они живут сами по себе.
https://habr.com/ru/articles/703018/
👉 @rust_lib
2 227
Простое понимание замыканий в Rust
У вас бывало такое, что вы никак не можете скомпилировать код с замыканиями в Rust? Уже и все варианты Fn-трейтов перебрали, и move написали везде, где можно, а borrow checker все равно не унимается? И тут оказывается, что просто нужно внутри замыкания клонировать переданную переменную окружения! Сложно и непонятно. Дурацкий привереда Rust.
На самом деле довольно просто понять, почему так происходит и на что влияет move, а на что — клонирование. Но отсутствие подобного понимания я наблюдаю не только у начинающих программистов, но и у вполне зрелых. Хуже того, есть статьи, в которых это объясняется неправильно.
Итак, ключ к пониманию — это представление, что замыкание на самом деле реализуется компилятором как структура. Причем захваченные переменные окружения становятся полями структуры, а тело замыкания становится телом метода для вызова (одного из трех возможных: Fn::call, FnMut::call_mut, FnOnce::call_once).
https://habr.com/ru/articles/699596/
👉 @rust_lib
2 227
Rust Atomics and Locks: Low-Level Concurrency in Practice
Mara Bos (2023)
Язык программирования Rust очень хорошо подходит для параллелизма, и в его экосистеме есть множество библиотек, включающих в себя множество структур параллельных данных, блокировок и прочего. Однако корректная реализация этих структур может быть очень сложной. Даже в самых хорошо используемых библиотеках нередки ошибки упорядочивания памяти.
В этой практической книге Мара Бос, руководитель команды разработчиков библиотеки Rust, помогает программистам на Rust всех уровней получить четкое понимание низкоуровневого параллелизма. Вы узнаете все об атомиках и упорядочивании памяти, а также о том, как они сочетаются с базовыми API операционной системы для создания таких распространенных примитивов, как мьютексы и переменные состояния. По окончании работы вы будете иметь четкое представление о том, как модель памяти Rust, процессор и роль операционной системы сочетаются друг с другом.
👉 @rust_lib
2 227
Работа с графикой на языке Rust
Всем привет! Меня зовут Саша и я backend разработчик. Нет, не на rust. Но раст мой любимый язык и недавно я задался целью портировать движок онлайн игры, написанный на C++. Первый месяц ушел на то, чтобы разобраться с бинарными ассетами, их чтением и управлением. Но статья будет не об этом, а о WGPU.
Часть 1 https://habr.com/ru/articles/690514/
Часть 2 https://habr.com/ru/articles/698426/
👉 @rust_lib
2 227
Какую модель памяти следует использовать в языке Rust?
В этой статье рассматривается несколько альтернативных моделей памяти для языка Rust. Надеюсь, эта дискуссия будет ценна всему сообществу Rust – но, в конце концов, это их язык, поэтому и выбор модели памяти тоже за ними.
Rus https://habr.com/ru/companies/timeweb/articles/697882/
Eng https://paulmck.livejournal.com/66175.html
👉 @rust_lib
2 227
Тестирование Rust
Я всё ещё продолжаю изучать Rust. Кроме синтаксиса, для знания языка нужно понимать его идиомы и экосистему. Сейчас я нахожусь на этапе изучения тестирования в Rust.
Rus https://habr.com/ru/companies/ruvds/articles/697772/
Eng https://dzone.com/articles/different-test-scopes-in-rust
👉 @rust_lib
2 227
Command-Line Rust: A Project-Based Primer for Writing Rust CLIs
Автор: Ken Youens-Clark (2022)
В течение нескольких лет подряд Rust был признан "самым любимым языком программирования" в ежегодном опросе разработчиков StackOverflow. Этот язык системного программирования с открытым исходным кодом теперь используется для всего - от игровых движков и операционных систем до компонентов браузера и движков моделирования виртуальной реальности. Но Rust также является невероятно сложным языком с заведомо трудной кривой обучения.
Эта книга - отличный способ попрактиковаться в написании Rust в реальных сценариях. Кен, соавтор языка, проложил путь к развитию ваших навыков в разработке и решении распространенных проблем.
👉 @rust_lib
2 227
Шпаргалка по Rust
Мы создали эту шпаргалку по Rust изначально для студентов нашего Rust Bootcamp: Rust Programming: Но теперь мы делимся ею со всеми разработчиками, которые хотят выучить и запомнить некоторые ключевые функции и концепции Rust, а также иметь краткое справочное руководство по основам Rust.
Мы гарантируем, что это лучшая и наиболее полная шпаргалка по Rust, которую вы можете найти.
https://zerotomastery.io/cheatsheets/rust-cheat-sheet/
👉 @rust_lib
2 227
SongRec
Клиент Shazam с открытым исходным кодом для Linux, написанный на языке Rust
https://github.com/marin-m/SongRec
👉 @rust_lib
2 227
Rust in Action: Systems programming concepts and techniques
Автор: Timothy Samuel McNamara (2021)
Rust в действии - это практическое руководство по программированию на Rust. Написанная для опытных программистов, она представляет реальные варианты использования, которые выходят далеко за рамки синтаксиса языка. Вы изучите функции Rust для работы с файлами, создания сетей и программирования на уровне ядра, а также откроете для себя потрясающие методы параллелизма. Попутно вы освоите уникальную модель проверки заимствований Rust для управления памятью без сборщика мусора.
👉 @rust_lib
2 227
Rust как часть микросервисной архитектуры
Как использовать Rust в веб-приложении полного цикла? В этой статье расскажем об альтернативном способе включения Rust в приложение.
В целом можно сказать, что самые очевидные преимущества Rust — это скорость решения задач, интенсивно расходующих ресурсы процессора, и очень эффективная работа с памятью (причем без сборщика мусора).
Но есть небольшой недостаток — очень строгая модель владения. Впрочем, не такой уж это и недостаток: если ее придерживаться, получается очень стабильный и легкий в сопровождении код.
https://nuancesprog.ru/p/16265/
👉 @rust_lib
2 227
Rust Lang Уроки
Начало работы с языком программирования Rust & Visual Studio Code. Debugging & unit tests
Переменные и типы данных в Rust
Арифметические операции и операции сравнения. Язык Rust
Логические операции и конструкция if...else. Язык Rust
Почему Rust? ❤️ Конструкция match
Функции. Язык Rust
Структуры. Язык Rust. Анджелина и Бред вместе ❤️ благодаря структурам
Tuples | кортежи. Структуры-tuples. Язык Rust
Массивы. Язык программирования Rust.
Циклы loop | while | for. Язык Rust.
источник
👉 @rust_lib
2 227
Bevy
Простой игровой движок, управляемый данными, построенный на Rust
https://github.com/bevyengine/bevy
👉 @rust_lib
2 227
Rust Web Programming: A hands-on guide to developing fast and secure web apps with the Rust programming language
Автор: Maxwell Flitton (2021)
Эта книга проведет вас через каждый этап процесса веб-разработки, показывая, как сочетать Rust и современные принципы веб-разработки для создания приложений.
Вы начнете со знакомства с Rust и поймете, как избежать распространенных ошибок при переходе с традиционных языков.
Автор покажет вам, как структурировать код для проекта, который охватывает несколько страниц и модулей. По мере продвижения вы узнаете, как обрабатывать запросы в формате JSON и отображать данные из веб-приложения с помощью HTML, CSS и JavaScript.
Вы также сможете сохранять данные и создавать службы RESTful в Rust
Позже вы создадите автоматизированный процесс развертывания приложения на экземпляре AWS EC2 и Docker Hub
👉 @rust_lib
2 227
Децентрализованный поиск для свободного веба
Возможно ли создать поисковую систему, которую на практике нельзя подвергнуть цензуре, влиянию и блокировке?
Говоря техническим языком, возможно ли выполнять полнотекстовый поиск не имея удаленного сервера, удобным для пользователя способом, одновременно храня поисковый индекс в peer-to-peer системе и имея возможность быстро обновлять поисковый индекс?
Да, это возможно!
Существует редкий класс баз данных - peer-to-peer БД. Такие базы проигрывают по большинству параметров обычным БД и используются скорее для экспериментов.
https://habr.com/ru/articles/690252/
👉 @rust_lib
2 227
CloudFlare отказывается от Nginx в пользу in-house HTTP-прокси на Rust
Сегодня мы поговорим о Pingora, новом HTTP-прокси, который мы создали у себя внутри с помощью Rust. Прокси обслуживает более 1 триллиона запросов в день, форсирует производительность и предоставляет множество новых функций для клиентов Cloudflare, при этом требуя всего лишь треть ресурсов CPU и памяти нашей предыдущей прокси-инфраструктуры.
Rus https://habr.com/ru/articles/688634/
Eng https://blog.cloudflare.com/how-we-built-pingora-the-proxy-that-connects-cloudflare-to-the-internet/
👉 @Rust
2 227
Polars: Pandas DataFrame, но гораздо быстрее
Давайте посмотрим правде в глаза. Pandas работает медленно. Когда у вас миллионы строк в кадре данных, становится невероятно неприятно ждать минуту, пока выполнится одна строка кода. В итоге вы потратите больше времени на ожидание, чем на реальную аналитику.
Для решения этой проблемы существует множество библиотек. PySpark, Vaex, Modin и Dask - вот некоторые примеры.
https://towardsdatascience.com/pandas-dataframe-but-much-faster-f475d6be4cd4
👉 @Rust
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
