🧨 Почему "бомбит" от Flutter на Google I/O 2025? — живой разбор стрима
На новом стриме MadTeacher подробно и без прикрас разбирает, почему презентация Flutter на Google I/O’25 вызвала столько противоречивых эмоций. Это не просто разбор анонсов — это концептуальная критика текущего направления развития Flutter и Dart. Ниже — суть, без таймкодов и воды:
💬 Ожидания и реальность
– Громких анонсов не ждали, но и того, что показали, оказалось маловато.
– Обещанный прогресс в декларативном UI, макросах и кросс-компиляции оказался сомнительным.
📊 Статистика и сообщество
– Flutter растёт: почти 25% новых приложений в App Store.
– Сообщество большое и активное, но это не всегда отражается в кач-ве развития фреймворка.
⚙️ Что показали?
– Новые фичи Dart и Flutter, включая duck short-circuiting, static access shorthand, билд-хуки и нативный интероп.
– Многое из этого — либо неполноценно реализовано, либо не отвечает ожиданиям разработчиков.
💥 Что не понравилось?
– Упрощённая и «кастрированная» аргументация в макросах.
– Отсутствие реального прогресса в Property Editor и кросс-компиляции.
– Слабый фокус на десктоп, несмотря на очевидный спрос.
– Flutter Web всё ещё нестабилен, несмотря на ресурсы, потраченные на него.
– Отсутствие декораторов, неразбериха с конструкторами и устаревание части фич.
🖥 Нативный интероп и билд-хуксы
– Перспективные инструменты, особенно на десктопе, но пока доступны в экспериментальном режиме.
– Без поддержки на мобильных — ограниченное применение.
📚 Обновления в обучении
– Курс «От новичка до падавана» обновлён и доступен с 20% скидкой.
– Осенью выйдет печатная версия книги по Flutter, в работе — вторая редакция по Dart и обновлённая книга по Go.
🔮 Итоги и выводы
– Dart и Flutter всё ещё мощные инструменты, но слишком много распыления усилий и недоработанных фич.
– Боль многих разработчиков — стабильность, понятные интерфейсы и реальные шаги вперёд.
– Автор не просто «бомбит» — он выступает за внятную эволюцию платформы, понятные цели и уважение к времени разработчиков.
#Flutter #flutterpulse #Dart #GoogleIO #FlutterWeb #FlutterDesktop #Критика #Разработка #Мнение #Программирование #Stream #TechTalk #FlutterКнига
На новом стриме MadTeacher подробно и без прикрас разбирает, почему презентация Flutter на Google I/O’25 вызвала столько противоречивых эмоций. Это не просто разбор анонсов — это концептуальная критика текущего направления развития Flutter и Dart. Ниже — суть, без таймкодов и воды:
💬 Ожидания и реальность
– Громких анонсов не ждали, но и того, что показали, оказалось маловато.
– Обещанный прогресс в декларативном UI, макросах и кросс-компиляции оказался сомнительным.
📊 Статистика и сообщество
– Flutter растёт: почти 25% новых приложений в App Store.
– Сообщество большое и активное, но это не всегда отражается в кач-ве развития фреймворка.
⚙️ Что показали?
– Новые фичи Dart и Flutter, включая duck short-circuiting, static access shorthand, билд-хуки и нативный интероп.
– Многое из этого — либо неполноценно реализовано, либо не отвечает ожиданиям разработчиков.
💥 Что не понравилось?
– Упрощённая и «кастрированная» аргументация в макросах.
– Отсутствие реального прогресса в Property Editor и кросс-компиляции.
– Слабый фокус на десктоп, несмотря на очевидный спрос.
– Flutter Web всё ещё нестабилен, несмотря на ресурсы, потраченные на него.
– Отсутствие декораторов, неразбериха с конструкторами и устаревание части фич.
🖥 Нативный интероп и билд-хуксы
– Перспективные инструменты, особенно на десктопе, но пока доступны в экспериментальном режиме.
– Без поддержки на мобильных — ограниченное применение.
📚 Обновления в обучении
– Курс «От новичка до падавана» обновлён и доступен с 20% скидкой.
– Осенью выйдет печатная версия книги по Flutter, в работе — вторая редакция по Dart и обновлённая книга по Go.
🔮 Итоги и выводы
– Dart и Flutter всё ещё мощные инструменты, но слишком много распыления усилий и недоработанных фич.
– Боль многих разработчиков — стабильность, понятные интерфейсы и реальные шаги вперёд.
– Автор не просто «бомбит» — он выступает за внятную эволюцию платформы, понятные цели и уважение к времени разработчиков.
#Flutter #flutterpulse #Dart #GoogleIO #FlutterWeb #FlutterDesktop #Критика #Разработка #Мнение #Программирование #Stream #TechTalk #FlutterКнига
👍2
Вложенная навигация с Go_Router
Давайте создадим боковую панель с Flutter Web и go_router 🤔
Вместо того, чтобы напрямую добавлять все маршруты (GoRoute), мы обернём их в поднавигацию 📦
Мы обернём все подмаршруты в StatefulShellRoute, чтобы управлять состоянием поднавигации 🔄
Для каждого подмаршрута у нас будет StatefulShellBranch, который может содержать несколько маршрутов 🌐
Каждый элемент будет иметь свой собственный стек навигации 📚
Оцените новую рубрику 👍👏! Все подобные новости можно найти по хэштегу #FlutterPulseTips. Не забудьте подписаться и следить за новыми советами 🔔
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #FlutterTips #GoRouter #NestedNavigation #FlutterWeb
Давайте создадим боковую панель с Flutter Web и go_router 🤔
Вместо того, чтобы напрямую добавлять все маршруты (GoRoute), мы обернём их в поднавигацию 📦
Мы обернём все подмаршруты в StatefulShellRoute, чтобы управлять состоянием поднавигации 🔄
Для каждого подмаршрута у нас будет StatefulShellBranch, который может содержать несколько маршрутов 🌐
Каждый элемент будет иметь свой собственный стек навигации 📚
import 'package:go_router/go_router.dart'; // Импорт библиотеки go_router
GoRouter generateRouter() {
return GoRouter(
routes: [
// Страница без боковой панели
GoRoute(
name: 'signin',
path: '/signin',
builder: (context, state) => const SignInPage(),
),
// Страница с боковой панелью
StatefulShellRoute(
parentNavigatorKey: navigatorKey, // Ключ навигатора родительского маршрута
// Боковая панель будет отображаться слева
builder: (context, state, navigationShell) => Row(
children: [
SideBar(state: state), // Боковая панель
Expanded(child: navigationShell), // Содержимое навигации
],
),
// builder будет вызван, когда маршрут активируется
// navigationShell - виджет, который отображает содержимое маршрута
// Он будет показывать текущую последнюю страницу стека навигации для каждой ветки
navigatorContainerBuilder: (
BuildContext context,
StatefulNavigationShell navigationShell,
List<Widget> children,
) {
if (children.isEmpty) {
return SizedBox(); // Пустой контейнер, если нет дочерних элементов
}
return Scaffold(
body: children[navigationShell.currentIndex], // Отображение текущего дочернего элемента
);
},
branches: [
StatefulShellBranch(
routes: [
GoRoute(
name: 'users',
path: '/users',
builder: (context, state) => const UsersPage(),
),
GoRoute(
name: 'user profile',
path: '/users/:userId',
builder: (context, state) => const UserProfilePage(),
),
],
),
StatefulShellBranch(
routes: [
GoRoute(
name: 'notifications',
path: '/notifications',
builder: (context, state) => const NotificationsPage(),
),
],
),
],
),
],
);
}
Оцените новую рубрику 👍👏! Все подобные новости можно найти по хэштегу #FlutterPulseTips. Не забудьте подписаться и следить за новыми советами 🔔
#flutter #dart #flutterpulse #FlutterPulseTips #MobileDevelopment #FlutterTips #GoRouter #NestedNavigation #FlutterWeb
👍3👨💻1