Flutter Dev Podcast

Всё что вы хотели узнать про Flutter, но боялись спросить. Мы обсуждаем новости индустрии, делимся продакшн-опытом внедрения и интересными наблюдениями, приглашаем самых разнообразных гостей из различных IT-сфер, чтобы посмотреть на Flutter под разными углами. Подкаст выходит ежемесячно. Ведущие подкаста: - Евгений Сатуров (Flutter Teamlead Surf, член ПК Mobius); - Артём Зайцев (Flutter Lead Surf). Канал подкаста в Телеграме: https://t.me/flutterdevpodcast_news Чат подкаста в Телеграме: https://t.me/flutterdevpodcast

#48 Flutter для десктопа

Самая концентрированная история про разработку Flutter-приложения для десктопа из первых рук доступна к прослушиванию на всех платформах, которых теперь стало ещё больше: подкаст выходит на Deezer, YouTube, Звук и многих других площадках!В каком состоянии находится экосистема плагинов? Как обстоят дела с производительностью и что точно не стоит писать на Flutter для десктопа? Возможно ли создать приложение, которое будет выглядеть нативным для своей платформы? Какие особенности UX стоит учесть при создании десктоп-приложения? Помогает или мешает Flutter эти особенности обрабатывать? Стоит ли публиковать приложение в сторах? Сколько пота и крови нужно пролить, чтобы платформы перестали подозревать наше приложение в злонамерениях? Всё это и многое другое слушайте на вашей любимой платформе.У микрофона: Евгений Сатуров (Surf)Марк Абраменко (Surf)Игорь Кравченко (aso.dev)FLUTTERDEVPODCAST – минус 20% на годовую подписку на aso.dev!Главное:aso.devFlutter on Desktop (официальная документация)Упоминалось в выпуске:Пакет для мультиоконностиIssue мультиоконностиВидео про мультиоконность с Flutter ForwardUI-kit для macOSUI-kit для Windows Статья про подпись для Windows от ИгоряAction для нотаризации через fastlane Утилита для упаковки .dmgПакет для обновления десктоп-приложенийWonderous для macOS + исходный код на GithubЧат подкаста | Яндекс.Музыка | Spotify | YouTube | Звук | Apple Podcasts | Deezer | CastBox | Overcast | Pocket Casts | Podcast Addict | VK | Саундстрим

10-18
57:46

#47 CrossConf Awards

8 ноября в Москве состоится CrossConf – большое событие для всех, кто интересуется кроссплатформенной разработкой. Теперь это не только конференция, но ещё и премия. Мы поговорили с организаторами CrossConf обо всём, что творится на внутренней кухне мероприятия и узнали много интересного о том, как готовится конференция, как формируется программа, зачем вообще всё это проводится, какую ценность несёт и бизнесу, и спикерам, и каждому участнику. Не обошлось и без краткого ликбеза по текущему состоянию индустрии кроссплатформы в целом. 🎙 У микрофона: Евгений Сатуров (Surf), Александра Павлова (координатор CrossConf и CrossConf Awards), Алексей Гладков (автор проекта Mobile developer, соорганизатор CrossConf и CrossConf Awards). Упоминалось в выпуске: ↪️ CrossConf: https://crossconf.com/↪️ CrossConf Awards: https://awards.crossconf.com/ 📱 Mobile Developer (YouTube): https://www.youtube.com/c/MobileDeveloper📱 Mobile Developer (Telegram): https://t.me/mobiledevnewsТелеграм-канал подкаста: t.me/flutterdevpodcast_news

09-14
45:21

#46 Навигация

#46 Навигация во Flutter Кто бы мог подумать, что три взрослых человека могут целый час обсуждать, как переходить с одного экрана приложения на другой. Однако, не спешите делать поспешных выводов. Затронув тему навигации, мы провалились в глубокую кроличью нору, из которой существует множество выходов (но все они ведут не туда). Получилось интересно. Мы не только перемыли косточки наиболее популярным существующим решениям, но и разобрались в базовых понятиях. Сначала отделили роутер от навигатора, потом познакомились с "шаблонизаторам", выяснили, в какой момент они стреляют по ногам и кому, в конце поговорили про octopus и почему его рекомендуется использовать с большой осторожностью. Отдельный "бади бэг" нашелся и для оригинальной реализации навигации в самом фреймворке – ведь и к ней есть некоторые вопросики. 🎙 У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Михаил Матюнин (aka Fox). Упоминалось в выпуске: 👩‍💻 Navigation Graph (Android): https://developer.android.com/guide/navigation/design 👩‍💻 Navigation and routing (Flutter): https://docs.flutter.dev/ui/navigation 👉 go_router: https://pub.dev/packages/go_router 👉 auto_route: https://pub.dev/packages/auto_route 👉 beamer: https://pub.dev/packages/beamer 🐙 octopus: https://pub.dev/packages/octopus 🐙 Стрим по octopus: https://youtu.be/bIst8LmnrAk 🐙 Пример реализации навигации с помощью octopus: https://octopus.plugfox.dev 🐙 Пример реализации декларативной навигации без роутера: https://dartpad.dev/?id=053d267fe59bc65da0d6fb9e9dd7e374 Телеграм-канал подкаста: t.me/flutterdevpodcast_news

