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

Ecommerce проект:
Сегодня встал выбор - пробоваться на стажировку в Surf, которая будет в феврале или писать проект и идти по этому плану. Выбрал второе)
По проекту - начал только смотреть курс Константина Кокорина, который мне посоветовали для вопросов с api.
Были дела в реале, вечером засел на ютубе)

+1,22 часа английского
18 серия 1 сезона сериала Сверхъестественное

Итого: 162 ч. 24 м.

Спорт, здоровье
+ зарядка
99 дней не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 2 из 90 (+0)
+ зарядка/растяжка утром 12 из 90 (+1)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)

Из полезных привычек пока хорошо и стабильно только с английским и зарядкой:)
День 141:

Ecommerce проект:
Сегодня доверстал секцию Hot Sales. Все данные сюда приходят от API. Скрин прилагаю.

Были проблемы с позиционированием. Оказалось, что Positioned требовал hot restart:) А я думал, что он просто не срабатывает и испробовал и align и padding и positioned.

Посмотрел у Константина Кокорина всю работу с сетью в курсе. Жаль, что раньше не знал о его курсе) Сэкономил бы уйму времени.
Если у вас проблемы с запросами - советую👍
Конечно же изучу теперь полностью весь курс:)

+1,28 часа английского
19 серия 1 сезона сериала Сверхъестественное

Итого: 163 ч. 52 м.

Спорт, здоровье
+ зарядка
100 дней не ем сахар, мучное и фастфуд
Рекорд, 100 дней чего-то полезного придерживаюсь☺️

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 2 из 90 (+0)
+ зарядка/растяжка утром 13 из 90 (+1)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 142:

Ecommerce проект:
Верстаю Best Sellers.

Пока что у меня здесь 3 проблемы:
1. Снова проблемы с позиционированием) Вчерашний способ не срабатывает.
Positioned не применяется, padding не поднимает/опускает на нужный уровень и строка просто исчезает.

2. Странно, но товара в api 4, а мне выводит только 3😁

3. Пока не знаю, как вывести цену. Она int, а в text нужен string (text(string)). Пробовал интерполяцию строк и string привести к int. Пока безуспешно)

Завтра все поправлю:)

+1,34 часа английского
20 серия 1 сезона сериала Сверхъестественное

Итого: 165 ч. 26 м.

Спорт, здоровье
+ зарядка
101 день не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 3 из 90 (+1)
+ зарядка/растяжка утром 14 из 90 (+1)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
Забавная женщина. Кстати, за 4 с лишним месяца впервые встречаю такое отношение) Обычно все дружелюбны. Продолжение в коментах⬇️
День 143:
+ 7,07 часа программирования
(практика)

Ecommerce проект:
Сверстал Best Sellers.
Кардинальные отличия со вчерашним скрином)

У GridView большая проблема с кастомными размерами. Долго тестил, в итоге мне помог этот ответ
https://stackoverflow.com/questions/48405123/how-to-set-custom-height-for-widget-in-gridview-in-flutter

С долларом в начале цены тоже решил далеко не сразу) Оказывается, его можно добавить через '\$'

Не знаю только, как уменьшить пространство между заголовком Best Seller и GridView
Еще нужно добавить запятую после трёх цифр

+1,24 часа английского
21 серия 1 сезона сериала Сверхъестественное

Итого: 167 ч.

Спорт, здоровье
+ зарядка
101 день не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+1)
+ зарядка/растяжка утром 15 из 90 (+1)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 144:
+ 5,19 часа программирования
(практика)

Ecommerce проект:
Сверстал Filter options.
Есть что доработать, но в целом секция свёрстана:)

Использую здесь DropdownButton по документации Flutter.
При нажатии список раскрывается, можно выбрать нужные параметры.

Осталось убрать полосу под текстом и $ почему то не ко всем значениям применяется

Советую к просмотру это видео. Нашел здесь для себя несколько решений по вёрстке:) Видео совсем свежее
Top 35 Flutter Widgets:
https://www.youtube.com/watch?v=M9J-JJOuyE0

+4,12 часа английского
22 серия 1 сезона, 1 и 2 серии 2 сезона сериала Сверхъестественное

Итого: 171 ч. 12 м.

Спорт, здоровье
- зарядка
101 день не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 15 из 90 (+0)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 145:

Ecommerce проект:
Верстаю новый экран - Product Details
Прилагаю скрин с макета фигмы, так как пока показать нечего
Я написал get запрос и он выдает ошибки😁 Завтра пересмотрю видео Константина Кокорина по работе с сетью и исправлю:)

На этом экране все данные приходят от API.
Из логики:
- кнопка "добавить в избранное" c добавлением в избранное
- выбор цвета
- выбор кол-ва gb
- кнопка "добавить в корзину" с добавлением в корзину
- количество звезд(рейтинг) на основе цифр от api
- карусель в центре при свайпе меняет элемент

