ar
Feedback
Юрий Петров | ai engineering

Юрий Петров | ai engineering

الذهاب إلى القناة على Telegram

Привет! 👋 Я руководитель отдела разработки. Здесь мы изучаем LLM, автоматизацию с n8n, делаем крутые приложения на Flutter и учим их думать с помощью ИИ. Новости, лайфхаки, интересные кейсы, присоединяйся. #flutter #dart #llm #ai #ollama #n8n #agent #go

إظهار المزيد
1 771
المشتركون
-224 ساعات
-117 أيام
-6430 أيام
أرشيف المشاركات
В репозиторий по спецификации языка программирования Dart сделали интересный пулл-реквест. А именно, предложение по такой фиче, как Shared Memory Multithreading, где одна из заявленных целей то, что разработчики Dart должны иметь возможность писать конкурентный код, не сталкиваясь с ограничениями изолированной модели. https://github.com/dart-lang/language/pull/3531/files

Repost from Product Friendly
Сейчас, чтобы установить и настроить Flutter, Аврора PSDK, таргеты, необходимо производить много различных действий в строгой
Сейчас, чтобы установить и настроить Flutter, Аврора PSDK, таргеты, необходимо производить много различных действий в строгой последовательности. Можно ли сделать это с помощью нескольких консольных команд? В новом видео Юрий Петров, Flutter Team Lead Friflex и автор канала @mobile_developing, рассказывает, как автоматизировать процесс благодаря пакету Aurora CLI и установить: ✔️Aurora CLI ✔️Aurora PSDK в автоматическом режиме ✔️ Flutter 3.16.2 в автоматическом режиме 👀 Смотрите туториал по ссылке: → Как быстро установить Flutter Аврора+PSDK И подписывайтесь на YouTube-канал Friflex, чтобы не пропустить новые видео 💜

Repost from Android Broadcast
Google выпустила рекомендации как расширить поддержку устройств вашего приложения: 👉 Осторожно с блоком  в AndroidManif
Google выпустила рекомендации как расширить поддержку устройств вашего приложения: 👉 Осторожно с блоком <uses-feature> в AndroidManifest. Он указывает какие фичи (аппаратные и софтовые) должны быть у устройства. Google Play будет фильтровать показ вашего приложения в выдаче 👉 Отдельные запрашиваемые разрешения через <uses-permission> также приводят к требованиям аппаратных фичей по умолчанию, например CAMERA или BLUETOOTH 👉 Помните что подлючаемые библиотеки автоматом все добавляют в AndroidManifest все и то что бы вам там не хотелось. Анализируйте финальный манифест сборки! 👉 Автоматизируйте проверку AndroidManifest на CI с использованием AAPT2 или из Gradle тасков Про то как управлять финальным AndroidManifest вашего APK рассказал в видео

HarmonyOS Next Developer Preview coming soon... January, 2024. Version/版本:HarmonyOS Next Developer Preview System/系统:OpenHarm
+1
HarmonyOS Next Developer Preview coming soon... January, 2024. Version/版本:HarmonyOS Next Developer Preview System/系统:OpenHarmony- 4.1.25(Canary1) Based on OpenHarmony 4.1 First batch, Mate60 and Mate40 series.

Виджет недели подъехал: OverlayPortal https://www.youtube.com/watch?v=S0Ylpa44OAQ

Repost from Product Friendly
Если вы когда-нибудь сталкивались с фреймворком Flutter и языком Dart, то наверняка видели маскота – птичку Dash. А знаете, к
Если вы когда-нибудь сталкивались с фреймворком Flutter и языком Dart, то наверняка видели маскота – птичку Dash. А знаете, как она появилась? 🟣Идея создать маскота пришла Dart-разработчице Шамс Захур ещё в 2013 году. Через четыре года на тот момент вице-президент Flutter Джоши Джозеф вспомнил эту мысль и предложил разработать персонажа-игрушку для конференции Dart 2018. 🟣Сначала птичка была талисманом только Dart, а не Flutter. Команда Dart создала изображение колибри для корпоративных презентаций. Колибри символизирует, что Dart – это быстрый язык. 🟣Имя для маскота – Dash – выбрала тоже Шамс. Оно гендерно-нейтральное и подходит колибри. К тому же кодовое название проекта Dart раньше было Dash. Коробки с плюшевыми игрушками Dash доставили в Южную Калифорнию к самому началу конференции, и разработчикам они очень понравились. Так Dash стал маскотом Dart и Flutter. Ещё больше информации о фреймворке Flutter читайте на нашем сайте в разделах Flutter и Блог 💜