07-21
58:33

#45 Собеседования на позицию Flutter-разработчика

В прошлых двух выпусках мы говорили об образовании и изучении Flutter. Что следует после этого? Правильно, поиск работы! В этом выпуске вы услышите много классных историй и рекомендаций, ведь состав подкаста на этот раз полон людей с опытом как прохождения, так и проведения интервью. Поговорим о том, какой дополнительный профит можно извлекать из собеседований, какие вопросы по Flutter нам нравится задавать и на какие отвечать, поделимся опытом процесса отбора в Яндекс.Про и Surf, а также врываемся с особо острой темой — лайв-кодинг в интервью. А наш специальный гость, Миша Зотьев, расскажет о том, чем интервью в зарубежные компании отличается от наших.

03-27
01:29:26

#44 Как стать Flutter-разработчиком? Часть 2

В том же составе мы обсуждаем методы обучения, вооружившись которыми, вы значительно повышаете свои шансы совершить скачок в вашей карьере Flutter-разработчика. В этом выпуске мы раскрываем тайны успешного менторства: как наставничество может радикально изменить ваш путь в IT. Узнайте, что стоит за кулисами стажировок в в Яндекс и Surf, и получите уникальный взгляд на то, как именно мы формируем будущих профессионалов. Мы также откровенно поделимся, как высшее образование повлияло на наш профессиональный рост, и обсудим, действительно ли оно необходимо для успеха в современной Flutter-среде. И, наконец, мы раскроем, сколько времени реально нужно, чтобы перейти от новичка до получения первой работы в качестве Flutter-разработчика. Присоединяйтесь к нам в этом захватывающем путешествии и узнайте, как эти знания могут быть применены в вашей карьере! 🎙 У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Илья Вирник (Яндекс.Про), Сергей Кольцов (Яндекс.Про), Евгений Ёлчев (VK, LazyLoad Dart & Flutter). Упоминалось в выпуске: 🏄 Запишись на Flutter Study Jam 5 от Surf 19-22 февраля! https://studyflutterjam.surf.ru/ ❤️ Успей подать заявку на программу Яндекса и Сириуса до 5 февраля! https://yandex.ru/yaintern/siriusmobile ❤️ Хендбук по Flutter https://education.yandex.ru/handbook/flutter 📝 Статья Otus о проценте доходимости на образовательных курсах https://vc.ru/otus/408465-dohodimost-kursov-otus 🌐 Канал Lazy Load Dart & Flutter https://www.youtube.com/c/LearnDartFlutter Телеграм-канал подкаста: t.me/flutterdevpodcast_news

01-30
01:25:46

#43 Как стать Flutter-разработчиком? Часть 1

Как же здорово, что за 5 лет (!) существования подкаста вас, господа флаттеристы, стало так много! Каждый из вас – это целый мир. За каждым своя история взлётов и падений, открытий и трудностей, опущенных рук, пробитых потолков и покорённых вершин. Мы решили посвятить этот и следующий выпуск каждому из вас, чей путь был долог и тернист, но сделал вас именно теми, кто вы сейчас. Вместе с экспертами индустрии и активными участниками сообщества мы решили найти идеальную формулу, которая помогает нашему сообществу расти. Так как же всё-таки стать Flutter-разработчиком? Мыслей по этому поводу у нас оказалось так много, что мы разделили выпуск на две части. В первой поговорим о том, как мы сами пришли во Flutter, вспомним свой первый код и самые типичные ошибки начинающих разработчиков, выясним, подходит ли Dart и Flutter в качестве первой технологии для изучения, а также поделимся хорошими книгами, расскажем о нестандартных способах использования телеграм-чатов и даже вспомним про нейросети. 🎙 У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Илья Вирник (Яндекс.Про), Сергей Кольцов (Яндекс.Про), Евгений Ёлчев (VK, LazyLoad Dart & Flutter). Упоминалось в выпуске: - Опрос от Яндекса: https://forms.yandex.ru/surveys/13481852.ec64c2b20bb67f0459149999e0e4bbf38ea0c06a - Концепция Lifting State Up: https://docs.flutter.dev/data-and-backend/state-mgmt/simple#lifting-state-up - Книга Flutter Apprentice: https://www.kodeco.com/books/flutter-apprentice/v3.0 - Канал Lazy Load Dart & Flutter: https://www.youtube.com/c/LearnDartFlutter - Книга You don’t know JS: https://github.com/getify/You-Dont-Know-JS - Книга Теоретический минимум по Computer Science: https://www.labirint.ru/books/641481/ - Книга Совершенный код: https://www.chitai-gorod.ru/product/master-klass-sovershennyy-kod-2047176 - Книга Рефакторинг: https://www.ozon.ru/product/refaktoring-uluchshenie-proekta-sushchestvuyushchego-koda-342307415/ - Книга Паттерны объектно-ориентированного программирования: https://www.ozon.ru/product/patterny-obektno-orientirovannogo-proektirovaniya-211432335 - Плов в -15: https://t.me/c/1776483922/3263 Телеграм-канал подкаста: t.me/flutterdevpodcast_news

