Дневник Flutter-разработчика
3.12K subscribers
321 photos
22 videos
10 files
288 links
Описание моего пути мобильного разработчика с нуля до junior, middle, senior
Download Telegram
Please open Telegram to view this post
VIEW IN TELEGRAM
🟥 Что делать в Сочи в марте? Писать мобильные приложения, конечно же!

С 18 по 29 марта в Сочи пройдёт научно-практический интенсив по мобильной разработке от Young&&Yandex и Университета «Сириус».

На смене будет представлено два направления: нативная разработка на iOS и мультиплатформенная разработка на Flutter.

Что вы успеете в ходе интенсива

🔶 Прокачаетесь в хард-скилах: создадите полноценные мобильные приложения под руководством ведущих разработчиков Яндекса и узнаете о современных инструментах разработки.
🔶 Поработаете над софтами: научитесь организовывать работу и ресурсы в команде, а также получите опыт совместной разработки.
🔶 Классно проведёте время: вас ждёт нетворкинг, природа Сочи — горы и море, а ещё выпускной в офисе Яндекса.

Что вы получите после прохождения интенсива

🔶 Качественный пет-проект в ваше портфолио.
🔶 Грамотное резюме: вы пройдёте мастер-класс по оформлению резюме, что будет полезно на любом этапе вашей карьеры.
🔶 Пробное собеседование в Яндекс: лучших мы пригласим стать сотрудниками.

Кто может принять участие в интенсиве

😀 Мы приглашаем принять участие в отборе студентов всех курсов бакалавриата, магистратуры и аспирантуры, интересующихся современными технологиями создания приложений на iOS или Flutter. Подробнее о необходимых навыках можно узнать здесь.

Обучение, проезд, проживание и питание на время смены предоставит Университет «Сириус».

💫 Успейте подать заявку и решить тестовое до 4 февраля включительно: https://clck.ru/37ESJJ
Please open Telegram to view this post
VIEW IN TELEGRAM
📲Навигация в приложении

На всех проектах, в разработке которых я участвовал(4 проекта), для навигации использовался auto_route
С ним не было никаких проблем до недавних пор

Сейчас, к примеру, WillPopScope deprecated и необходимо использовать PopScope. Но у auto_route с этим проблемы.
Ишью от 17 ноября: https://github.com/Milad-Akarie/auto_route_library/issues/1799
Плагин не обновлялся 3 мес, ишью не закрываются

Мы активно начали переходить на go_router

Основные причины перехода:
🟢разработан flutter.dev, в отличие от одного разработчика auto_route
🟢рекомендуется гуглом, имеет Flutter Favorite
🟢активная поддержка

Статья коллеги(первая часть) по go_router:
https://habr.com/ru/companies/friflex/articles/787528/
Please open Telegram to view this post
VIEW IN TELEGRAM
🍏Apple разрешила установку приложений не из App Store на iOS. Пока только для Евросоюза

В связи с вступлением в силу нового Закона о цифровых рынках в Евросоюзе, техногигаты должны открыть свои услуги и платформы другим компаниям и разработчикам. Изменения должны быть внесены до 6 марта 2024 года включительно.

🟢Все изменения для разработчиков можно посмотреть здесь:
https://developer.apple.com/support/dma-and-apps-in-the-eu/
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Я - team lead крупного проекта☺️
🎉 Dart 3.3
https://medium.com/dartlang/dart-3-3-325bf2bf6c13

