Дневник Flutter-разработчика
3.1K subscribers
323 photos
22 videos
10 files
290 links
Описание моего пути мобильного разработчика с нуля до junior, middle, senior
Download Telegram
21.02.2023
Челлендж - день 84🏔

👨‍💻 Работа:

Закрыл 1 задачу - RefreshIndicator не обновлял страницу, если заходишь в приложение без интернета. Нужно было пофиксить) Разобрался с условием на обновление данных, всё работает)
Сделал еще 1 задачу, но жду правки с бекенда

🧑‍🎓 Что изучаю/сложности/интересное:

В первой задаче получил интересное замечание на ревью. У меня была вложенность - родитель ListView и ниже ListVIew.separated.
Это плохая практика, здесь хорошее объяснение: https://www.youtube.com/watch?v=LUqDNnv_dh0

✈️ Английский язык:

+0,26 ч. - задания на площадке Яндекс.практикум

💪 Спорт:

4 дня не было постов, за это время стабильно ходил в зал и второй раз плавал в бассейне.
В этот раз с очками, чтоб снять лишнюю нагрузку при плавании. Помните, первый раз меня хватило минут на 9 и все мышцы забились?😁 Сейчас время увеличилось в 2.5 раза:)

С очками плавать намного лучше, тк голова находится в воде и меньше устаешь🥽

Прошлая неделя была первой неделей в зале. По итогу на весах +1кг(набираю)

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 4 (всего 9 дней)

- изучаю английский язык +4 (всего - 148 дней)

- зарядка утром +4 (всего 9 дней)

- отказ от сладкого, мучного и фастфуда +2 (всего 7 дней)
Please open Telegram to view this post
VIEW IN TELEGRAM
28.02.2023
Челлендж - день 91🏔

👨‍💻 Работа:

Начали новый спринт:) Сделал пару задач и почти завершил еще одну

🧑‍🎓 Что изучаю/сложности/интересное:

Решил купить macbook. Остановился на pro версии: процессор m1 pro на 8 ядер, 14 дюймов, 16гб оперативки и 512 ssd. 165 тыс в днс. Что думаете?

Плавать нравится уже больше, чем в зал ходить) Такое прям облегчение после бессейна
Уже меньше выдыхаюсь, мышцы не забиваются:)
В среднем плаваю около 30 минут. Чередую через день трен.зал-бассейн🏋️‍♂️🏊‍♂️

✈️ Английский язык:

+0,31 ч. - задания на площадке Яндекс.практикум
У меня под рукой преподаватель английского, а я все не начну общаться и писать с ней на англ.😁 По-немногу пока)

💪 Спорт:

- тренажерный зал/бассейн +1 бассейн

+ 10100 шагов за день

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 6 (всего 15 дней)

- изучаю английский язык +7 (всего - 155 дней)

- зарядка утром +6 (всего 15 дней)

- отказ от сладкого, мучного и фастфуда +5 (всего 12 дней)
Please open Telegram to view this post
VIEW IN TELEGRAM
Сегодня был интересный вопрос:
"Стоит ли использовать VSCode вместо Android Studio?
Лишит ли это меня каких-то возможностей?
"

Решил сюда продублировать свой ответ, так как часто его задают.
Тема холиварная, пишите в комментариях, что для вас лучше, VSCode или Android Studio? И почему :)


Плюсы и минусы, которые я заметил и которые знаю:

VSCode:
плюсы:
- большое количество плагинов, большинства из которых нет в AS
- легковесный, ест меньше оперативки
- быстрее AS

минусы:
- работа с гитом через плагины, которые не круче работы с гитом из коробки AS

Еще такой минус - мне например в вс коде приходится каждый раз с нуля писать коммит, в студии поле уже заполнено предыдущим коммитом.

Это особенно удобно, когда у вас в компании коммиты типа feat(): сделал то-то TS-550
В студии тебе нужно поменять только центр от коммита к коммиту в этой ветке

Android Studio:
плюсы:
- отличная работа с гитом из коробки
- для себя отметил, что дебагинг тоже лучше, чем в AS
- как ни крути, AS считают полноценной IDE, а VSCode редактором кода

минусы:
- отъедает больше оперативки, чем VSCode
- многие говорят, что не такой шустрый, как VSCode(местами да, особенно при билде)
- нет такого большого количества плагинов

Вначале я работал с VSCode, дальше перешел на студию из за отличной работы с гитом из коробки и более удобного дебагинга
Купил себе MacBook Pro:)