Repost from Oh, my Flutter
Каждый хотя бы раз использовал генерацию кода, но как часто приходилось писать свою? Порой может возникнуть такая потребность
Каждый хотя бы раз использовал генерацию кода, но как часто приходилось писать свою? Порой может возникнуть такая потребность, но кажется, что это очень сложно и не понятно с чего начать. Предлагаем вам ознакомиться с данной статьей, которая посвящена основам генерации кода с помощью build и source_gen. 📌 Статья #article #ohmyteam #ohmyfedukenukem

Repost from Product Friendly
🖥 В новой статье на Хабре делимся мыслями нашего разработчика Мурата Насирова о том, как создать federated plugin для Flutte
🖥 В новой статье на Хабре делимся мыслями нашего разработчика Мурата Насирова о том, как создать federated plugin для Flutter-проекта. Что это такое? Представьте: у вас кроссплатформенное приложение и вы создаете плагин для работы c bluetooth. Скорее всего, вы работаете как с Android, так и с iOS. Поэтому создаете четыре пакета, где реализация каждого независима друг от друга: 1) flutter_bluetooth; 2) flutter_bluetooth_android; 3) flutter_bluetooth_ios; 4) flutter_bluetooth_platform_interface. Плагины federated plugins можно создавать сразу для всех доступных платформ, а сегрегация зон ответственности не замедляет разработку. Интересно? #flutter #howto #инструкция

Забыл в опросе указать, что не нравиться все варианта 🙈. Пишите в коментах свой вариант, а лучше ссылку на dartpad

Какой вариант самый лучше?
Anonymous voting

Всем привет. Так как бываю на очень много разных проектов, и вижу разные реализации подписки блок на блок. В последнее время задаюсь вопросом, про то как лучше подписывать блок на блок. Например, необходимо отслеживать в блоке профиля состояние изменения магазина, авторизации и так далее. И реагировать при изменении определённым образом. Для примера написал приложение, где есть блок счетчик и есть блок слушатель, который просто дублирует значение счетчика. Есть несколько вариантов: 1. Подписка блок на блок при передаче блока в конструктор. Но такой подход нарушает правило мягкой связности объектов в domain слое. Получается, что есть жесткая связка между блоками. А это не хорошо. Ну и плюс нагрузка на блок, создание подписок и слушателей, хотя он не должен этого делать. Пример со простым счетчиком и можно глянуть здесь: https://dartpad.dev/?id=d06329447bf96b62facffafb985eda04 2. Второй вариант. В данном случае подписка происходит на уровне UI в методе initState. То есть, по сути мы создаем подписку на изменения блока на том экране, где это надо. И удаляем когда уходим с экрана. В этом случае блоки не связаны, и сильно разгружены, так как нет подписок внутри блока. Но есть подписка который надо создавать и удалять. https://dartpad.dev/?id=d4e1141475241f9f713778fbcec8df52 3. Третий вариант, инициализация подписки внутри блока listener. В этом случае блоки не связаны, и сильно разгружены, так как нет подписок внутри блока. Не надо создавать подписки, удалять и так далее. https://dartpad.dev/?id=bc88d9a6f4320f060c695393eb088a66 4. И последний вариант, через общий репозиторий (аля шина событий). В данном случае UI не занимается подписками. Но есть лишняя сущность репозиторий, который нужно прокидывать в конструкторы блоков. https://dartpad.dev/?id=1a96bba067b25e330f578d9f2e57b8c7 Как думаете, какой вариант самый лучший? Хотелось бы послушать ваше мнение.

Какой вариант лучше?
Anonymous voting