01-19
01:16:34

#42 DCM. Что нового?

Что если вы больше не будете тратить время на изнуряющую рутину и при этом сохраните, а может быть и улучшите качество кодовой базы вашего проекта? С этих предположений обычно и начинаются все разговоры о необходимости внедрения инструментов статического анализа в процесс разработки. Два года назад мы уже говорили о DCM, и сегодня сделаем это ещё раз. Как изменился проект и какими новыми функциональными возможностями обзавёлся? Куда он развивается и какие цели преследует его создатель? И, что немаловажно, как на пользователей повлияют изменения в системе монетизации? В этом ураганном выпуске мы обсудим не только нюансы технической реализации плагинов, но и неприглядную обратную сторону мира open-source, и даже выясним, как с помощью линтера вы и ваша команда можете заработать денег! У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Дмитрий Жифарский (DCM). 🌐 Официальный сайт DCM: https://dcm.dev/ Полезное по теме: 🌐 Flutter Linting and Linter Comparison: https://rydmike.com/blog_flutter_linting 🌐 Avoid these common Flutter mistakes with DCM: https://dcm.dev/blog/2023/04/17/avoid-common-mistakes-with-dcm/ 🌐 DCM return on investment (ROI): https://dcm.dev/blog/2023/04/23/dcm-return-on-investment/ 🌐 История разработчика core-js: https://github.com/zloirock/core-js/blob/master/docs/2023-02-14-so-whats-next.md Телеграм-канал подкаста: https://t.me/flutterdevpodcast_news

09-12
01:18:44

#41 Flutter Flow

С самого начала существования индустрии разработки ПО не прекращаются попытки энтузиастов автоматизировать и оптимизировать процесс написания кода. А что если лучший код – это тот код, который ты вообще не писал? Это смелое предположение вылилось в создание целого семейства "no-code" инструментов. С их помощью можно создавать программные продукты, вообще не притрагиваясь к коду. Примерно полгода назад Google вступил в игру и начал активно продвигать FlutterFlow – многофункциональный конструктор Flutter-приложений, который и сам написан на Flutter. Первое впечатление произвести получилось: интуитивный WYSIWYG-редактор, целая библиотека готовых UI-компонентов, возможности для коллаборативной работы. Но как это всё работает на самом деле? Можно ли действительно создать полноценное Flutter-приложение, используя только FlutterFlow? Сколько на самом деле кода надо написать при использовании "no-code"-решения? Стоит ли платить за недешёвую платную подписку? Кому стоит обратить внимание на FlutterFlow уже сейчас, а кому лучше держаться подальше? На эти и другие вопросы ищут ответ: Евгений Сатуров (Surf), Марк Абраменко (Surf), Данил Рябов (No-code Production). 🌐 Официальный сайт FlutterFlow: https://flutterflow.io/ Полезное по теме: 🌐 Официальное сообщество: https://community.flutterflow.io/ 🌐 Документация: https://docs.flutterflow.io/ 🌐 Официальный YouTube-канал: https://www.youtube.com/@FlutterFlow 🌐 Русскоязычные сообщества: https://t.me/flutterflow_chat и https://t.me/flutterflow_rus Телеграм-канал подкаста: https://t.me/flutterdevpodcast_news

08-16
01:11:15

#40 Flutter 3.7

Обсуждать крупные обновления Flutter – это своего рода традиция нашего подкаста. Обычно мы записываем такие выпуски с задержкой: 3.7 вышел в релиз в конце января. Но делаем это мы отнюдь не потому что долго не можем договориться о времени записи или сесть за план эпизода. Нам очень хочется не просто прочитать вам вслух статью "What's new in Flutter", а копнуть куда глубже. Копнув в этот раз, мы обнаружили очень крутое, но при этом крайне неоднозначное обновление. Только подумайте: 19 новых виджетов, долгожданные фоновые изоляты, превью принципиально нового графического движка, расширенная и дополненная поддержка кастомных шейдеров, целая россыпь улучшений для DevTools и многое другое! Столько шикарных апдейтов, которые... мы так и не смогли пока отправить в продакшн. Почему? Расскажем, как только вы нажмёте на "плей". У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Михаил Матюнин (Fox), Игорь Кравченко (aso.dev founder). 🌐 What's new in Flutter 3.7 https://medium.com/flutter/whats-new-in-flutter-3-7-38cbea71133c Полезное по теме: 🌐 Material 3 Demo https://flutter.github.io/samples/web/material_3_demo/ 🌐 Introducing background isolate channels https://medium.com/flutter/introducing-background-isolate-channels-7a299609cad8 🌐 Impeller https://github.com/flutter/engine/tree/main/impeller Упоминалось в эпизоде: 🌐 Демонстрация проблем с BackdropFilter во Flutter 3.7 https://github.com/mpkander/flutter_backdrop_filter_issue 🌐 flutter_shaders https://pub.dev/packages/flutter_shaders 🌐 Implementing iOS PlatformView BackdropFilter http://flutter.dev/go/ios-platformview-backdrop-filter-blur 🌐 Swift Migration for 1P Plugins https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#swift-migration-for-1p-plugins 🌐 https://t.me/flutterdevpodcast_news/97 Эпизод подкаста про Dart 3 🌐 Charles https://www.charlesproxy.com/ 🌐 pigeon https://pub.dev/packages/pigeon 🌐 ffigen https://pub.dev/packages/ffigen 🌐 jnigen https://pub.dev/packages/jnigen