+1,18 часа английского
3 серия 2 сезона сериала Сверхъестественное

Итого: 172 ч. 30 м.

Спорт, здоровье
- зарядка
101 день не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 15 из 90 (+0)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 146:

Ecommerce проект:
Верстаю Product Details
Get запрос еще не исправил, потому там затычка
Прикладываю скрин рабочего процесса)
Здесь все сверстал, что просто показывается. Остальная верстка через get запрос к api

Понял, что с позиционированием у меня была большая беда😁
P.S. Мне помогли понять👍
Я тратил уйму времени на подгонку через padding, positioned.
По итогу всё это съедет при запуске на любом другом экране.

Позиционировать нужно через Column/Row и mainAxisAlignment/crossAxisAlignment, как я сейчас и делаю. К тому же теперь это экономит кучу времени)

+1,21 часа английского
4 серия 2 сезона сериала Сверхъестественное

Итого: 173 ч. 51 м.

Спорт, здоровье
- зарядка
102 дня не ем сахар, мучное и фастфуд

Полезные привычки не влезли, текста не хватило. Сегодня по 0 в этом. Но я планирую за это взяться:)
День 147:
+ 6,52 часа программирования
(практика)

Ecommerce проект:
Верстаю Product Details
Много времени занял get запрос, так как я долго не мог понять ошибку) Мне приходил 200 ответ, но пустой. Ошибки не было. Как оказалось - при копипасте url не вставилась одна буква😁
То есть url был неверным, а 200 ответ приходил😅

P.S. В слайдере 3 картинки и все одинаковые, так как все 3 одинаковые и в api

Сейчас у меня FutureBuilder у слайдера и только в нем я передаю данные от api.
Чтоб передавать данные от апи по всему экрану, нужно прописать глобальный FutureBuilder у родителя

Еще интересно, как рейтинг звезд завязать на интовом ответе от api.
Напоследок эту часть оставил, как вишенку на торте:)

+1,25 часа английского
5 серия 2 сезона сериала Сверхъестественное

Итого: 175 ч. 16 м.

Спорт, здоровье
- зарядка
102 дня не ем сахар, мучное и фастфуд

Полезные привычки снова не влезли, много текста. Сегодня здесь по нулям.
День 148:
+ 2,32 часа программирования
(практика)

Ecommerce проект:
Сегодня был занят в офлайне.
Примерно с 9 вечера принялся переписывать BottomNavigationBar.

Я вижу 2 проблемы:
1. Самописная реализация по видео LazyLoad. Без внутренней навигации, она тоже самописная.
2. При переключении вкладок было предупреждение - одна иконка накладывалась на вторую из-за Explorer. Стандартное поведение при переключении - иконка съезжает влево/вправо

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

По второму пункту я прописал type: BottomNavigationBarType.fixed, он убирает анимацию переключения.
Теперь все иконки съехали вверх😁 Предполагаю, что это из-за label(он у меня ' ' ), но его нужно обязательно передавать в BottomNavBarItem вместе с icon.
В Row их(items) тоже не завернуть списком чилдренов(это и так список items), тогда можно было бы спозиционировать.

+1,04 часа английского
6 серия 2 сезона сериала Сверхъестественное

Итого: 176 ч. 20 м.

Спорт, здоровье
- зарядка
103 дня не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 15 из 90 (+0)
+ силовые тренировки через день 0 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 149:

Ecommerce проект:
Переписал BottomNavBar. Теперь он классический, по доке. Разобрался с позиционированием иконок внутри. Оказалось, что label можно просто не показывать, прописав false(и тогда иконки становятся по центру). Нигде этого не видел в ответах, узнал из видео.

Планировал сделать глобальный FutureBuilder на экран для передачи данных. Понял, что решение костыльное и здесь нужен стейт менеджер.
Мне сказали изучить блок и сделать это через BLoc:) Смотрю курс Константина Кокорина, изучаю

+1,09 часа английского
7 серия 2 сезона сериала Сверхъестественное

Итого: 177 ч. 29 м.

Спорт, здоровье
+ зарядка
+ силовая тренировка
104 дня не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 1 из 90 (+1)
+ зарядка/растяжка утром 1 из 90 (+1)
+ силовые тренировки через день 1 из 90 (+1)
+ изучение доки dart/flutter час в день 1 из 90 (+1)
Здесь обнулил предыдущие попытки и так как сегодня всё выполнил, пробую идти так и дальше:)
День 150:
Сегодня юбилей - 5 месяцев изучаю dart/flutter:)

Ecommerce проект:
Утром мне подкинули идею с кеш-бек сервисами. Большую часть времени занимался изучением этого вопроса.
Вечером изучал документацию dart, сейчас на "Switch and case".

