Привет, друзья! 👋 Сегодня мы поговорим об assert в Dart 🤔. Это оператор, который помогает разработчикам проверять условия в коде и избегать ошибок 🙅♂️.
Что такое assert?
Это оператор, который проверяет условие и выдает ошибку AssertionError, если оно не выполнено 🚫. Синтаксис прост: assert(условие, 'сообщение об ошибке');
Примеры использования:
Мы можем использовать assert для проверки входных параметров в методах и конструкторах 📝. Например, если мы создаем программу для вывода количества товаров, мы можем добавить проверку, чтобы избежать логических ошибок 🤦♂️.
Код:
Еще один пример:
Мы можем создать класс данных карточки и добавить проверку, чтобы ограничить создание карточки с картинкой без ссылки на изображение 📸.
Код:
Важно:
Assert работают только в debug режиме, поэтому их нельзя использовать для валидации действий пользователя или внешних данных 🚫.
Хотите узнать больше?
Читайте полную статью здесь
Подпишитесь на наш канал flutterpulse, чтобы быть в курсе всех новостей и обновлений из мира Flutter и Dart!
Хэштеги: #flutter #dart #flutterpulse ❤️👍 #flutterpulsenews
Что такое assert?
Это оператор, который проверяет условие и выдает ошибку AssertionError, если оно не выполнено 🚫. Синтаксис прост: assert(условие, 'сообщение об ошибке');
Примеры использования:
Мы можем использовать assert для проверки входных параметров в методах и конструкторах 📝. Например, если мы создаем программу для вывода количества товаров, мы можем добавить проверку, чтобы избежать логических ошибок 🤦♂️.
Код:
void setProductsAmount(int amount) {
assert(amount >= 0, 'Количество товаров не может быть отрицательным!');
print('Количество товаров установлено: $amount');
}Еще один пример:
Мы можем создать класс данных карточки и добавить проверку, чтобы ограничить создание карточки с картинкой без ссылки на изображение 📸.
Код:
enum CardType { simple, withImage }
class Card {
const Card({
required this.type,
required this.title,
required this.subtitle,
this.imageUrl,
}) : assert(type != CardType.withImage || imageUrl != null,
'Для карточки типа withImage необходимо указать imageUrl!');
final CardType type;
final String title;
final String subtitle;
final String? imageUrl;
}Важно:
Assert работают только в debug режиме, поэтому их нельзя использовать для валидации действий пользователя или внешних данных 🚫.
Хотите узнать больше?
Читайте полную статью здесь
Подпишитесь на наш канал flutterpulse, чтобы быть в курсе всех новостей и обновлений из мира Flutter и Dart!
Хэштеги: #flutter #dart #flutterpulse ❤️👍 #flutterpulsenews
🚀 Flutter 3.38: Новый уровень продуктивности для разработчиков!
Flutter 3.38 уже здесь, и он заставляет писать меньше, а создавать больше! 🔥 Обновление полно крутых фишек, улучшений UI и инструментов для веба, iOS, Android и десктопа.
✨ Главные фишки нового релиза
1️⃣ Сокращения точек в Dart
✅ Пишите лаконично:
✅ Поддержка именованных конструкторов и улучшенная читаемость кода
2️⃣ Веб-разработка на новом уровне
✅ Конфигурационные файлы
✅ Настройки прокси прямо в проекте
✅ Улучшенная горячая перезагрузка, даже с несколькими браузерами
3️⃣ Фреймворк и UI
✅
✅ Предиктивные переходы назад на Android
✅ Расширенная интеграция с десктопом: информация о мониторах и окнах на Windows
✅ Исправления жизненного цикла виджетов и стабильность
4️⃣ Material & Cupertino
✅ Унификация API через
✅ Новые возможности
✅ Улучшения iOS-виджетов:
✅ Полировка компонентов:
5️⃣ Прокрутка и Sliver
✅ Надёжная обработка жестов и точная навигация по фокусу
✅ Новый конструктор
✅ Улучшения для сложных макетов и вложенных слайверов
6️⃣ Доступность
✅
✅
✅ Увеличенные целевые области касания в
7️⃣ iOS и Android
✅ Поддержка iOS 26, Xcode 26, macOS 26
✅ Миграция на жизненный цикл
✅ Совместимость с размером страницы 16 КБ на Android
✅ Исправления утечек памяти и обновление NDK
8️⃣ Двигатель и DevTools
✅ Унификация рендереров CanvasKit и Skwasm
✅ Vulkan/OpenGL ES: стабильность и производительность
✅ Расширенные предварительные просмотры виджетов в IDE (MultiPreview, группы, кастомные аннотации)
✅ Исправления панели сети и Flutter Inspector
9️⃣ Устаревания и важные изменения
✅ Новый
✅ Устаревшие свойства
✅ Java 17 обязательна для Android
🌟 Flutter 3.38 — это меньше шаблонного кода, больше контроля над UI и продуктивность на всех платформах.
📌 Полезные ссылки:
Полный перевод статьи от нашего канала
Оригинал статьи
#flutter #dart #flutterpulse #FlutterPulsenews #mobiledev #crossplatform #flutterdev #dartlang #UI #DevTools #iOS #Android #webdev
Flutter 3.38 уже здесь, и он заставляет писать меньше, а создавать больше! 🔥 Обновление полно крутых фишек, улучшений UI и инструментов для веба, iOS, Android и десктопа.
✨ Главные фишки нового релиза
1️⃣ Сокращения точек в Dart
✅ Пишите лаконично:
.start вместо MainAxisAlignment.start и .all(8.0) вместо EdgeInsets.all(8.0)✅ Поддержка именованных конструкторов и улучшенная читаемость кода
2️⃣ Веб-разработка на новом уровне
✅ Конфигурационные файлы
web_dev_config.yaml для хоста, порта и заголовков✅ Настройки прокси прямо в проекте
✅ Улучшенная горячая перезагрузка, даже с несколькими браузерами
3️⃣ Фреймворк и UI
✅
OverlayPortal для гибкого отображения всплывающих виджетов✅ Предиктивные переходы назад на Android
✅ Расширенная интеграция с десктопом: информация о мониторах и окнах на Windows
✅ Исправления жизненного цикла виджетов и стабильность
ResizeImage4️⃣ Material & Cupertino
✅ Унификация API через
WidgetState✅ Новые возможности
Badge.count(maxCount), InkWell.onLongPressUp✅ Улучшения iOS-виджетов:
CupertinoSlidingSegmentedControl, CupertinoSheet✅ Полировка компонентов:
DropdownMenuFormField, SegmentedButton5️⃣ Прокрутка и Sliver
✅ Надёжная обработка жестов и точная навигация по фокусу
✅ Новый конструктор
SliverGrid.list✅ Улучшения для сложных макетов и вложенных слайверов
6️⃣ Доступность
✅
SliverSemantics для аннотаций слайверов✅
AutoComplete сообщает статус поиска✅ Увеличенные целевые области касания в
TimePicker7️⃣ iOS и Android
✅ Поддержка iOS 26, Xcode 26, macOS 26
✅ Миграция на жизненный цикл
UIScene✅ Совместимость с размером страницы 16 КБ на Android
✅ Исправления утечек памяти и обновление NDK
8️⃣ Двигатель и DevTools
✅ Унификация рендереров CanvasKit и Skwasm
✅ Vulkan/OpenGL ES: стабильность и производительность
✅ Расширенные предварительные просмотры виджетов в IDE (MultiPreview, группы, кастомные аннотации)
✅ Исправления панели сети и Flutter Inspector
9️⃣ Устаревания и важные изменения
✅ Новый
flutter.version.json вместо version✅ Устаревшие свойства
CupertinoDynamicColor✅ Java 17 обязательна для Android
🌟 Flutter 3.38 — это меньше шаблонного кода, больше контроля над UI и продуктивность на всех платформах.
📌 Полезные ссылки:
Полный перевод статьи от нашего канала
Оригинал статьи
#flutter #dart #flutterpulse #FlutterPulsenews #mobiledev #crossplatform #flutterdev #dartlang #UI #DevTools #iOS #Android #webdev
🔥5
🚀 Flutter Flight Plans 2025 — когда Flutter встречает ИИ и становится умнее тебя 😅
Google снова показала, кто тут задаёт темп! 🎯
На конференции Flutter Flight Plans (a.k.a. Flutter Forward 2025) команда представила обновления, от которых даже опытные Flutter-разработчики сказали: «Вау, это уже не просто фреймворк, это экосистема будущего!»
🤖 Flutter теперь с ИИ. Серьёзно.
Ты можешь просто сказать:
“Создай фитнес-приложение с карточками упражнений и трекингом прогресса.”
И всё — ИИ сам генерирует код, интерфейс и даже вызывает BuildRunner!
Flutter фактически стал интерактивным напарником, а не просто SDK.
🎨 GenUI — когда интерфейс рождается из мыслей
Модель создаёт JSON со схемой интерфейса, Flutter отрисовывает всё “на лету”, и ты сразу видишь результат.
✅ Можно тестировать превью виджетов без живого LLM.
✅ Появится система “оценок” UI, чтобы QA знал, что интерфейс соответствует ожиданиям.
✅ Разработчики планируют добавить инструменты для “обратной связи” — чтобы дебажить AI-интерфейсы в реальном времени.
Это буквально “Flutter meets AI Design”. 🤯
⚙️ Direct Native Interop (a.k.a. Hooks)
Никаких
Теперь — прямой доступ к нативным API, синхронный обмен памятью, мгновенные ответы от платформы.
Плагины станут быстрее, код — чище, а жизнь — проще.
🧩 Переименование “Native Assets” → Hooks: теперь это целая система build-хуков, а не просто способ добавлять ресурсы.
💡 Dart 3.10 и Flutter 3.38
📦 Новый анализатор кода
⚡️ Молниеносный Hot Reload
🧠 Dot shorthand syntax (obj?.method())
🛠 Поддержка iOS/macOS SDK 26
🧰 Обновлённые DevTools с предпросмотром виджетов прямо в IDE
Flutter становится не просто фреймворком, а полноценной средой, где даже QA можно делать без продакшн-сервера.
🌐 Jaspr и веб
Комьюнити не отстаёт!
Теперь даже официальные сайты Flutter и Dart Docs работают на Jasper 💪
Фреймворк использует DOM и CSS, компилируется в WebAssembly и позволяет создавать сайты с производительностью Flutter.
📱 Notebook LM — AI-приложение на Flutter
Google запустила Notebook LM, полностью написанное на Flutter.
Один код — две платформы (Android + iOS),
рейтинг ⭐️4.8, релиз в 170 странах 🌍
Flutter теперь — не только про кроссплатформу, но и про реальный AI UX.
🧠 Разработчики обсуждают будущее:
✨ Это не просто апдейт. Это новый этап эволюции Flutter.
ИИ теперь — не опция, а часть экосистемы.
Если ты Flutter-разработчик, тебе нужно увидеть это своими глазами 👇
👉 📰 Читать статью полностью
🎥 📺 Смотреть оригинальное видео на YouTube
💬 Обсудить в комментариях
— как тебе идея AI-UI?
#flutter #dart #flutterpulse #FlutterPulseYoutube #flutterpulsenews #genui #geminilicli #flutterdev #ai #mobiledev #programming #flutterforward #flightplans2025 #dartlang #googleflutter
Google снова показала, кто тут задаёт темп! 🎯
На конференции Flutter Flight Plans (a.k.a. Flutter Forward 2025) команда представила обновления, от которых даже опытные Flutter-разработчики сказали: «Вау, это уже не просто фреймворк, это экосистема будущего!»
🤖 Flutter теперь с ИИ. Серьёзно.
Gemini CLI позволяет создавать целые приложения через диалог с моделью.Ты можешь просто сказать:
“Создай фитнес-приложение с карточками упражнений и трекингом прогресса.”
И всё — ИИ сам генерирует код, интерфейс и даже вызывает BuildRunner!
Flutter фактически стал интерактивным напарником, а не просто SDK.
🎨 GenUI — когда интерфейс рождается из мыслей
GenUI — это новый подход: UI, который генерирует LLM.Модель создаёт JSON со схемой интерфейса, Flutter отрисовывает всё “на лету”, и ты сразу видишь результат.
✅ Можно тестировать превью виджетов без живого LLM.
✅ Появится система “оценок” UI, чтобы QA знал, что интерфейс соответствует ожиданиям.
✅ Разработчики планируют добавить инструменты для “обратной связи” — чтобы дебажить AI-интерфейсы в реальном времени.
Это буквально “Flutter meets AI Design”. 🤯
⚙️ Direct Native Interop (a.k.a. Hooks)
Никаких
MethodChannel. Никаких танцев с FFI.Теперь — прямой доступ к нативным API, синхронный обмен памятью, мгновенные ответы от платформы.
Плагины станут быстрее, код — чище, а жизнь — проще.
🧩 Переименование “Native Assets” → Hooks: теперь это целая система build-хуков, а не просто способ добавлять ресурсы.
💡 Dart 3.10 и Flutter 3.38
📦 Новый анализатор кода
⚡️ Молниеносный Hot Reload
🧠 Dot shorthand syntax (obj?.method())
🛠 Поддержка iOS/macOS SDK 26
🧰 Обновлённые DevTools с предпросмотром виджетов прямо в IDE
Flutter становится не просто фреймворком, а полноценной средой, где даже QA можно делать без продакшн-сервера.
🌐 Jaspr и веб
Комьюнити не отстаёт!
Jaspr — веб-фреймворк на Dart, созданный GDE-разработчиком Киллианом.Теперь даже официальные сайты Flutter и Dart Docs работают на Jasper 💪
Фреймворк использует DOM и CSS, компилируется в WebAssembly и позволяет создавать сайты с производительностью Flutter.
📱 Notebook LM — AI-приложение на Flutter
Google запустила Notebook LM, полностью написанное на Flutter.
Один код — две платформы (Android + iOS),
рейтинг ⭐️4.8, релиз в 170 странах 🌍
Flutter теперь — не только про кроссплатформу, но и про реальный AI UX.
🧠 Разработчики обсуждают будущее:
Что будет, когда UI станет динамичным, а LLM будет сам обновлять интерфейс?
Как тестировать то, что генерируется “на лету”?
Ответы уже ищут прямо в Flutter team — и приглашают комьюнити подключаться к экспериментам.
✨ Это не просто апдейт. Это новый этап эволюции Flutter.
ИИ теперь — не опция, а часть экосистемы.
Если ты Flutter-разработчик, тебе нужно увидеть это своими глазами 👇
👉 📰 Читать статью полностью
🎥 📺 Смотреть оригинальное видео на YouTube
💬 Обсудить в комментариях
— как тебе идея AI-UI?
#flutter #dart #flutterpulse #FlutterPulseYoutube #flutterpulsenews #genui #geminilicli #flutterdev #ai #mobiledev #programming #flutterforward #flightplans2025 #dartlang #googleflutter
👍2😱1
Узнай, как создать сложные и адаптивные интерфейсы с помощью понимания Viewport и ограничений во Flutter 🤔!
В этой статье вместе с Андреем, опытным Flutter Developer из Surf, мы разберемся в базовых понятиях, таких как Viewport, BoxConstraints и SliverConstraints 📚.
Понимание этих концепций - ключ к созданию предсказуемых и управляемых лейаутов 📈!
Хочешь узнать больше? Читай полную статью здесь📄
И не забудь подписаться на flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter 📱! #flutter #dart #flutterpulse #flutterpulsenews 🚀💻
В этой статье вместе с Андреем, опытным Flutter Developer из Surf, мы разберемся в базовых понятиях, таких как Viewport, BoxConstraints и SliverConstraints 📚.
Понимание этих концепций - ключ к созданию предсказуемых и управляемых лейаутов 📈!
Хочешь узнать больше? Читай полную статью здесь📄
И не забудь подписаться на flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter 📱! #flutter #dart #flutterpulse #flutterpulsenews 🚀💻
👍1
Привет, друзья! 👋 Сегодня мы поговорим о модификаторах переменных в Dart 🤔. Это базовая, но очень важная тема для любого Flutter-разработчика 📚.
Модификаторы переменных - это ключевые слова, которые задают переменной определенные правила поведения в программе 📊. Например, можно ли изменять значение переменной или в какой момент она инициализируется 🤔.
Давайте рассмотрим некоторые из наиболее часто используемых модификаторов 📝:
- var: заставляет переменную получить и зафиксировать тип данных при первом присвоении 📈.
- final: позволяет присвоить значение только один раз, последующие изменения невозможны 🔒.
- const: фиксирует значение, присваиваемое переменной, и инициализируется в момент компиляции программы 📆.
- static: привязывает переменную не к экземпляру, а к самому классу, что удобно при работе с абстрактными классами 📁.
- late: откладывает инициализацию переменной до того момента, пока ей не будет присвоено первое значение, но требует осторожности, чтобы избежать ошибок 🚨.
И самое интересное - модификаторы переменных можно комбинировать 🤝, чтобы сделать код максимально безопасным и оптимизировать программу 🚀.
Например, late final позволяет инициализировать переменную позже, но запрещает изменение, а static const создает константу класса в момент компиляции 📊.
Хотите узнать больше о модификаторах переменных и других интересных темах из мира Flutter? 🤔 Подписывайтесь на наш канал flutterpulse и оставайтесь в курсе последних новостей и обновлений 📣!
Ссылка на полную статью 📄
#flutter #dart #flutterpulse #flutterpulsenews 💻👍
Модификаторы переменных - это ключевые слова, которые задают переменной определенные правила поведения в программе 📊. Например, можно ли изменять значение переменной или в какой момент она инициализируется 🤔.
Давайте рассмотрим некоторые из наиболее часто используемых модификаторов 📝:
- var: заставляет переменную получить и зафиксировать тип данных при первом присвоении 📈.
- final: позволяет присвоить значение только один раз, последующие изменения невозможны 🔒.
- const: фиксирует значение, присваиваемое переменной, и инициализируется в момент компиляции программы 📆.
- static: привязывает переменную не к экземпляру, а к самому классу, что удобно при работе с абстрактными классами 📁.
- late: откладывает инициализацию переменной до того момента, пока ей не будет присвоено первое значение, но требует осторожности, чтобы избежать ошибок 🚨.
И самое интересное - модификаторы переменных можно комбинировать 🤝, чтобы сделать код максимально безопасным и оптимизировать программу 🚀.
Например, late final позволяет инициализировать переменную позже, но запрещает изменение, а static const создает константу класса в момент компиляции 📊.
Хотите узнать больше о модификаторах переменных и других интересных темах из мира Flutter? 🤔 Подписывайтесь на наш канал flutterpulse и оставайтесь в курсе последних новостей и обновлений 📣!
Ссылка на полную статью 📄
#flutter #dart #flutterpulse #flutterpulsenews 💻👍
🔥3
Обновленный корпоративный шаблон Friflex Flutter Starter! 🚀 Это значит, что ваше приложение станет еще более мощным и современным! 💻
Что нового? 🤔
✅ Обновили Flutter до версии 3.38.1+ - последней стабильной версии! 📈
✅ Добавили поддержку Dot Shorthands из Dart 3.10 - ваш код станет еще более чистым и читаемым! 📚
✅ Обновили правила анализатора - теперь проверка кода еще более эффективна! 🚫
✅ Добавили инструкции для AI-ассистентов - теперь вы можете работать с Copilot и Cursor еще более эффективно! 🤖
✅ Упрощена инициализация репозиториев - архитектура DI стала еще более удобной! 📁
✅ Обновили документацию - теперь у вас есть актуальная информация по всем модулям! 📖
✅ Добавили модуль обновлений - теперь поддерживаются hard и soft обновления приложения! 📈
✅ Обновили все зависимости до последних версий - ваше приложение станет еще более стабильным! 📈
✅ Улучшили систему тем и UI Kit - теперь ваше приложение выглядит еще более современно! 🎨
Хотите узнать больше? 🤔 Тогда переходите по ссылке и читайте подробную информацию о Flutter Starter! 📚
И не забудьте подписаться на канал flutterpulse 📣, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter и Dart! 🚀
Используйте хэштеги #flutter #dart #flutterpulse #flutterpulsenews, чтобы делиться своими мыслями и опытом с другими разработчиками! 💬
Начните свой проект прямо сейчас и ждем ваших pull requests с улучшениями и предложениями! 🚀
Что нового? 🤔
✅ Обновили Flutter до версии 3.38.1+ - последней стабильной версии! 📈
✅ Добавили поддержку Dot Shorthands из Dart 3.10 - ваш код станет еще более чистым и читаемым! 📚
✅ Обновили правила анализатора - теперь проверка кода еще более эффективна! 🚫
✅ Добавили инструкции для AI-ассистентов - теперь вы можете работать с Copilot и Cursor еще более эффективно! 🤖
✅ Упрощена инициализация репозиториев - архитектура DI стала еще более удобной! 📁
✅ Обновили документацию - теперь у вас есть актуальная информация по всем модулям! 📖
✅ Добавили модуль обновлений - теперь поддерживаются hard и soft обновления приложения! 📈
✅ Обновили все зависимости до последних версий - ваше приложение станет еще более стабильным! 📈
✅ Улучшили систему тем и UI Kit - теперь ваше приложение выглядит еще более современно! 🎨
Хотите узнать больше? 🤔 Тогда переходите по ссылке и читайте подробную информацию о Flutter Starter! 📚
И не забудьте подписаться на канал flutterpulse 📣, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter и Dart! 🚀
Используйте хэштеги #flutter #dart #flutterpulse #flutterpulsenews, чтобы делиться своими мыслями и опытом с другими разработчиками! 💬
Начните свой проект прямо сейчас и ждем ваших pull requests с улучшениями и предложениями! 🚀
У меня есть супер-новость для всех, кто интересуется интеграцией языковых моделей в свои приложения 🤖!
Вы знаете, как сложно оставаться в стороне от всего этого ажиотажа вокруг AI 🤯?
Сегодня я расскажу, как подключить ваше Flutter/Dart-приложение к локальному серверу Ollama с помощью пакета ollama_dart 📈!
Чтобы связать сервер
Подключить
Если вам нужно получать ответы по мере генерации, используйте
Вы можете выбирать разные версии моделей, настраивать параметры генерации и экспериментировать с разными моделями 🔬.
Чтобы работа с LLM через Ollama была максимально продуктивной, детализируйте промт, экспериментируйте с разными моделями и используйте стриминг для больших текстов 📈.
Хотите узнать больше? Ссылка на подробную статью 📎.
Не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter и Dart! 📱
#flutter #dart #flutterpulse #flutterpulsenews 🚀💻
Вы знаете, как сложно оставаться в стороне от всего этого ажиотажа вокруг AI 🤯?
Сегодня я расскажу, как подключить ваше Flutter/Dart-приложение к локальному серверу Ollama с помощью пакета ollama_dart 📈!
Ollama - это инструмент для запуска языковых моделей локально, на вашем компьютере 🖥, что дает вам приватность, полный контроль и отсутствие зависимости от облачных API ☁️. Чтобы связать сервер
Ollama с вашим приложением, используйте библиотеку ollama_dart, которая позволяет отправлять одиночные запросы, работать со стримингом ответов и использовать разные типы запросов 📊. Подключить
Ollama легко: импортируйте пакет, инициализируйте клиента и отправляйте запросы на генерацию текста 📝. Если вам нужно получать ответы по мере генерации, используйте
generateChatCompletionStream 📢. Вы можете выбирать разные версии моделей, настраивать параметры генерации и экспериментировать с разными моделями 🔬.
Чтобы работа с LLM через Ollama была максимально продуктивной, детализируйте промт, экспериментируйте с разными моделями и используйте стриминг для больших текстов 📈.
Хотите узнать больше? Ссылка на подробную статью 📎.
Не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter и Dart! 📱
#flutter #dart #flutterpulse #flutterpulsenews 🚀💻
🚀 Вышел Flutter 3.38.2 — важные стабильные фиксы
Свежий апдейт для всех Flutter-разработчиков
Команда Flutter выпустила патч-релиз 3.38.2, который закрывает ряд неприятных падений и проблем, связанных с widget preview, iOS-сборками и интеграцией через IDE. Если ты используешь превью виджетов или работаешь с iOS/Windows — обновление must-have.
🔥 Основные исправления
• Исправлен крэш widget preview при выходе
При анализе изменений в Dart-файле команда widget preview могла аварийно завершаться. Теперь — стабильно.
• Ошибка iOS-сборок “Improperly formatted define flag”
В add-to-app проектах Flutter мог падать при сборке на iOS. Исправлено.
• Widget preview не стартовал, если Flutter Web отключён
Теперь исключение не выбрасывается, превью корректно запускается.
• Крэш widget preview во время flutter pub get
Добавление или обновление плагинов могло ронять превью. Баг закрыт.
• Проблема с множественными crash-репортами
В некоторых сценариях один крэш создавал несколько отчётов. Теперь отчёт строго один.
• Visual Studio 2026 не поддерживается
Flutter теперь корректно сообщает о неподдерживаемой версии при сборке Windows-приложений.
• Widget preview не запускался без flutter pub get
Теперь поведение корректное и предсказуемое.
• Зависание при запуске на физическом iOS 26 из IDE
IDE устанавливала приложение, но запуск висел на белом экране. Баг исправлен.
✅ Итог
Flutter 3.38.2 — это стабильность, меньше крэшей и надёжная работа widget preview на всех платформах. Рекомендуется обновиться всем, особенно тем, кто работает с iOS и widget preview.
ChangeLog
#flutter #dart #flutterpulse #flutterupdate #flutterpulsenews #mobiledev #iosdev #androiddev
Свежий апдейт для всех Flutter-разработчиков
Команда Flutter выпустила патч-релиз 3.38.2, который закрывает ряд неприятных падений и проблем, связанных с widget preview, iOS-сборками и интеграцией через IDE. Если ты используешь превью виджетов или работаешь с iOS/Windows — обновление must-have.
🔥 Основные исправления
• Исправлен крэш widget preview при выходе
При анализе изменений в Dart-файле команда widget preview могла аварийно завершаться. Теперь — стабильно.
• Ошибка iOS-сборок “Improperly formatted define flag”
В add-to-app проектах Flutter мог падать при сборке на iOS. Исправлено.
• Widget preview не стартовал, если Flutter Web отключён
Теперь исключение не выбрасывается, превью корректно запускается.
• Крэш widget preview во время flutter pub get
Добавление или обновление плагинов могло ронять превью. Баг закрыт.
• Проблема с множественными crash-репортами
В некоторых сценариях один крэш создавал несколько отчётов. Теперь отчёт строго один.
• Visual Studio 2026 не поддерживается
Flutter теперь корректно сообщает о неподдерживаемой версии при сборке Windows-приложений.
• Widget preview не запускался без flutter pub get
Теперь поведение корректное и предсказуемое.
• Зависание при запуске на физическом iOS 26 из IDE
IDE устанавливала приложение, но запуск висел на белом экране. Баг исправлен.
✅ Итог
Flutter 3.38.2 — это стабильность, меньше крэшей и надёжная работа widget preview на всех платформах. Рекомендуется обновиться всем, особенно тем, кто работает с iOS и widget preview.
ChangeLog
#flutter #dart #flutterpulse #flutterupdate #flutterpulsenews #mobiledev #iosdev #androiddev
Продолжаем наше путешествие по миру Flutter и Dart 🌐, и сегодня мы погружаемся в практические аспекты работы с Viewport и ограничениями 📊.
В этой части мы рассмотрим реальные сценарии 📈, такие как двумерные виджеты на ленте прокрутки 🔄 и хитрости с
В специальных карточках 📁 вы найдёте примеры и пояснения от опытного разработчика Андрея 🙋♂️, которые помогут вам разобраться с прокручиваемыми списками 📜 и сложными лейаутами 📐.
Хотите узнать больше? 🤔 Тогда переходите по ссылке и читайте полную статью 📄!
И не забудьте подписаться на flutterpulse 📣, чтобы быть в курсе всех последних новостей и обновлений 📊 о Flutter и Dart 🚀!
#flutter #dart #flutterpulse #flutterpulsenews 🚀💻
В этой части мы рассмотрим реальные сценарии 📈, такие как двумерные виджеты на ленте прокрутки 🔄 и хитрости с
ListView и CustomScrollView 🤔, чтобы вы лучше поняли, как всё это работает вместе 🤝. В специальных карточках 📁 вы найдёте примеры и пояснения от опытного разработчика Андрея 🙋♂️, которые помогут вам разобраться с прокручиваемыми списками 📜 и сложными лейаутами 📐.
Хотите узнать больше? 🤔 Тогда переходите по ссылке и читайте полную статью 📄!
И не забудьте подписаться на flutterpulse 📣, чтобы быть в курсе всех последних новостей и обновлений 📊 о Flutter и Dart 🚀!
#flutter #dart #flutterpulse #flutterpulsenews 🚀💻
Привет, друзья! 👋 Сегодня у нас есть интересная новость о принципе открытости/закрытости (Open/Closed Principle) в программировании на Dart и Flutter 🤩.
Этот принцип гласит, что программные сущности должны быть открыты для расширения, но закрыты для модификации 🚫. Это означает, что вы должны иметь возможность добавлять новую функциональность без изменения существующего кода 📈.
Почему это важно? Чем больше кода мы изменяем, тем больше багов мы создаем 🐜. Каждое изменение существующего кода несет риск появления ошибок и требует повторного тестирования всех зависимых компонентов 🔄.
Следование OCP минимизирует эти риски, позволяя расширять функциональность без модификации уже работающего кода 💻.
Пример нарушения OCP и его правильного применения можно найти тут 📄.
Преимущества OCP включают:
✔️ Меньше ошибок при внесении изменений
✔️ Не требуется регрессионное тестирование существующего кода
✔️ Более простой процесс расширения функциональности
✔️ Повышение стабильности и надежности системы
Принцип открытости/закрытости — это основа стабильной и расширяемой архитектуры 🏗.
Подписывайтесь на наш канал flutterpulse, чтобы не пропустить новые статьи и новости о Flutter и Dart 📣!
#flutter #dart #flutterpulse #flutterpulsenews 🚀💻👍
Этот принцип гласит, что программные сущности должны быть открыты для расширения, но закрыты для модификации 🚫. Это означает, что вы должны иметь возможность добавлять новую функциональность без изменения существующего кода 📈.
Почему это важно? Чем больше кода мы изменяем, тем больше багов мы создаем 🐜. Каждое изменение существующего кода несет риск появления ошибок и требует повторного тестирования всех зависимых компонентов 🔄.
Следование OCP минимизирует эти риски, позволяя расширять функциональность без модификации уже работающего кода 💻.
Пример нарушения OCP и его правильного применения можно найти тут 📄.
Преимущества OCP включают:
✔️ Меньше ошибок при внесении изменений
✔️ Не требуется регрессионное тестирование существующего кода
✔️ Более простой процесс расширения функциональности
✔️ Повышение стабильности и надежности системы
Принцип открытости/закрытости — это основа стабильной и расширяемой архитектуры 🏗.
Подписывайтесь на наш канал flutterpulse, чтобы не пропустить новые статьи и новости о Flutter и Dart 📣!
#flutter #dart #flutterpulse #flutterpulsenews 🚀💻👍
👍1
Привет, друзья! 👋 Сегодня мы поговорим о двух важных понятиях в разработке на Flutter: Hot Reload и Hot Restart. 🤔 Эти механизмы используются при отладке кода и позволяют быстро применить внесенные изменения и посмотреть, как они работают. Но чем они отличаются? 🤔
⚡️ Hot Reload не перезапускает программу с нуля, а лишь «подмешивает» измененный код в уже запущенный процесс. Состояние приложения сохраняется. 🔥 Это происходит благодаря следующим шагам:
1. Вы вносите изменения в код и запускаете Hot Reload.
2. Flutter изучает, какие именно файлы вы изменили.
3. Затем перекомпилируются только важные части: библиотеки с измененным кодом, основная библиотека и все библиотеки, связанные с измененными.
4. Обновленный код преобразуется в специальный kernel-файл и поступает в Dart VM.
5. Dart VM подтягивает новые версии библиотек, при этом сохраняя текущее состояние приложения.
6. Flutter вызывает перестройку тех виджетов, которые были затронуты изменениями.
🔄 Hot Restart полностью перезапускает приложение, сбрасывая абсолютно все состояния и данные. 🔄 Это происходит следующим образом:
1. Вы вносите изменения в код и запускаете Hot Restart.
2. Dart VM очищает все сохраненные состояния, все значения переменных, пересоздает все объекты заново.
3. Заново запускается метод main().
4. Приложение запускается как будто с нуля, но не затрагивается нативный код и движок Flutter.
Итак, если вы хотите узнать больше о Hot Reload и Hot Restart, и как они работают под капотом, то переходите по ссылке и читайте полную статью! 📚
Не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter! 📱 #flutter #dart #flutterpulse #flutterpulsenews 💻👍
⚡️ Hot Reload не перезапускает программу с нуля, а лишь «подмешивает» измененный код в уже запущенный процесс. Состояние приложения сохраняется. 🔥 Это происходит благодаря следующим шагам:
1. Вы вносите изменения в код и запускаете Hot Reload.
2. Flutter изучает, какие именно файлы вы изменили.
3. Затем перекомпилируются только важные части: библиотеки с измененным кодом, основная библиотека и все библиотеки, связанные с измененными.
4. Обновленный код преобразуется в специальный kernel-файл и поступает в Dart VM.
5. Dart VM подтягивает новые версии библиотек, при этом сохраняя текущее состояние приложения.
6. Flutter вызывает перестройку тех виджетов, которые были затронуты изменениями.
🔄 Hot Restart полностью перезапускает приложение, сбрасывая абсолютно все состояния и данные. 🔄 Это происходит следующим образом:
1. Вы вносите изменения в код и запускаете Hot Restart.
2. Dart VM очищает все сохраненные состояния, все значения переменных, пересоздает все объекты заново.
3. Заново запускается метод main().
4. Приложение запускается как будто с нуля, но не затрагивается нативный код и движок Flutter.
Итак, если вы хотите узнать больше о Hot Reload и Hot Restart, и как они работают под капотом, то переходите по ссылке и читайте полную статью! 📚
Не забудьте подписаться на наш канал flutterpulse, чтобы быть в курсе всех последних новостей и обновлений из мира Flutter! 📱 #flutter #dart #flutterpulse #flutterpulsenews 💻👍