03-17
01:02:33

#39 Flutter и PWA

PWA захватывают мир. Это может вас удивить, но сегодня почти каждый популярный ресурс поддерживает формат прогрессивных веб-приложений. Благодаря особой "прогрессивной магии", можно без особого труда заставить обычное веб-приложение вести себя как мобильное приложение. PWA можно написать на любом веб-фреймворке и даже на чистом HTML/CSS. Но что будет, если кроссплатформу помножить на кроссплатформу? Меняет ли Flutter правила игры на поле PWA или всего лишь неуклюже следует за трендами? Мы поговорили об этом с ведущими экспертами, вспомнив обо всех преимуществах и ограничениях PWA, ключевых суперспособностях Flutter, в поисках ответа на вопрос – а стоит ли вообще использовать Flutter для создания PWA? У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Алексей Родионов (Mercury Development), Дима Шевченко (Surf). 🌐 Русскоязычное сообщество, посвященное прогрессивным веб-приложениям https://t.me/pwa_ru 🌐 Гость подкаста Алексей Родионов в Twitter https://twitter.com/alexey_rodionov Полезное по теме: 🌐 Подборка полезных ссылок, связанных с PWA https://github.com/andreylipattsev/pwa-awesome-ru 🌐 Небольшой курс по основам PWA от Google https://www.udacity.com/course/intro-to-progressive-web-apps--ud811 🌐 PWA на Flutter из мобильного приложения: план Б, который нам сейчас так нужен https://youtu.be/YCfHLIw_pWk 🌐 FLUTTER PWA, WHAT AND HOW? https://www.youtube.com/watch?v=HBuVcP8P6U0 Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

02-05
01:04:02

#38 Dart и синтаксический сахар

Читаемость и лаконичность. Являются ли эти понятия взаимоисключающими или взаимодополняющими? Почему языки программирования так похожи друг на друга и как влияет на синтаксис современных языков программирования развитие инструментов разработки? Как и все разработчики мы часто задумываемся о том, почему языки, на которых мы пишем, выглядят именно так. А ещё нередко мы мечтаем о фичах, которых в нашем языке нет. Специально для этого выпуска мы проштудировали несколько очень объёмных документов по дизайну языка и выяснили, что ждёт Dart уже в обозримом будущем. Для этого мы глубоко окунулись в детали реализации Pattern Matching, попробовали простыми словами разобрать суть понятия "Exhaustiveness", а также выяснили, чего нам ждать от Records. У микрофона: Евгений Сатуров (Surf), Марк Абраменко (Surf), Светлана Кривошеева (Effective), Константин Федуров (Яндекс Про). Особые благодарности Артуру Шамсутдинову за новый саундтрек. Главное по выпуску: ❗️ Patterns Feature Specification https://github.com/dart-lang/language/blob/master/accepted/future-releases/0546-patterns/feature-specification.md ❗️ Records Feature Specification https://github.com/dart-lang/language/blob/master/accepted/future-releases/records/records-feature-specification.md ❗️ Exhaustiveness Checking https://github.com/dart-lang/language/blob/master/accepted/future-releases/0546-patterns/exhaustiveness.md По теме: 📃 Allow for shorter dot syntax to access enum values https://github.com/dart-lang/language/issues/357 📃 Add "Safe" (nullable) cast operator as? https://github.com/dart-lang/language/issues/399 📃 Destructuring https://github.com/dart-lang/language/issues/207 📃 The final keyword is too long https://github.com/dart-lang/language/issues/136 📃 multiple_result https://pub.dev/packages/multiple_result 📃 supercharged https://pub.dev/packages/supercharged 📃 kt_dart https://pub.dev/packages/kt_dart 📃 tuple https://pub.dev/packages/tuple 📃 Is syntactic sugar in programming languages bad? https://www.quora.com/Is-syntactic-sugar-in-programming-languages-bad Упоминалось в эпизоде: 👆 Андрей Бреслав — На плечах гигантов: языки, у которых учился Kotlin https://youtu.be/xH-RZ9YlxH0 👆 Вячеслав Егоров — Что за... Dart https://youtu.be/CN9p_rTDoPw Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

12-12
01:08:22

#37 Casual Games Toolkit

