Юрий Петров | ai engineering
Ir al canal en Telegram
Привет! 👋 Я руководитель отдела разработки. Здесь мы изучаем LLM, автоматизацию с n8n, делаем крутые приложения на Flutter и учим их думать с помощью ИИ. Новости, лайфхаки, интересные кейсы, присоединяйся. #flutter #dart #llm #ai #ollama #n8n #agent #go
Mostrar más1 575
Suscriptores
-124 horas
-87 días
-12130 días
Archivo de publicaciones
Забыл в опросе указать, что не нравиться все варианта 🙈. Пишите в коментах свой вариант, а лучше ссылку на dartpad
Всем привет. Так как бываю на очень много разных проектов, и вижу разные реализации подписки блок на блок. В последнее время задаюсь вопросом, про то как лучше подписывать блок на блок. Например, необходимо отслеживать в блоке профиля состояние изменения магазина, авторизации и так далее. И реагировать при изменении определённым образом.
Для примера написал приложение, где есть блок счетчик и есть блок слушатель, который просто дублирует значение счетчика.
Есть несколько вариантов:
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
Как думаете, какой вариант самый лучший? Хотелось бы послушать ваше мнение.
Всем привет. Так как бываю на очень много разных проектов, и вижу разные реализации подписки блок на блок. В последнее время задаюсь вопросом, про то как лучше подписывать блок на блок. Например, необходимо отслеживать в блоке профиля состояние изменения магазина, авторизации и так далее. И реагировать при изменении определённым образом.
Для примера написал приложение, где есть блок счетчик и есть блок слушатель, который просто дублирует значение счетчика.
Есть несколько вариантов:
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.
Repost from Код Воробья для iOS разработчиков
Вышел 💻 Xcode 15.1:
– 🧩 @IBDesignable официально деприкейтед
– Максросы можно использовать в Playground
– Для ☁️ Xcode Cloud в условия добавили старт только вручную (см. скриншот)
RC совпадает с релизом — если скачивали, обновлять не нужно. Писать под 🥽 visionOS через бету 💻 15.2.
Repost from Vitaliy Zarubin | @keygenqt
#see Стоит посмотреть:
👉 Представление Аврора 5.0.
👉 Новый интерфейс.
👉 Будущее ОС Аврора 4.0.
👉 Новая архитектура aarch64.
👉 Новые инструменты - Flutter.
https://youtu.be/Xxt1xsMxlG8
Repost from Mobile Development by AppTractor
Опубликованы 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, бессмысленное и беспощадное 😤Repost from Product Friendly
При попытке установки вашего приложения на систему Аврора может возникать неизвестная ошибка, несмотря на успешную сборку и проверку в менеджере RPM. Почему так происходит и как решить эту проблему?
В новом видео Юрий Петров, Flutter Team Lead Friflex и автор канала @mobile_developing, поэтапно разбирает процесс валидации Flutter-пакетов:
✔️проверка RPM-пакета перед установкой
✔️анализ результатов валидации
✔️исправление ошибок
👀 Смотрите туториал по ссылке:
→ Валидатор написанных на Flutter пакетов на ОС Аврора
И подписывайтесь на YouTube-канал Friflex, чтобы не пропустить новые видео 💜
Кто не успел посмотреть батл на Яндекс Талкс. KMP vs Flutter, вот можно посмотреть в записи.
https://www.youtube.com/live/OXOMNjIjxO8?feature=shared
Через 20 минут начнутся дебаты KMP vs Flutter.
Посмотреть, можно по ссылке https://yatalks.yandex.ru/ru/live?day=tech&track=interface
Repost from Vitaliy Zarubin | @keygenqt
Обновление от сообщества развития Flutter для ОС Аврора!
Flutter SDK с поддержкой ОС Аврора получил обновление:
👉 Flutter SDK обновлен до
3.16.2.
👉 Перевели сборку с make на ninja.
👉 Полный журнал сборки.
👉 Добавлена поддержка текстур.
👉 Блокировка ориентации.
👉 Камера: видоискатель, фото, QR.
👉 Обновлен плагин сенсоров.
Поддержка Flutter на ОС Аврора - это совместная работа энтузиастов, специалистов по Flutter из ведущих компаний РФ. Можно поучаствовать кодом и экспертизой - вместе сделаем инструмент лучше.
Текущая версия 3.16.2 и вы можете получить ее уже сейчас. Все необходимое вы можете найти по ссылке: https://gitlab.com/omprussia/flutter.Вакансия: https://hh.ru/vacancy/90224434?from=share_ios
Отправлено с помощью мобильного приложения hh https://hh.ru/mobile?from=share_ios
Repost from Product Friendly
Wonderous – приложение для Flutter SDK о самых известных памятниках и местах в мире с большим количеством анимаций, эффектов и переходов, которое хорошо отражает возможности визуальной точности Flutter. Как портировать это приложение на ОС Аврора? С какими проблемами можно столкнуться в процессе и как их решить?
В новом видео Юрий Петров, Flutter Team Lead Friflex и автор канала @mobile_developing, делится опытом портирования приложения Wonderous на ОС Аврора:
✔️клонирование проекта на компьютер
✔️добавление поддержки Авроры
✔️запуск Flutter-пакетов на Авроре
✔️настройка доступа к интернету
✔️установка сборки на смартфон
👀 Смотрите туториал по ссылке:
→ Пример портирования Wonderous на Аврора
И подписывайтесь на YouTube-канал Friflex, чтобы не пропустить новые видео 💜