Что нового:
🟢добавлены Extension types. Представляют собой оболочки для типов, но без дополнительных, связанных с этим накладных расходов. Предназначены прежде всего для оптимизации кода, чувствительного к производительности, особенно при взаимодействии с хост-платформами.
(подробнее в документации: https://dart.dev/language/extension-types)
🟢поддержка WebAssembly во Flutter Web(пока экспериментальная)
🟢представлена новая модель взаимодействия с
JavaScript библиотеками и web - dart:js_interop
🟢улучшение библиотек браузера(в дальнейшем поддержка будет сосредоточена на package:web)
🟢бета-версия Google AI Dart SDK.
Новый пакет google_generative_ai и вспомогательные ресурсы позволяют создавать собственные генеративные функции на основе искусственного интеллекта в вашем приложении через интеграцию Dart с API Gemini.
РФ нет в доступных для использования регионах


🎉 Flutter 3.19
Много изменений:
https://medium.com/flutter/whats-new-in-flutter-3-19-58b1aae242d2


🎉 Так же представлен Roadmap развития Flutter на 2024 год:
https://github.com/flutter/flutter/wiki/Roadmap
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное

У Алексея вышло 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
Please open Telegram to view this post
VIEW IN TELEGRAM
Плюсы и минусы должности TeamLead’а


Начнем с плюсов:

🟢Ответственность. По большей части это плюс, так как она хорошо прокачивает тебя как в софт, так и в хард скилах. Об этом ниже

🟢Быстро растешь в софт скилах. Постоянное общение с командой, понимание как что взаимодействует. Обсуждения с аналитиком при постановке задачи, постановка задач, декомпозиция, их распределение - все это отличино тебя прокачивает

🟢Быстро растешь в хард скилах. Ты должен понимать на моменте обсуждения задачи, как должна работать фича, как происходит взаимодействие с бекендом, какие могут возникнуть проблемы. Ты быстро фиксишь критические баги, решаешь проблемы. Все это делаешь, обсуждая с бекендом, благодаря чему намного лучше понимаешь, как что работает

🟢Ты пишешь код лучше, так как теперь ты отвечаешь за проект и при реализации фичи/фиксе бага задумываешься, на что твоё решение может ещё повлиять в рамках проекта

🟢Построчное Code Review, так как теперь ты отвечаешь за качество кода на проекте) Code review и насмотренность хорошо прокачивают хард скилы. Знаю, что во многих компаниях несерьёзно подходят к этому процессу(плохое решение).
Это так же отличный способ лучше понимать проект, так как ты видишь, какой новый код/фичу добавили

🟢Ты занимаешься распределением задач. Хочешь, бери интересную тебе фичу, делегируй не интересную. Но конечно чаще стараешься, чтоб все были довольны)

🟢Предложения по улучшениям от команды приходят к тебе:) Чаще всего это интересные предложения по улучшению


Минусы:

🟠Ответственность - как плюс, так и минус)

Из этого пункта так же вытекает несколько подпунктов:
🔜Спрос с тебя. Возникающие проблемы, баги. Их быстрый фикс и оперативное решение проблем - на тебе
🔜Срочные вечерние сборки в сторы(редко, но бывает)
🔜Ответственность сильно тормозит тебя в рефакторинге. Многое хотелось бы переписать/выпилить, но заводя задачи на такой рефакторинг глубоко задумываешься, чем это может обернуться и не увеличит ли это количество крашей приложения.

🟠Созвоны. Их много и как раньше - быть на созвоне и параллельно работать - не получится. Почему? 1 пункт - ответственность) Ты должен быть в курсе, что на беке происходит и тд., чтоб не было проблем в мобильном приложении

🟠Часто бывает, что занимаешься фичой/багом, погружён в процесс и созвон или обсуждение выбивает тебя из колеи. Запланированное время на фичу увеличивается
Please open Telegram to view this post
VIEW IN TELEGRAM
#достижение

Финансово помогаю родителям. Теперь они могут не работать, а отдыхать на пенсии, заниматься хобби☺️
Please open Telegram to view this post
VIEW IN TELEGRAM
Привет хочу поделиться папками с чатами и каналами по Flutter.
Каналы.
Чаты.
Если что-то пропустил, то добавляйте в комментарии.
Так же хочу попросить вас проголосовать за канал, так-как хочется дальше его развивать.
https://t.me/boost/FlutterForDev
Please open Telegram to view this post
VIEW IN TELEGRAM
deeplink_select_mWeb2app_3 (1).pdf
43.1 KB
🟢Нюанс второго варианта

Если будете реализовывать оплату SberPay по диплинку в Сбер, то:

для android схема должна быть sberpay:
пример - sberpay://invoicing/v2?bankInvoiceId=e948fbdc1e1121&operationType=app2app

для ios схема должна быть btripsexpenses:
пример - btripsexpenses://sbolpay/invoicing/v2?bankInvoiceId=e948fbdc1e1121&operationType=app2app

Дока по диплинку от Сбера(файл)
Please open Telegram to view this post
VIEW IN TELEGRAM
Релиз Flutter 3.22 и Dart 3.4 🎉

⚡️Flutter 3.22, что нового:

🟢WebAssembly доступен в стабильной версии. Он улучшает производительность, делает анимацию и переходы более плавными
🟢Vulkan для Android делает графику более плавной и повышает производительность
🟢Оптимизированы эффекты размытия и сложного рендеринга путей(переход на Stencil‑then‑Cover)
🟢Сократили необходимость приведения типов в API-интерфейсах 2D-графики
🟢Поддержка функции прогнозируемого возврата(скоро будет введена на Android). Пользователи смогут просматривать предыдущий маршрут или даже предыдущее приложение
🟢Улучшения Platform views

И другое. Подробнее - в переводе статьи от Flutter Tech Lead Юрия Петрова


⚡️Dart 3.4, что нового:

🟢Предварительная версия макроса JsonCodable для сериализации и десериализации JSON. Конечная цель — возможность создавать свои собственные макросы
🟢Доступна полная поддержка WebAssembly (Wasm) для веб
🟢Исправлено более 50% ошибок анализатора автодополнения кода

И другое. Подробнее - в переводе статьи от Flutter Tech Lead Юрия Петрова
Please open Telegram to view this post
VIEW IN TELEGRAM
📚В издательстве Питер вышла книга «Основы Dart»

Книга «Основы Dart» адресована тем, кто интересуется этим удивительным языком программирования. Вы узнаете об истории создания, синтаксисе и особенностях языка, таких как встроенные типы данных, и многом другом. В главе 2 вас ждет проект, который будет изменяться и расти вместе с вашими знаниями и навыками, а к главе 6 преобразится в полноценное клиент-серверное приложение. После каждой новой итерации проекта, вас будут ждать предложения по внесению изменений в его кодовую базу, что позволит прокачать свои hard-скиллы. Исходный код рассматриваемых в книге примеров можно найти в GitHub-репозитории автора (весь код в книге соответствует Dart 3.4).

Автор — Станислав Чернышев, кандидат технических наук, доцент кафедры информатики СПБГЭУ и кафедры прикладной информатики СПбГУАП, автор канала MADTeacher, спикер @crossconf и других конференций.

🔜 Доступна в 2 форматах:
- Бумажная книга
- Электронная книга

🎁 По промокоду «Бумажная книга» скидка 40% до 2 июня:)
Please open Telegram to view this post
VIEW IN TELEGRAM
Получил книгу:)

Успел купить по хорошей скидке из поста выше🙂
Заказали?) Если да, как вам книга?

Изучаю, позже напишу своё мнение

Friflex и @petrovyuri уделили половину обложки👍
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓 Коррецкия зрения. Первый в жизни VIP😭

У меня зрение -4.5. На улице ношу линзы, дома очки. И очки и линзы мне надоели(уже как 12 лет ношу), решил сделать коррекцию зрения🤓

Давно был наслышан о Чебоксарский филиал МНТК «Микрохирургия глаза» им. акад. С.Н. Федорова, так как в него съезжаются люди с проблемами зрения со всей страны и отзывы хорошие(от знакомых).
В него и обратился:)

🔜 Запись:
Заранее записался на диагностику. За месяц! Свободные записей на раньше - нет)

В МНТК есть 2 варианта даигностики - VIP и обычная.
Выбрал VIP🟡. Первый в жизни😄
Стоит 7990 рублей


🔜 VIP диагностика:
Основное её преимущество - не нужно ждать в очередях. А людей там… Не протолкнуться)
При обычной диагностике нужно проходить обследование в разных кабинетах на 6 этажах(есть лифт)

При VIP тебя ведут в один большой кабинет, где обследуют только тебя. Если нужно в другой кабинет, ведут в него за руку, минуя любую очередь

🔜 Как это было у меня:
1️⃣ Записался заранее(за месяц). Условие - нельзя носить линзы как минимум 2 недели.

2️⃣ За день позвонили, уточнили, приеду ли я и иногородний ли

3️⃣ Приехал. В регистратуре была небольшая очередь, в которой я зачем-то отстоял(не коренной вип😂 На сайте написано, что нужно пройти вне очереди и сказать время приема и что VIP диагностика).
Мне сказали подожать на диванчике, меня проводят.

4️⃣ Через пару минут подошла девушка, уточнила мои данные и провела меня в кабинет. В кабинете были только врачи, я и разные аппараты для обследования.
Заполнили бумаги - разного рода данные и только на этом этапе нужно было оплатить 7990.