Интересно, кому и когда впервые в голову пришла идея использовать Flutter как платформу для создания интерактивных игр? Кто бы это ни был, он положил начало очень интересной истории, которая спустя годы превратилась во Flutter Casual Games Toolkit — официально рекомендованный набор инструментов для создания игр. https://soundcloud.com/flutterdevpodcast/37-casual-games-toolkit В этом выпуске подкаста мы разобрались из чего состоит "игровой набор разработчика", изучили возможности самых популярных игровых движков на Flutter, поговорили о главных различиях обычных Flutter-приложений и игровых, и даже попытались предсказать будущее. Давно тебя не было в уличных гонках. Включай выпуск! У микрофона: Евгений Сатуров (Surf), Игорь Кравченко, Артур Шамсутдинов (Surf). Главное по выпуску: ❗️ Flutter Casual Games Toolkit https://docs.flutter.dev/resources/games-toolkit ❗️ Flutter Games https://flutter.dev/games Интересно: ⚡️ win32_gamepad https://pub.dev/packages/win32_gamepad ⚡️ Flame https://docs.flame-engine.org/1.2.0/ ⚡️ Forge2d https://pub.dev/packages/forge2d ⚡️ Bonfire https://bonfire-engine.github.io/#/ ⚡️ SpriteWidget https://pub.dev/packages/spritewidget ⚡️ Rive https://pub.dev/packages/rive ⚡️ Egamebook от Filip Hráček https://egamebook.com/ Flame: ⚡️ Официальный сайт Flame https://flame-engine.org/ ⚡️ Много примеров поделок на Flame https://examples.flame-engine.org/ ⚡️ Руководство по Flame https://tutorials.flame-engine.org ⚡️ Хорошая статья про разработку на Flame https://medium.com/flutter-community/flutter-flame-step-1-create-your-game-b3b6ee387d77 3D: ⚡️ three.dart http://threedart.github.io/three.dart/ ⚡️ flutter_cube https://pub.dev/packages/flutter_cube Видео: 🎥 https://www.youtube.com/watch?v=NqjaLM0TWm0 🎥 https://www.youtube.com/watch?v=OGQD4E20f8s&list=PLiZZKL9HLmWPyd808sda2ydG-dhexNONV 🎥 https://www.youtube.com/watch?v=txDjL4bxF4M&list=PLiZZKL9HLmWOmQgYxWHuOHOWsUUlhCCOY 🎥 https://www.youtube.com/watch?v=fjNx0otqF-k&list=PLiZZKL9HLmWPL0URlq9WLng1A_g1LDuxx Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

07-27
57:10

#36 Flutter 3.0 & Dart 2.17

Flutter 3 подкрался незаметно... Но незаметным релизом от этого не стал. Цифру три в мажорной версии фрейморка смело умножайте на два — ровно столько платформ теперь официально поддерживает Flutter. https://soundcloud.com/flutterdevpodcast/36-flutter-30-dart-217 В этом выпуске подкаста мы подробно разобрали всё: от обновлений Flutter Web и Flutter Desktop до официального союза Flutter и Firebase, не забыли и про новые приятные фичи Dart 2.17. У микрофона: Евгений Сатуров (Surf), Александр Денисов (Epam), Михаил Зотьев (Surf), Александр Юрковский (Yandex Pro), Сурнин Даниил (ro:). Главное по выпуску: ❗️ Flutter 3.0 https://habr.com/ru/company/surfstudio/blog/666448/ ❗️ Dart 2.17 https://habr.com/ru/company/surfstudio/blog/667990/ Интересно: ⚡️ flutter_lints 2.0.0 https://pub.dev/packages/flutter_lints/versions/2.0.0 ⚡️ lints 2.0.0 https://pub.dev/packages/lints/versions/2.0.0 ⚡️ Самые запрашиваемые в Dart фичи https://github.com/dart-lang/language/issues?q=is%3Aissue+sort%3Areactions-%2B1-desc+ ⚡️ Новый вылет, связанный с интенсивным взаимодействием с приложением на старых iPhone https://github.com/flutter/flutter/issues/92550 Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

06-14
01:26:56

#35 Безопасность инфраструктуры для Flutter-разработки

Мы любим свою работу, мы любим Flutter, мы любим продукты, над которыми мы работаем. Уверен, если вы слушаете наш подкаст, тоже самое можете сказать про себя и вы. В этом выпуске мы поднимаем сложный и важный вопрос: каким реальным угрозам подвержена наша индустрия, и что мы можем предпринять, чтобы сохранить возможность быть Flutter-разработчиками, независимо ни от чего. https://soundcloud.com/flutterdevpodcast/35-bezopasnost-infrastruktury-dlya-flutter-razrabotki Мы подробно изучили вопрос разворачивания приватных pub-репозиториев, поговорили о политиках вайт-листинга сторонних зависимостей, составили перечень всех подверженных угрозам узлов инфраструктуры разработки, а также обратились к опыту наших китайских коллег, уже давно успешно работающих с Flutter из-за великого китайского файрвола. У микрофона: Евгений Сатуров (Surf), Илья Вирник (Яндекс.Про), Михаил Матюнин (ex-Ozon). Главное по выпуску: ❗️ Using Flutter in China https://docs.flutter.dev/community/china ❗️ Snyk Vulnerability Database https://security.snyk.io/ ❗️ Инструкция по кастомным пакетным репозиториям https://dart.dev/tools/pub/custom-package-repositories ❗️ Статья про хостинг приватных пакетных репозиториев https://medium.com/dartlang/hosting-a-private-dart-package-repository-774c3c51dff9 ❗️ mpp https://pub.dev/packages/mpp ❗️ unpub https://github.com/bytedance/unpub ❗️ Cloudsmith https://help.cloudsmith.io/docs/dart-repository ❗️ dart-lang/pub-dev https://github.com/dart-lang/pub-dev ❗️ Использование pub через Artifactory https://jfrog.com/blog/how-to-use-pub-repositories-in-artifactory/ ❗️ Прокси для документации от Fox https://api.flutter.plugfox.dev/ Новости: ⚡️ Релиз freezed 2 https://github.com/rrousselGit/freezed/blob/master/packages/freezed/CHANGELOG.md#200 ⚡️ Подведены итоги Flutter Puzzle Hack https://medium.com/flutter/announcing-the-flutter-puzzle-hack-winners-ae55f45c6363 ⚡️ Dependabot получил поддержку pub https://github.blog/changelog/2022-04-05-pub-beta-support-for-dependabot-version-updates/ Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