По кешбеку. Оказывается немало денег можно возвращать через эти сервисы😁 Пример: карта TInkoff Black с pro или просто + LatyShops.
Сервис LatyShops возвращает часть денег за покупки в интернет магазинах. Это приложение/сайт/расширение в браузере.
Карта TInkoff возвращает 1% со всех покупок, 5% по нескольким выбранным клиентом категориям и повышенные проценты у партнеров. Так же у Tinkoff начисление 4% или 7% на остаток по карте.

Тема интересная и я думаю кэшбеком в течение года могут набегать немалые суммы. Если вы так же как и я раньше этим не пользовались - начинайте)
Чтоб вы понимали - я пользовался картой сбера с 0 каких-либо плюсов.
LatyShops установил, карту Tinkoff Black заказал:)

P.S. Стоимость обслуживания TInkoff Black 99р или бесплатно при отмене тарифа. Выпуск бесплатный. LatyShops бесплатно, но вывести дает только от 500р с сервиса

+1,26 часа английского
8 серия 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

Итого: 179 ч. 55 м.

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

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 2 из 90 (+1)
+ зарядка/растяжка утром 2 из 90 (+1)
+ силовые тренировки через день 2 из 90 (+1)
+ изучение доки dart/flutter час в день 2 из 90 (+1)
День 151:

Ecommerce проект:
Почти завершил курс Константина Кокорина. Узнал много нового) Много мелочей, которые раньше упускал или просто не понимал/не знал
+ изучаю документацию по dart language tour

Так же сегодня у Константина вышло 2 новых интересных видео на канале:
Подкапотная работа Flutter с виджетами
https://www.youtube.com/watch?v=L1qdDCS5qRo

Как работают ключи во Flutter
https://www.youtube.com/watch?v=79lJm-pubYo

+1,35 часа английского
9 серия 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

Итого: 181 ч. 30 м.

Спорт, здоровье
+ зарядка
+ силовая тренировка
106 дней не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 3 из 90 (+1)
+ зарядка/растяжка утром 3 из 90 (+1)
+ силовые тренировки через день 3 из 90 (+1)
+ изучение доки dart/flutter час в день 3 из 90 (+1)
День 152:

Ecommerce проект:
По курсу Константина Кокорина переписал ListView. У меня всё было костыльно и 170 строк кода) Сейчас это 67 строк кода и выглядит в разы лучше:) Еще несколько таких моментов благодаря курсу заметил, которые можно порефачить.
За BLoc еще не брался
+ изучаю документацию по dart language tour

+1,22 часа английского
10 серия 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

Итого: 182 ч. 52 м.

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

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+1)
+ зарядка/растяжка утром 4 из 90 (+1)
+ силовые тренировки через день 4 из 90 (+1)
+ изучение доки dart/flutter час в день 4 из 90 (+1)
День 153:

Ecommerce проект:
Пока еще изучаю курс Константина Кокорина:)

+1,26 часа английского
11 серия 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

Итого: 184 ч. 18 м.

Спорт, здоровье
+ зарядка
+ силовая тренировка
107 дней не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 5 из 90 (+1)
+ силовые тренировки через день 5 из 90 (+1)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 154:

Ecommerce проект:
Начал прокрастинировать и у меня появилась идея - 90дневный челлендж:)
Суть: официально стать мобильным разработчиком, то есть официально трудоустроиться Flutter разработчиком. 90 дней, потому что мой день рождения 11 мая. Подарок себе😁

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

Завтра возьму выходной от интернета, чтоб отдохнуть и завершить все дела.

Старт 9.02.2022 и до 10.05.2022:)

+0,59 часа английского
12 серия 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

Итого: 185 ч. 17 м.

Спорт, здоровье
+ зарядка
+ силовая тренировка
108 дней не ем сахар, мучное и фастфуд

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 6 из 90 (+1)
+ силовые тренировки через день 6 из 90 (+1)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 155:

Ecommerce проект:
Сегодня был выходной от пк по большей части)

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

+2,36 часа английского
13, 14 серии 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

Итого: 187 ч. 53 м.

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

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 6 из 90 (+0)
+ силовые тренировки через день 7 из 90 (+1)
+ изучение доки dart/flutter час в день 4 из 90 (+0)
День 156:

Ecommerce проект:
Изучал управление состоянием.
Inherited Widget, Provider. Перешёл к изучению BLoc:)

+1,12 часа английского
15 серия 2 сезона сериала Сверхъестественное на англ. с англ. субтитрами

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

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

Прививаю полезные привычки:
+ здоровый сон(пробую 23:00-6:00) 4 из 90 (+0)
+ зарядка/растяжка утром 6 из 90 (+0)
+ силовые тренировки через день 7 из 90 (+0)
+ изучение доки dart/flutter час в день 4 из 90 (+0)