14 дюймов, процессор m1 pro, 16 гб оперативки, 512 гб ссд🧑‍💻

Заказывал в dns. В характеристиках было указано, что есть ру гравировка. Ноут приехал без гравировки😄
Со слепой печатью проблем нет, так что это не большая проблема)

Работал сегодня первый день на нем. Пока все нравится. Быстрый и заряд держит долго. Хоткеи клавиатуры непривычные, привыкаю) Еще он очень тяжелый, в сравнении с macbook air(у девушки). У них разница в 300 грамм, но прошка буд-то килограмма на 2 тяжелее😁

В целом пользоваться им очень приятно. Как он был упакован - различные мелочи и тд. Быстрая зарядка. Печатать на нем одно удовольствие. В общем первые впечатления очень положительные)

Настраивал его для работы, никаких проблем с флаттером не возникло. Без проблем все по доке встает.

Это мой первый мак, посоветуйте проги и чем вообще пользуетесь?) Пока проблемы с выбором программы для записи экрана(видео, звук)
13.03.2023
Челлендж - день 104🏔

👨‍💻 Работа:

Начали новый спринт. Все хорошо, опыт растет:)
С появлением мака теперь тестирую задачи и на эмуляторе IOS

P.S. Фото - вид на Волгу в 10 минутах от моего дома

🧑‍🎓 Что изучаю/сложности/интересное:

Мак есть, можно и Swift глянуть)
Изучаю SwiftBook:)

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

За месяц набрал 3кг. 1,2 кг мышечной, остальное - жировой)
Начал с 64кг и хотелось бы 70. В среднем в неделю выходит 3 занятия в трен. зале и 3-4 в бассейне. Все после работы, в 5 вечера🏖️

Вначале я пробовал плавать и заниматься до работы(рано утром). Это было плохой идеее, так как дальше состояние совсем не рабочее) Особенно после бассейна.

А вот после работы, в 5 вечера - отлично. Плюс все рабочие задачи стараешься быстрее завершить к этому времени

Вначале я плавал очень плохо. Не умел плавать кролем, быстро уставал и выдыхался. Сейчас все намного лучше(обучающие видео на ютубе, эксперименты) и плаваю с большим удоволствием)

Так что если вы решите начать плавать в бассейне - не переживайте из-за первых ‘тяжелых сеансов’, тк вы быстро адаптируетесь и дальше будет только лучше😉

✈️ Английский язык:

+0,47ч. - занятие с репетитором Яндекс. практикум, Duolingo. Мы прошли Present Continuous и Present Perfect. Сейчас закрепляем эти темы

Прогресс хорошо заметен, тк мы все больше общаемся на англ. каждое занятие🤓

💪 Спорт:

- тренажерный зал/бассейн +1 бассейн

+8100 шагов за день

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 11 (всего 26 дней)

- изучаю английский язык +12 (всего - 167 дней)

- зарядка утром +1 (всего 1 день)

- отказ от сладкого, мучного и фастфуда +1 (всего 1 день)

Со сладким и зарядкой возникли проблемы - ел все, что хотел) Но процент жира мне не равится. Хочу в этом месяце провести эксперимент и посмотреть, сколько я наберу без мучного и сахара🏋️‍♀️
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
17.03.2023
Челлендж - день 108🏔

👨‍💻 Работа:

Сделал 3 задачи

🧑‍🎓 Что изучаю/сложности/интересное:

Хочу поделиться интересным хоткеем(скрин)
У меня Android Studio, но и в VS Code он наверняка есть

Если вам нужно быстро отрефакторить код - например, вынести повторяющийся код в переменную - можно воспользоваться хоткеем и сделать это буквально в пару кликов

На видео одним хоткеем выношу 5 повторяющихся строк кода в одну переменную.
Думаю тоже начнете им пользоваться😉

✈️ Английский язык:

+0,41ч. - занятие с репетитором Яндекс. практикум. Закрепляем время Present Perfect

💪 Спорт:

- тренажерный зал/бассейн +3 дня бассейна. В зал пока не тянет)

8000+ шагов в день

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 3 (всего 29 дней)

- изучаю английский язык +4 (всего - 171 день)

- зарядка утром +4 (всего 5 дней)

- отказ от сладкого, мучного и фастфуда +3 (всего 4 дня)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
21.03.2023
Челлендж - день 112🏔

👨‍💻 Работа:

Сделал одну задачу и основную часть другой

Первая была связана с показом экрана на случай отсутствия интернета в приложении. Плюс если интернет появился, экран нужно обновить и снова получить все данные)