Всем привет. Так как бываю на очень много разных проектов, и вижу разные реализации подписки блок на блок. В последнее время задаюсь вопросом, про то как лучше подписывать блок на блок. Например, необходимо отслеживать в блоке профиля состояние изменения магазина, авторизации и так далее. И реагировать при изменении определённым образом. Для примера написал приложение, где есть блок счетчик и есть блок слушатель, который просто дублирует значение счетчика. Есть несколько вариантов: 1. Подписка блок на блок при передаче блока в конструктор. Но такой подход нарушает правило мягкой связности объектов в domain слое. Получается, что есть жесткая связка между блоками. А это не хорошо. Ну и плюс нагрузка на блок, создание подписок и слушателей, хотя он не должен этого делать. Пример со простым счетчиком и можно глянуть здесь: https://dartpad.dev/?id=d06329447bf96b62facffafb985eda04 2. Второй вариант. В данном случае подписка происходит на уровне UI в методе initState. То есть, по сути мы создаем подписку на изменения блока на том экране, где это надо. И удаляем когда уходим с экрана. В этом случае блоки не связаны, и сильно разгружены, так как нет подписок внутри блока. Но есть подписка который надо создавать и удалять. https://dartpad.dev/?id=d4e1141475241f9f713778fbcec8df52 3. Третий вариант, инициализация подписки внутри блока listener. В этом случае блоки не связаны, и сильно разгружены, так как нет подписок внутри блока. Не надо создавать подписки, удалять и так далее. https://dartpad.dev/?id=bc88d9a6f4320f060c695393eb088a66 4. И последний вариант, через общий репозиторий (аля шина событий). В данном случае UI не занимается подписками. Но есть лишняя сущность репозиторий, который нужно прокидывать в конструкторы блоков. https://dartpad.dev/?id=1a96bba067b25e330f578d9f2e57b8c7 Как думаете, какой вариант самый лучший? Хотелось бы послушать ваше мнение.

Кому интересно глянуть на движки Flutter Аврора, можно здесь https://gitlab.com/omprussia/flutter/flutter-engine Flutter Engine — это портативная среда выполнения для приложений Flutter. Она реализует основные библиотеки Flutter, включая анимацию и графику, файловый и сетевой ввод-вывод, поддержку специальных возможностей, архитектуру плагинов, а также среду выполнения Dart.

Вышел 💻 Xcode 15.1: – 🧩 @IBDesignable официально деприкейтед – Максросы можно использовать в Playground – Для ☁️ Xcode Clou
Вышел 💻 Xcode 15.1: – 🧩 @IBDesignable официально деприкейтед – Максросы можно использовать в Playground – Для ☁️ Xcode Cloud в условия добавили старт только вручную (см. скриншот) RC совпадает с релизом — если скачивали, обновлять не нужно. Писать под 🥽 visionOS через бету 💻 15.2.

#see Стоит посмотреть: 👉 Представление Аврора 5.0. 👉 Новый интерфейс. 👉 Будущее ОС Аврора 4.0. 👉 Новая архитектура aarch64. 👉 Новые инструменты - Flutter. https://youtu.be/Xxt1xsMxlG8

Опубликованы SDK, для которых Apple будет требовать подпись Если ваше приложение использует эти сторонние библиотеки, то с ве
Опубликованы SDK, для которых Apple будет требовать подпись Если ваше приложение использует эти сторонние библиотеки, то с весны 2024 года вы должны будете включать их в новый манифест конфиденциальности. 1. На WWDC23 компания Apple представила новые декларации конфиденциальности и подписи для SDK, чтобы помочь повысить осведомленность о том, как сторонние SDK используют данные. 2. В файлах манифеста конфиденциальности в едином стандартном формате описываются методы обеспечения конфиденциальности для стороннего кода в приложении. 3. Apple на прошлой неделе перечислила SDK, для которых надо будет делать privacy manifest и подпись. Среди самых заметных и популярных - Alamofire, Charts, Cordova, масса библиотек FB, практически весь Firebase, Flutter, OneSignal, Protobuf, RxSwift, sqflite, UnityFramework. И что: что-то из разряда объяснения использования UserDefaults, бессмысленное и беспощадное 😤