Дневник Flutter-разработчика
2.97K subscribers
330 photos
26 videos
11 files
302 links
Описание моего пути мобильного разработчика с нуля до junior, middle, senior
Download Telegram
День 80:

+ 4,49 часа программирования
(+ 2,30 практика
+ 2,19 теория
)

Занимаюсь слайдером. Больших изменений пока нет. Разместил кнопки по бокам для перехода между слайдами. Часа полтора этим занимался и не мог понять, что нужно просто Column заменить на Stack. Подсказали) Одно из больших преимуществ блога - новые знакомства👍

Посмотрел сегодня 2 интересных видео по Flutter:
1. https://youtu.be/mN8vGs3LweU видео о миграции с bloc 7 на bloc 8, так же затрагивается тема cubit. Интересное видео, рекомендую:)

2. https://www.youtube.com/watch?v=ULVuvzmnkos этим видео со мной поделились, но я еще не до конца его посмотрел. Тема очень интересная и актуальная. Про то, что лучше делать виджеты, а не функции. Так же рекомендую к просмотру:)

P.S. Уже 3 человека вдохновились моим блогом в инстаграм(я веду его в телеграм и инсте) и начали вести свои подобные. Я этому рад:)

Итого: 311 ч. 05 м.

Разработка приложения
Итого: 51 день

+1,14 часа английского
7, 8 серии 6 сезона сериала Друзья на англ.

Итого: 106 ч. 17 мин.

Спорт, здоровье
+ зарядка
+ силовая тренировка
54 дня придерживаюсь схемы 16-8(разделение приемов пищи на 2 окна: 16 часов - не ем, 8 часов - ем)
57 дней не ем сахар, мучное и фастфуд
6 дней встаю в 4:30 утра, ложусь спать к 10 вечера
Forwarded from Oh, my Flutter (Mikhail Zotyev)
Dart работает при помощи своей виртуальной машины. Наверное, понимание как она работает - это не тот навык, который нужен каждый день для работы, но в любом случае это будет полезно для поднятия общего уровня владения инструментом.

📌 Введение в Dart VM от Вячеслава Егорова доступно по ссылке.

#dart #документация
👍9💩2
#полезное

У Алексея вышло 2 хороших видео по темам Жизненный цикл элементов во Flutter и Как работает EventLoop в Dart


1️⃣ В видео:
https://www.youtube.com/watch?v=Lhr8w_wpmFY

🟢как Flutter перестраивает дерево элементов
🟢как работает жизненный цикл элемента на примере State у StatefulWidget
🟢локальные/глобальные ключи при перестройке дерева элементов
🟢способы оптимизации перестроения дерева
🟢const

Советы из видео по оптимизации:

🔜 Старайтесь избегать напрямую вызова метода setState. Если все-таки делаете это, старайтесь делать это как можно ниже к элементам вашего дерева. Лучше всего использовать для этого стейтменеджеры

🔜 Избегайте как можно больше изменений иерархии вашего виджета. Если вы будете делать это без использования глобальных ключей(в примере), то на каждый элемент будет происходить новое создание. То есть иерархия у вас была из 100 виджетов, вы всего-лишь добавили обёртку в виде какого-нибудь Center и иерархия из 100 виджетов у вас просто с нуля пересоздалась, если конечно у вас не было глобальных ключей. И вот представьте, что вы делаете такое изменение иерархии внутри анимации, которая происходит на каждый кадр


2️⃣ В видео:
https://www.youtube.com/watch?v=eoPrGo4ffUA

🟢как работает EventLoop в Dart
🟢за счёт чего достигается асинхронное выполнение
🟢логика EventLoop
🟢подробный разбор задачки с собеседований по EventLoop(в какой последовательности будут распечатаны сообщения на экране?)
🟢общий разбор изолятов
🟢связь между EventLoop - запросы в сеть - чтение с диска


3️⃣ Статья из видео:
Why Flutter? Почему Flutter?
https://habr.com/ru/articles/787174/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥233👍21
Forwarded from Flutter Pulse
🚀 Flutter 3.38: Новый уровень продуктивности для разработчиков!

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
Исправления жизненного цикла виджетов и стабильность ResizeImage

4️⃣ Material & Cupertino
Унификация API через WidgetState
Новые возможности Badge.count(maxCount), InkWell.onLongPressUp
Улучшения iOS-виджетов: CupertinoSlidingSegmentedControl, CupertinoSheet
Полировка компонентов: DropdownMenuFormField, SegmentedButton

5️⃣ Прокрутка и Sliver
Надёжная обработка жестов и точная навигация по фокусу
Новый конструктор SliverGrid.list
Улучшения для сложных макетов и вложенных слайверов

6️⃣ Доступность
SliverSemantics для аннотаций слайверов
AutoComplete сообщает статус поиска
Увеличенные целевые области касания в TimePicker

7️⃣ 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
👍18🔥64