Вторая связана с фиксом разных багов на экранах

🧑‍🎓 Что изучаю/сложности/интересное:

Сейчас изучаю swift. Синтаксис похож на flutter и у них много общего) Те же переменные и константы, тернарники, null и много чего еще) Подробнее расскажу в следующем посте

✈️ Английский язык:

+0,39ч. - занятие с репетитором Яндекс. практикум. Одно из сегодняшних заданий - задать по 3 вопроса для каждой ситуации(скрин)

💪 Спорт:

- тренажерный зал/бассейн +бассейн сегодня

7100 шагов за день

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 3 (всего 32 дня). В выходные встаю в это время без будильника

- изучаю английский язык +4 (всего - 175 дней)

- зарядка утром +4 (всего 9 дней)

- отказ от сладкого, мучного и фастфуда +3 (всего 7 дней)
Please open Telegram to view this post
VIEW IN TELEGRAM
Знаю, что меня читают как начинающие, так и опытные разработчики. И тем и другим может быть полезен этот анонс от Академии Яндекса.

Продолжается набор в Летние школы — разработки интерфейсов, мобильной разработки (iOS, Android, Flutter), бэкенд-разработки (Python, Java, C++, Go) и Школы менеджеров. С этого дня на страницах школ можно получить вступительное задание, которое поможет стать студентом одной из школ.

Обучение бесплатное, будет проходить в два этапа: онлайн-лекции и оффлайн-практика — в офисах Яндекса в Москве, Белграде и Алматы. Если вы из другого города, Яндекс поможет с оплатой билетов и проживания на время обучения.

Прием заявок и выполнение вступительных испытаний до 13 апреля для Школы менеджеров, и до 27 апреля для школ разработки.

29 марта на Дне открытых дверей можно будет познакомиться с руководителями Школ. Вы сможете посмотреть разбор вступительных заданий прошлых лет и задать свои вопросы. Не упустите свой шанс поучиться у тех, кто создает индустрию. Регистрируйтесь и дерзайте!
03.04.2023
Челлендж - день 125🏔

👨‍💻 Работа:

Впервые не уложился в спринт)
Причина проста - мне добавились 2 горящие задачи, которые я сразу сделал, но из-за этого 1 задачу спринта не успеваю закрыть. Написал project meneder’у, он сказал да, все окей, просто перенесем ее на новый спринт:)
Такой вот новый опыт😅

🧑‍🎓 Что изучаю/сложности/интересное:

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

Это из того, что сразу вспомнилось🙃

Так же изучаю swift. Пока что процесс идет медленно. Думаю начать делать ежедневные отчеты в блоге, как делал с изучением flutter’a🧑‍🎓 Это значительно все ускорит

Сейчас мне очень нравится спорт. активность в жизни. Так как каждый день мне нужно идти до бассейна или тренажерного зала, это добавляет еще 7-8 тысяч шагов.
Благодаря этому намного больше энергии в течении дня, но основной плюс, который я заметил - не перерабатываешь и стараешься все завершить до 5 вечера. Тк в 5 вечера у меня тренировка.

То, что раньше занимало намного больше времени(рабочие задачи), теперь легко укладывается до 5 часов)

✈️ Английский язык:

+0,32ч. - задания на площадке Яндекс. практикум. Скрин - пример занятия с преподавателем. На эти вопросы я устно отвечаю и сразу обсуждаем

💪 Спорт:

- тренажерный зал/бассейн +бассейн сегодня

6800 шагов за день

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 11 (всего 33 дня).

- изучаю английский язык +13 (всего - 188 дней)

- зарядка утром +0 (честно говоря просто начал забывать, так как физ активности сейчас хватает)

- отказ от сладкого, мучного и фастфуда +0 (это все сладкоежка рядом, меня заставляют😄)
Please open Telegram to view this post
VIEW IN TELEGRAM
11.04.2023
Челлендж - день 133🏔

👨‍💻 Работа:

Сделал 2 задачи

🧑‍🎓 Что изучаю/сложности/интересное:

Одна из последних задач - отформатировать приходящую с бекенда цену товаров. Каждая цена должна быть в формате .00 если нет копеек и если цена >= 1000.00, то приводить ее к формату 1 000.00 (добавлять пробел)

Казалось бы, простой метод, но нужно было подумать) Несколько раз переписывал
В итоге отправил на pr большой метод, в котором dart metrics показывал 5 циклов😅 Цикломатическая сложность сильно увеличилась (скрин 1)

На ревью сказали декомпозировать метод. Разделил на 4 маленьких:) (скрин 2 - зеленый)
Всё покрываем комментариями