05-08
01:06:14

#34 Flutter for Windows

Экспансия продолжается: Flutter получил первое крупное обновление в этом году, а вместе с ним и стабильную поддержку первой десктопной платформы в линейке! Возможно, вы еще даже не подозреваете, насколько значительно расширилась экосистема фреймворка в связи с этим важным событием. Не поговорить об этом было бы недопустимо. Но как об этом поговорить, если мало что понимаешь в самой сути вопроса? Мы, как настоящие мобильные разработчики, никогда раньше ничего не писали под Windows, поэтому быстро смекнули, что к релизу Flutter for Windows мы совсем не готовы. Слишком много вопросов, ответы на которые еще только предстоит узнать. В этом выпуске, с помощью наших специальных гостей мы разбираемся в азах десктоп-разработки, разбираем интересные детали обновления фреймворка, а также пытаемся ответить на главный вопрос — есть ли у Flutter for Windows будущее? У микрофона: Евгений Сатуров (Surf), Александр Денисов (EPAM), Владимир Полюхович (EPAM), Александр Харитонюк (EPAM), Дмитрий Матюнин (НРД). Главное по выпуску: ❗️ Анонс Flutter for Windows https://medium.com/flutter/announcing-flutter-for-windows-6979d0d01fed ❗️ Пакет fluent_ui https://pub.dev/packages/fluent_ui ❗️ Пакет flutter_acrylic https://pub.dev/packages/flutter_acrylic ❗️ Пакет window_manager https://pub.dev/packages/window_manager ❗️ Пакет msix https://pub.dev/packages/msix ❗️ Пакет msix https://pub.dev/packages/msix Новости: ⚡️ Flutter 2.10 2.10 флаттер что нового https://medium.com/flutter/whats-new-in-flutter-2-10-5aafb0314b12 ⚡️ Dart 2.16 https://medium.com/dartlang/dart-2-16-improved-tooling-and-platform-handling-dd87abd6bad1 ⚡️ Появился Flutter SDK у Realm https://www.mongodb.com/developer/article/introducing-realm-flutter-sdk/ ⚡️ Виджеты Syncfusion адаптировали под Windows https://www.syncfusion.com/flutter-widgets ⚡️ Codemagic научился собирать Windows-сборки https://flutterci.com/ Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

03-13
01:20:14

#33 Flutter Roadmap 2022

Это первый выпуск подкаста в 2022 году, поэтому тему для него мы выбирали недолго. Пока все с интересом изучают первый в этом году стабильный релиз фреймворка (о чём мы обязательно поговорим чуть позже), мы обстоятельно изучили роадмап развития Flutter на 2022 год, перекопали issue-трекер, подняли архивы залежалых баг-репортов. Теперь мы совершенно точно знаем, каким будет Flutter в конце этого года и спешим поделиться этими знаниями с вами. В выпуске мы поговорим о том, насколько критично для продукта правильно интегрироваться с системным меню на macOS, почему на самом деле мы всё ещё стоим в начале большого пути по решению проблемы с джанками, а на десерт расскажем про приключения клавиатуры с русской раскладкой в далёком Маунтин-Вью. У микрофона: Евгений Сатуров (Surf), Михаил Матюнин (Ozon), Кравченко Игорь (zfx.com), Михаил Зотьев (Surf). Главное по выпуску: ❗️ Роадмап развития Flutter на 2022 год https://github.com/flutter/flutter/wiki/Roadmap ❗️ Та самая история про русскую клавиатуру https://github.com/flutter/flutter/issues/59065 ❗️ Всё про поддержку Material 3 в одном месте https://github.com/flutter/flutter/issues/91605 ❗️ Обновления Dart https://master-api.flutter.dev/flutter/dart-core/Finalizer-class.html https://master-api.flutter.dev/flutter/dart-core/WeakReference-class.html Новости: ⚡️ Flutter Puzzle Hack https://flutter.dev/events/puzzle-hack ⚡️ Видеозаписи докладов с DartUp 2021 https://www.youtube.com/c/WrikeTechClub/videos Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

02-03
01:12:28

#32 Финам