5️⃣ Оплатил, начали обследовать. Большинство обследований было в этом кабинете, 3 было на другом этаже, в который вели без очереди.

6️⃣ После основного количества обследований была первая консультация со специалистом. Задавала уйму вопросов о моих ожиданиях и не было ли каких-либо травм и тд.

7️⃣ Сказал, что нужна коррекция зрения. Она проверила данные, говорит - проблем не вижу, давайте ещё некоторые обследования проведём и дальше к хирургу, который проконсультирует уже по операции.

8️⃣ Для следующих обследований потребовалось закапать глаза для расширения зрачков.
Причина - мышцы были напряжены и это было одно зрение, мышцы нужно было расслабить и проверить ещё раз.

Глаза закапывали в 3 этапа по 5-10 минут. Предупредили, что в глазах будет туман. К такому я готов не был, тк такое «туманное счастье» на 4-6 часов😂

9️⃣ Буквально за руку водили по кабинетам(чему я рад, так как не особо ориентировался после капель и не представляю, как бы сидел в очередях) для ещё ряда обследований.



❗️👇 Итог, если лень читать
🔟 Итоговый кабинет - хирург. Здесь можно было задавать любые вопросы о предстоящей коррекции.

Так как я 12 лет носил линзы, роговица тонкая и мне предложили FemtoLasik.

Операция длится около 15 минут и бОльшая часть этого времени тратится на работу с пациентом) Как она сказала, нужно будет отключить мозг и расслабиться, строго выполнять указания хирурга, так как все делает лазер - если чуть вправо-влево, операция или отложится на минимум 3 месяца, либо дальше будет невозможна.

Сразу сказал, что я айтишник и спросил, когда смогу работать в привычном темпе👨‍💻 Сказала, что реабилитация 2 недели. Нельзя будет смотреть в пк/гаджеты, смотреть телевизор и тд. Можно слушать аудиокниги и гулять. 2 недели😅

Через 2 недели можно вернуться в привычный режим. Но! Сказала интересную мысль
Вы посчитаете, что у вас все отлично - идеальное зрение, вы здоровы. Но это не так.
«Не так», так как теперь будут ограничения за пк/гаджетами) 45 минут работы - перерыв.

Причина, как она сказала, в том, что мозг быстро начнёт адаптировать зрение под расстояние монитора и нагрузку и если не делать перерывы, высока вероятность вернуть стандартное для программиста зрение -1.5. Из-за этого они не особо рекомендуют коррекцию айтишникам, если те не готовы делать перерывы)


🟢Итог:
Пока думаю) Не нравится то, что эту коррекцию можно сделать только один раз.
С другой стороны, оно того стоит - избавиться от очков и линз и не перенапрягать глаза при работе за пк.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤓 -> 👀 Коррекция зрения. Операция

Хотел сделать коррекцию зрения SMILE, так как восстановление после неё всего 1 день и её можно делать несколько раз. Советовался с другим врачом.
Итог тот же - мне доступен только FemtoLasik, так как у меня слишком тонкая роговица глаза из-за долгого ношения линз, плюс сложный астигматизм с дальнозоркостью

🔜 Сегодня прошёл дополнительные обследования, решили делать Super FemtoLASIK — FemtoLASIK по персонализированной технологии из-за моих сложностей(тонкая роговица, сложный астигматизм).

🔜 Отличие от обычного FemtoLasik в том, что здесь запрограммируют работу лазера под мои особенности строения роговицы

Стоит 78 300(скидка 10%). Плюс разные капли для глаз(4 флакона), в общем вышло около 80 000 рублей.

В первый день обязательны темные очки из-за светобоязни.

2 недели нельзя пользоваться компьютером-телефоном и как-либо напрягать зрение или поднимать внутриглазное давление.

2 месяца нельзя заниматься спортом, плавать, летать в другой климат(смена климата очень не рекомендуется)

🔜 Операция завтра
2 недели буду гулять и слушать аудиокниги🥲


🟢Вас уже более 2000!🔥🔥🔥
Спасибо, что читаете и поддерживаете:)

Когда-то я мечтал о 200 подписчиках и думал, как же это будет круто. Целое своё коммьюнити)
Не все мечты сбываются, как говорится😁 И часто это к лучшему)
Please open Telegram to view this post
VIEW IN TELEGRAM