👍3❤1
Создание модуля WebAssembly с помощью Emscripten, AssemblyScript и Rust
В этой небольшой заметке предлагается рассмотреть несколько способов компиляции модуля для WebAssembly, используя три разных подхода. Мы реализуем решение одной и той же задачки на трёх языках и скомпилируем полученный код в модуль WebAssembly.
Будем использовать:
Emscripten для компиляции кода, написанного на c++
AssemblyScript для компиляции кода, написанного на, собственно, AssemblyScript
wasm-pack для компиляции кода, написанного на Rust
https://habr.com/ru/articles/718874/
👉 @rust_lib
В этой небольшой заметке предлагается рассмотреть несколько способов компиляции модуля для WebAssembly, используя три разных подхода. Мы реализуем решение одной и той же задачки на трёх языках и скомпилируем полученный код в модуль WebAssembly.
Будем использовать:
Emscripten для компиляции кода, написанного на c++
AssemblyScript для компиляции кода, написанного на, собственно, AssemblyScript
wasm-pack для компиляции кода, написанного на Rust
https://habr.com/ru/articles/718874/
👉 @rust_lib
Хабр
Создание модуля WebAssembly с помощью Emscripten, AssemblyScript и Rust
В этой небольшой заметке предлагается рассмотреть несколько способов компиляции модуля для WebAssembly, используя три разных подхода. Мы реализуем решение одной и той же задачки на трёх языках и...
👍3
Реализация Redux на Rust
Redux — это популярная библиотека предсказуемого и последовательного управления состоянием с простой разработкой и сопровождением сложных приложений JavaScript.
Реализуем Redux на Rust, производительном и безопасном статически типизированном языке системного программирования.
Для этого создадим структуру, которой обозначается состояние приложения, и типаж для определения выполняемых с этим состоянием действий. И еще функцию редьюсера, которой принимается текущее состояние и действие, а возвращается обновленное этим действием состояние.
https://levelup.gitconnected.com/implementing-redux-with-rust-a-step-by-step-guide-220acd2885f9
👉 @rust_lib
Redux — это популярная библиотека предсказуемого и последовательного управления состоянием с простой разработкой и сопровождением сложных приложений JavaScript.
Реализуем Redux на Rust, производительном и безопасном статически типизированном языке системного программирования.
Для этого создадим структуру, которой обозначается состояние приложения, и типаж для определения выполняемых с этим состоянием действий. И еще функцию редьюсера, которой принимается текущее состояние и действие, а возвращается обновленное этим действием состояние.
https://levelup.gitconnected.com/implementing-redux-with-rust-a-step-by-step-guide-220acd2885f9
👉 @rust_lib
👍2💩2
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Учим Rust вместе
Hello World
Guessing Game
переменные и типы данных
функции и контроль выполнения программы
разбор задач
владение
заимствование и слайсы
структуры и методы
перечислимые типы
пакеты и модули
вектор
строки
HashMap
разбор задачи
обработка ошибок
дженерики
трейты
https://www.youtube.com/playlist?list=PLXhUgKrQD6UoggzaDTQ1luq3XMpYboMTM
👉 @rust_lib
Hello World
Guessing Game
переменные и типы данных
функции и контроль выполнения программы
разбор задач
владение
заимствование и слайсы
структуры и методы
перечислимые типы
пакеты и модули
вектор
строки
HashMap
разбор задачи
обработка ошибок
дженерики
трейты
https://www.youtube.com/playlist?list=PLXhUgKrQD6UoggzaDTQ1luq3XMpYboMTM
👉 @rust_lib
👍9🔥1
Как при помощи 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
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
👍8
This media is not supported in your browser
VIEW IN TELEGRAM
Ripdrag
Утилита Drag and Drop, написанная на Rust и GTK4
https://github.com/nik012003/ripdrag
👉 @rust_lib
Утилита Drag and Drop, написанная на Rust и GTK4
https://github.com/nik012003/ripdrag
👉 @rust_lib
👍5
Как сломанный лифт привел к появлению одного из самых популярных языков программирования
То, что начиналось как маленький побочный проект на ноутбуке одного разработчика — сегодня стало одним из самых успешных языков программирования с открытым исходным кодом, которым пользуются Microsoft, Amazon, Google, Tesla, Discord и многие другие.
Если кто не знает эту историю — велком.
Программисты славятся тем, что часто создают разные одноразовые решения для быстрого устранения возникших проблем или удовлетворения конкретных потребностей. Но случается и так, что решение, созданное под конкретную задачу, оказывается гораздо больше этой самой задачи. И остается актуальным, развивается и процветает даже спустя десятилетия.
Семнадцать лет назад программист из Mozilla Грейдон Хоар вернулся с работы и обнаружил, что лифт в его доме вышел из строя. Он был вынужден подниматься на двадцать первый этаж, проклиная всё на свете. А потом узнал, что лифт не работал из-за сбоя программного обеспечения. Тогда он решил попробовать сделать язык программирования, который сводил бы такие ошибки к нулю. Чтобы даже начинающий разработчик мог бы написать код, который не зависал.
https://habr.com/ru/companies/getmatch/articles/719214/
👉 @rust_lib
То, что начиналось как маленький побочный проект на ноутбуке одного разработчика — сегодня стало одним из самых успешных языков программирования с открытым исходным кодом, которым пользуются Microsoft, Amazon, Google, Tesla, Discord и многие другие.
Если кто не знает эту историю — велком.
Программисты славятся тем, что часто создают разные одноразовые решения для быстрого устранения возникших проблем или удовлетворения конкретных потребностей. Но случается и так, что решение, созданное под конкретную задачу, оказывается гораздо больше этой самой задачи. И остается актуальным, развивается и процветает даже спустя десятилетия.
Семнадцать лет назад программист из Mozilla Грейдон Хоар вернулся с работы и обнаружил, что лифт в его доме вышел из строя. Он был вынужден подниматься на двадцать первый этаж, проклиная всё на свете. А потом узнал, что лифт не работал из-за сбоя программного обеспечения. Тогда он решил попробовать сделать язык программирования, который сводил бы такие ошибки к нулю. Чтобы даже начинающий разработчик мог бы написать код, который не зависал.
https://habr.com/ru/companies/getmatch/articles/719214/
👉 @rust_lib
👍6😱2
Полиморфизм: подавать холодным
Полиморфизм («истинный», параметрический) — свойство, позволяющее обрабатывать данные разных типов одним образом.
Полиморфизм является одним из трёх столпов ООП, наравне с наследованием и инкапсуляцией, да и в целом краеугольным камнем современного программирования. Думаю, большинство читателей не представляет своей жизни без полиморфизма, за что я, конечно, это большинство никак не осуждаю, ибо сам к нему принадлежу. Дело, однако, в том, что многие не задумываются об устройстве этого полиморфизма, ведь любой принцип программирования, по сути, представляет из себя математическую матрёшку.
Реализуем функции print_static, print_dynamic и print_enum для демонстрации различных методов реализации полиморфизма.
https://habr.com/ru/articles/718888/
👉 @rust_lib
Полиморфизм («истинный», параметрический) — свойство, позволяющее обрабатывать данные разных типов одним образом.
Полиморфизм является одним из трёх столпов ООП, наравне с наследованием и инкапсуляцией, да и в целом краеугольным камнем современного программирования. Думаю, большинство читателей не представляет своей жизни без полиморфизма, за что я, конечно, это большинство никак не осуждаю, ибо сам к нему принадлежу. Дело, однако, в том, что многие не задумываются об устройстве этого полиморфизма, ведь любой принцип программирования, по сути, представляет из себя математическую матрёшку.
Реализуем функции print_static, print_dynamic и print_enum для демонстрации различных методов реализации полиморфизма.
https://habr.com/ru/articles/718888/
👉 @rust_lib
Хабр
Полиморфизм: подавать холодным
Полиморфизм («истинный», параметрический) — свойство, позволяющее обрабатывать данные разных типов одним образом. Полиморфизм является одним из трёх столпов ООП, наравне с наследованием...
👍7
Как я приложение с Go на Rust переписывал
О Rust я слышал ещё несколько лет назад и все его либо хвалили, либо порицали, по различным причинам. Но сам как-то не брался за него - мне, неподготовленному к подобному синтаксису и не знакомому с подобными языками хотя бы на базовом уровне, в то время он казался совершенно непонятным. Но вот спустя время для себя решил написать что-то похожее на бенчмарк для тестов локальных HTTP API-серверов.
https://habr.com/ru/articles/720382/
👉 @rust_lib
О Rust я слышал ещё несколько лет назад и все его либо хвалили, либо порицали, по различным причинам. Но сам как-то не брался за него - мне, неподготовленному к подобному синтаксису и не знакомому с подобными языками хотя бы на базовом уровне, в то время он казался совершенно непонятным. Но вот спустя время для себя решил написать что-то похожее на бенчмарк для тестов локальных HTTP API-серверов.
https://habr.com/ru/articles/720382/
👉 @rust_lib
👍6🥱2
Forwarded from GitHub Сообщество
This media is not supported in your browser
VIEW IN TELEGRAM
Gyroflow
Приложение, что позволяет стабилизировать ваши видео, используя данные о движении от гироскопа и, при необходимости, акселерометра
Современные камеры записывают эти данные внутри себя (GoPro, Sony, Insta360 и т. д.), и это приложение стабилизирует отснятый материал именно с их помощью. Gyroflow также поддерживает использование данных из внешнего источника.
https://github.com/gyroflow/gyroflow
👉 @Githublib
Приложение, что позволяет стабилизировать ваши видео, используя данные о движении от гироскопа и, при необходимости, акселерометра
Современные камеры записывают эти данные внутри себя (GoPro, Sony, Insta360 и т. д.), и это приложение стабилизирует отснятый материал именно с их помощью. Gyroflow также поддерживает использование данных из внешнего источника.
https://github.com/gyroflow/gyroflow
👉 @Githublib
👍6🔥1
Rust и C++ при создании астродинамической библиотеки
Моя прошлая статья заканчивалась тем, что у меня возникла проблема выбора на чем писать и я говорил, что в следующей части продолжу свое изложение как сравнение Rust и C++. Но проблема на тот момент заключалось в том, что с первым из них я был знаком шапочно, и чтобы нести ахинею нужно было узнать его поглубже. И как оказалось этот процесс не очень простой.
Изначально я планировал еще привести сравнение производительности, но сейчас понимаю, что будет это не совсем корректно. «Почему?» – спросите Вы меня. Давайте разбираться вместе. Да, пока не начали, оговорюсь сразу, что в данной статье я решил не рассказывать о смысле приводимого кода, т.к. это сразу усложнит восприятие.
https://habr.com/ru/articles/720538/
👉 @rust_lib
Моя прошлая статья заканчивалась тем, что у меня возникла проблема выбора на чем писать и я говорил, что в следующей части продолжу свое изложение как сравнение Rust и C++. Но проблема на тот момент заключалось в том, что с первым из них я был знаком шапочно, и чтобы нести ахинею нужно было узнать его поглубже. И как оказалось этот процесс не очень простой.
Изначально я планировал еще привести сравнение производительности, но сейчас понимаю, что будет это не совсем корректно. «Почему?» – спросите Вы меня. Давайте разбираться вместе. Да, пока не начали, оговорюсь сразу, что в данной статье я решил не рассказывать о смысле приводимого кода, т.к. это сразу усложнит восприятие.
https://habr.com/ru/articles/720538/
👉 @rust_lib
👍4👎1🤔1