Что если мы скажем, что на Flutter можно написать приложение под одну из шести поддерживаемых платформ? Не удивительно, это уже и так давно известно. Но, наверняка, у вас найдется множество причин не сделать этого, потому что... ваш основной большой проект уже давно написан нативно? Такие аргументы понятны, но для ребят из Финам подобная ситуация не послужила причиной отказаться от идеи использовать Flutter в своём проекте. С гостями мы поговорили о том, как написать самостоятельный переиспользуемый Flutter-модуль и интегрировать его в мобайл, веб и даже десктоп. У микрофона: Евгений Сатуров (Surf), Михаил Матюнин (Ozon), Андрей Руденко (Финам), Дмитрий Строков (Финам), Александр Денисов (EPAM), Кравченко Игорь (zfx.com). Главное по выпуску: ❗️ Sunsetting React Native https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a ❗️ Ссылка на подкаст “Алгоритмическая торговля и HFT” https://soundcloud.com/podlodka/podlodka-225-algoritmicheskaya-torgovlya-i-hft ❗️ Серия статей-туториалов по использованию gRPC c Flutter/Dart https://habr.com/ru/post/589895/ ❗️ Подробнее о добавлении нескольких Flutter-модулей в один проект https://docs.flutter.dev/development/add-to-app/multiple-flutters или тут https://docs.google.com/document/d/1fdKRufqUzQvERcqNIUSq-GdabXc4k8VIsClzRElJ6KY/edit YaTalks - крупнейшая технологическая конференция Яндекса YaTalks, которая пройдет 3-4 декабря 2021 под эгидой «IT как новый космос». Приглашают каждого, кто пишет код или работает над продуктом. Вас ждут два дня интересных докладов, дебатов и дискуссий по 6 трекам Lifestyle, Backend, Frontend, ML, Mobile, Product с 80 экспертами из мировых и российских компаний. Регистрируйтесь по ссылке: https://clck.ru/YsJSX Новости: ⚡️ Обновился дизайн сайта https://flutter.dev/ ⚡️ DartPad теперь поддерживает сторонние пакеты https://medium.com/dartlang/announcing-package-support-for-dartpad-66a4b415970b ⚡️ Результаты опроса Q3 https://medium.com/flutter/about-web-community-and-code-samples-q3-2021-survey-results-b67f5b997dca ⚡️ Ранний анонс FlutterFire for Desktop (пока только для macOS) https://invertase.io/blog/announcing-flutterfire-desktop ⚡️ DartUp надвигается! 3-4 декабря https://dartup.ru/ ⚡️ Flutter Vikings 2-3 февраля 2022 года https://fluttervikings.com/ ⚡️ Запустили Flutter Meetup Network https://developers.googleblog.com/2021/10/introducing-flutter-meetup-network.html ⚡️ Добавили "лёгкие изоляты" https://github.com/dart-lang/sdk/issues/36097. Подробнее можно почитать тут: https://docs.google.com/document/d/1NwiZPWHd1te46eP2GWwIezDV9CdMQkODAMuF5kWdtLw ⚡️ Выкатили долгожданный Error.throwWithStackTrace https://api.dart.dev/dev/2.16.0-9.0.dev/dart-core/Error/throwWithStackTrace.html Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

11-22
01:21:48

#31 Способы хранения данных

Для нашего следующего выпуска мы решили выбрать тему сугубо практическую. Мы собрали все известные нам способы хранения данных: от записи в файл и key-value хранилищ, до полноценных БД, а затем, подробно рассмотрев достоинства и недостатки, нашли применение каждому... ну почти. Как понять, что настало время развернуть базу данных? Что выбрать: SQL или NoSQL? Стоит ли использовать старый-добрый shared_preferences или лучше заменить его на get_storage? Что выбрать для хранения данных, утечку которых не хотелось бы допустить? Вместе с нашими гостями мы подробно рассмотрели все самые популярных подходы и пакеты, обсудили аспекты производительности решений, не забыли поговорить о подводных камнях и других коварных нюансах, а также выяснили, почему важно обращать внимание на то, какое количество разных платформ поддерживает интересующий вас пакет даже в том случае, если вы не собираете ваш проект под каждую из них. У микрофона: Евгений Сатуров (Surf), Михаил Матюнин (Ozon), Андрей Смирнов (fin_hood). Главное по выпуску: ❗️ Официальный рекомендации по реализации хранения данных во Flutter https://flutter.dev/docs/cookbook/persistence ❗️ Key/Value-хранилища: - shared_preferences https://pub.dev/packages/shared_preferences - get_storage https://pub.dev/packages/get_storage ❗️ NoSQL базы данных: - hive https://pub.dev/packages/hive - objectbox https://pub.dev/packages/objectbox - sembast https://pub.dev/packages/sembast ❗️ SQL базы данных: - moor https://pub.dev/packages/moor - floor https://pub.dev/packages/floor - sqflite https://pub.dev/packages/sqflite ❗️ Secured-хранилища: - flutter_secure_storage https://pub.dev/packages/flutter_secure_storage - biometric_storage https://pub.dev/packages/biometric_storage - flutter_keychain https://pub.dev/packages/flutter_keychain ❗️ Remote-хранилища: - firebase_database https://pub.dev/packages/firebase_database - firebase_storage https://pub.dev/packages/firebase_storage Новости: ⚡️ Лучшие подкасты про Flutter https://www.freecodecamp.org/news/best-podcasts-for-flutter-developers/?utm_source=pocket_mylist ⚡️ Статья про Flutter Hot Reload https://medium.com/flutter/flutter-hot-reload-f3c5994e2cee Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

10-19
01:10:23

#30 Dart Code Metrics

На теме, которую мы выбрали для этого выпуска, что называется, все звёзды сошлись. Мы записали эпизод вечером, а уже на следующее утро прочитали твит про наших гостей от самого Chris Sells. Два опытнейших разработчика с богатым и насыщенным бэкграундом объединились, чтобы написать крутой инструмент, позволяющий блюсти чистоту кодовой базы вашего Dart- или Flutter-проекта. Пакет Dart Code Metrics умеет собирать важные метрики качества, отслеживать нарушения правил кодирования, а также предупредит вас о том, что в ваш код пробрался коварный анти-паттерн. Всё это присыпано несколькими вариантами использования (возможен запуск на любом CI/CD инструменте), прекрасными интеграциями с IDE, фантастической расширяемостью. Надо ли говорить, что инструмент опен-сорсный и совершенно бесплатный? Мы поговорили об истории создания Dart Code Metrics, о ключевых концепциях, подкапотном устройстве, а также обсудили планы развития решения. А пока, предлагаю вам делать ставки, как скоро пакет получит почётный статус Flutter Favorite. У микрофона: Евгений Сатуров (Surf), Александр Денисов (EPAM), Дмитрий Круцких (Surf), Дмитрий Жифарский (Push Play Labs). Главное по выпуску: ❗️ Репозиторий Dart Code Metrics https://github.com/dart-code-checker/dart-code-metrics ❗️ Официальный сайт Dart Code Metrics https://dartcodemetrics.dev/ ❗️ Тот самый твит https://twitter.com/csells/status/1420452187746930689 Новости: ⚡️ По опросу JetBrains Flutter стал самым популярным кроссплатформенным решением https://twitter.com/timsneath/status/1416210891377315841 ⚡️ Опубликован пакет multi_window. Он позволяет создавать новые окна в десктоп-приложении и коммуницировать с ними https://pub.dev/packages/multi_window ⚡️ Статья про эксперименты Dart и Wasm (кажется, мы говорим о будущем Flutter for Web) https://medium.com/dartlang/experimenting-with-dart-and-wasm-ef7f1c065577 ⚡️ Статья про оптимизацию платформенных каналов https://medium.com/flutter/improving-platform-channel-performance-in-flutter-e5b4e5df04af Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

08-07
01:10:14

#29 Wrike отказывается от Dart

Мы любим Flutter и Dart, поэтому стараемся каждый месяц приносить вам истории, которые вдохновляют. Но мимо некоторых событий мы просто не можем пройти. Компания Wrike, все эти годы бывшая, пожалуй, главным амбассадором языка Dart в России, а может быть и в мире, объявила об отказе от Dart и смене технологического стека. Мы пригласили ребят из Wrike, чтобы разобраться в причинах и поговорить о будущем. В этом выпуске есть всё: история успеха, последующее устаревание технологий, вынужденная миграция, боли при переходе и надежды на светлое будущее. Как собиралась команда на язык, который никто не знал? Какой вклад сделал Wrike в развитие Dart? Нужно ли лететь в Лос-Анджелес, чтобы заставить разработчиков пофиксить баг языка? Есть ли будущее у web-фреймворков на Dart? На что похожа миграция проекта в несколько миллион строк кода на другой язык и фреймворк? Стоит ли нам всем задуматься о том, каким мы видим наш стек через 5 лет? У микрофона: Евгений Сатуров (Surf), Александр Денисов (EPAM), Евгений Кот (Wrike), Иван Синеговский (Wrike). Главное по выпуску: ❗️ Wrike уходит от использования языка Dart. Часть 1 https://habr.com/ru/company/wrike/blog/551962/ ❗️ Wrike переходит с Dart на новый стек. Какой?https://habr.com/ru/company/wrike/blog/551964/ Новости: ⚡️ Новая статья в документации про подводные камни null safety https://dart.dev/tools/non-promotion-reasons ⚡️ Новая статья в документации про создание адаптивного UI https://flutter.dev/docs/development/ui/layout/building-adaptive-apps ⚡️ flutter_stripe в public beta https://pub.dev/packages/flutter_stripe ⚡️ Статья про реализацию передачи структур по значению в Dart FFI https://medium.com/dartlang/implementing-structs-by-value-in-dart-ffi-1cb1829d11a9 ⚡️ Результаты опроса Q1 2021 https://medium.com/flutter/which-factors-affected-users-decisions-to-adopt-flutter-q1-2021-user-survey-results-563e61fc68c9 ⚡️ Инструкция для тех, кто хочет запушить тесты своего пакета в официальный репозиторий https://github.com/flutter/tests Официальный канал подкаста: t.me/flutterdevpodcast_news Официальный чат подкаста: t.me/flutterdevpodcast

07-02
01:19:14

Tim R

Хм, а тут ссылок нет?

06-03 Reply

Mykola Tokariev

Какие нафиг иши мужик!?

11-29 Reply

Recommend Channels