Метод проверяет приходяющую цену на >= 1000.00, добавляет 2 знака после точки через метод .toStringAsFixed(2).
Разделяет цену по точке на 2 части и по первой части цикл проходится с конца строки. Если обработал 3 цифры, то добавляет пробел в начало

Вот такая задачка:)

Продолжаю изучать Swift по SwiftBook. По большей части язык похож на dart)

✈️ Английский язык:

+0,30ч. - задания на площадке Яндекс. практикум.

💪 Спорт:

- тренажерный зал/бассейн + бассейн. Каждый день хожу в бассейн, зал пока что надоел)

7166 шагов за день

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 7 (всего 41 день).

- изучаю английский язык +8 (всего - 196 дней)

- отказ от сладкого, мучного и фастфуда +0

- добавил интервальное голодание. +1 (всего 1 день)
Сейчас 15-9(15 часов не ем, 9 ем). Идет легко, посмотрим на результаты)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
21.04.2023
Челлендж - день 143🏔


🧑‍🎓 Что изучаю/сложности/интересное:

Есть к Вам 2 вопроса🤓:
1) Если вы зарегистрировали ваш bloc через аннотацию как @LazySingleton, вы потом даете провайдер или получаете доступ через локатор? getIt, например.

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

2) Как расписываете энтити? И как парсите данные?
Я думал, что если в документации от бекенда поле прописано как double, то и тип обязательно придет double. На практике не так)) Бывает, что может прийти int и вы просто ничего не отобразите, словите ошибку. Мне понравился такой вариант - все поля записывать как String и дальше их обрабатывать

Например вам приходит поле sale (размер скидки). Оно по доке у вас записано как int. Прописываете как String и дальше парсите как sale: (int.tryParse(json['sale'].toString()) ?? double.tryParse(json['sale'].toString()) ?? 0).toString(),
В таком случае вам без разницы, double вам отправят или int, вы отобразите значение. В любом другом случае вы отобразите 0, который так же можете обработать ниже в геттере как bool get saleIsValid => sale != '0'; и добавить проверку в вашем ui, если например вам не нужно вообще выводить нулевую скидку, то добавляете в условие вашаЭнтити.saleIsValid

Конечно все это нужно хорошенько покрыть тестами(при написании много нового можно узнать))


Меня отправляют в отпуск на 16 дней) С 27 апреля. У меня уже почти год коммерч. опыта, за этот год я ни разу не был в отпуске😅

Долгое время вставал в 5 утра. В последнее время нагрузки сильно прибавилось - дополнительное самообразование после работы, спорт и прочее. Недавно решил попробовать вставать в 6 утра. Качество сна улучшилось и сейчас на уровне 89-95%(отслеживаю через mi band 7)

✈️ Английский язык:

+0,53ч. - занятие с преподавателем Яндекс. практикум и задания на площадке

💪 Спорт:

- тренажерный зал/бассейн + бассейн

5500 шагов за день (по снегу эта же дорога до бассейна занимала почти 8000 шагов)

👍 Баланс работа-остальные сферы:

- встаю в 6 утра, ложусь к 10 вечера + 3 (всего 3 дня).

- изучаю английский язык +10 (всего - 206 дней)

- отказ от сладкого, мучного и фастфуда +3 (всего 3 дня)

- добавил интервальное голодание. +10 (всего 11 дней)
Сейчас 15-9(15 часов не ем, 9 ем)
Заметно скинул лишний жирок с живота😄
Please open Telegram to view this post
VIEW IN TELEGRAM
Академия Яндекса заканчивает набор по треку Flutter в Школе Мобильной Разработки.

Школа — это 3 месяца обучения Флаттеру через написание проектов с нашими лекторами и менторами.
На первом этапе — онлайн-лекции и домашки. На втором — оффлайн часть-непрерывный-хакатон в офисах в Москве, Белграде или Алматы.

История бесплатная, кто живёт в другом городе — для второго этапа оплатим билеты и проживание. После Школы, если захотите, можно пройти к нам собесы и прийти работать, если всё сложится.

Чтобы попасть в школу, надо подать заявку и сделать тестовое. Прием заявок открыт до 27 апреля включительно. Сами занятия начнутся в начале лета.
Интересное приложение:) Показывает, какие из приложений на вашем смартфоне написаны на flutter. Так же показывает список пакетов в приложении

Удивился, что Binance на flutter😁
https://play.google.com/store/apps/details?id=com.fluttershark.fluttersharkapp&hl=ru
Сегодня много новостей:

🟢1) 11 мая 2022 года был мой первый рабочий день мобильным flutter разработчиком и сегодня у меня ровно год коммерческого опыта👨‍💻

Несравнимые отличия между тем, что я умел тогда и что умею сейчас)

За этот год мною было напилено большое количество фич, пофикшена уйма багов, закрыто множество задач на разных проектах.
Немало багов я сам находил, заводил задачи и фиксил)

За этот год в рамках одной компании я поработал на 3 разных проектах.
Один проект мы с лидом стартовали с нуля, я участвовал в выборе технологий и закладывании архитектуры.
Бесценный опыт)
Этот проект почти уже доведен до релиза и скоро окажется в сторах 💪

🟢2) Сегодня мой День Рождения🥳
Что интересно, ровно год назад я официально стал мобильным разработчиком, в свой день рождения😄

Если этот блог помог вам за время его существования - напишите мне об этом @Hey_008, слышать это всегда приятно и здорово мотивирует продолжать:)
Если у вас есть мысли, что хотелось бы видеть в блоге или идеи - тоже пишите, буду рад👍

🟢3) Google не могли пропустить такой праздник и выпустили новую версия dart - Dart 3.0.0😄🥳
https://medium.com/dartlang/announcing-dart-3-53f065a10635

Flutter тоже обновился - новая версия 3.10.0
https://medium.com/flutter/whats-new-in-flutter-3-10-b21db2c38c73

🟢4) Блог начал приносить небольшой доход:)
Вы уже заметили, что иногда выходят рекламные посты. Всегда эти посты связаны с темой блога(flutter). От всех остальных рекламных предложений я отказываюсь:)

🟢P.S. Сейчас я в двухнедельном отпуске и стараюсь максимально отдыхать от пк.
Недавно нашли новый интересный баг flutter приложений на смартфонах Xiaomi, скоро о нем расскажу)
Please open Telegram to view this post
VIEW IN TELEGRAM
Flutter-команда Friflex подготовила перевод официального релиза Flutter 3.10

Что нового:
✔️ Обновленный Dart 3
✔️ Переход на Impeller
✔️ Сокращение времени запуска iOS-приложений
✔️ Встроенный просмотрщик трассировки Perfetto
и много других инструментов для разработчиков
https://vc.ru/dev/692346-flutter-3-10-chto-novogo


На канале Мобильный разработчик вышло видео с разъяснениями от опытного разработчика по новому обновлению Dart 3.
Советую посмотреть, видео на 9 минут👍
https://www.youtube.com/watch?v=IGwCujbWKds
Please open Telegram to view this post
VIEW IN TELEGRAM
14.06.2023

👨‍💻 Работа:

Приложение, над которым мы работали пол года, готово к релизу и сейчас проходит стадию активного тестирования:)

🧑‍🎓 Что изучаю/сложности/интересное:

Если вы обновлялись на последние версии flutter, то возможно замечали в проде такой баг в товарах на ios(розовая картинка)

Появляется иногда, когда пользователь скрывает приложение, оно висит фоном, заходит обратно и картинка товара становится такого цвета)

https://github.com/flutter/flutter/issues/126878

Это исправили только во Flutter 3.10.3
Не забудьте обновиться) Сейчас уже доступен Flutter 3.10.4



Я был в отпуске и после него не вел блог в привычном режиме. Возвращаю этот формат, тк он меня мотивирует:)

Пока не вел блог, привычки соблюдал нестабильно. Не лучший опыт)
Бесполезно считать в таком формате, лучше начать их с нуля, но придерживаться на постоянке

✈️ Английский язык:

Пока только одну привычку соблюдаю практически без перерывов - английский язык. Каждый день, в одно и то же время, занимаюсь английским по пол часа-час.
Результат хороший.
Сейчас на занятиях с преподавателем Яндекс.практикум мы минут 15 общаемся и остальные 15 минут занимаемся заданиями и грамматикой

💪 Спорт:

- тренажерный зал/бассейн (сегодня отдых)

👍 Баланс работа-остальные сферы:

- встаю в 5 утра, ложусь к 10 вечера + 1 (всего 1 день)

- изучаю английский язык +1 (всего 278 дней)

- зарядка утром +1 (всего 1 день)

- отказ от сладкого, мучного и фастфуда +1 (всего 1 день)

- интервальное голодание +1 (всего 1 день)
Интервальное голодание соблюдал все это время с последнего поста. Заметил значительный прирост энергии и желание что то делать. Даже при простом дофамине
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM