Gubin_dev – Telegram
Gubin_dev
129 subscribers
49 photos
7 videos
5 files
33 links
Авторский канал, где публикаются новости о технологиях. В основном конечно Flutter <3

Мой тг: @webmadness
Download Telegram
В чатике флаттеристов прислали интересную статью про setState. Если вы задавались вопросом, зачем нужен callback внутри этой функции, то вам сюда)

Интересно, что разработчики флаттер реально проводили исследования, как используют их api. Неужели разработчики тоже люди, а не андроиды?

https://habr.com/ru/articles/745726/
🔥2🤯1
telegram-cloud-document-2-5415957067380830738.jpg
105.6 KB
Сейчас читаю DDD, там упоминается паттерн “спецификация”, переписал пример из книги. Подразумевается, что у химикатов (бочек с ними) есть требование к перевозке (specification). И оно регламентируется с помощью отдельного класса, с которым потом взаимодействует контейнер при проверке безопасности упаковки химикатов.

Что думаете?
👍 - интересный паттерн, стоит попробовать применить
👎 - нижнеспособная хрень
🤡 - я бы еще примеры посмотрел
👍2
"... моя лень проявляется в том, что я не запоминаю деталей кода, который пишу. Более того, опасаясь перегрузить свою голову, я умышленно не запоминаю многие детали. И поэтому я стараюсь записывать в коде всё, что иначе мне пришлось бы держать в моей бедной голове. Это позволяет мне не беспокоиться о воздействии пары бокалов пива после работы на клетки моего головного мозга" — Мартин Фаулер

😁
😁1🤯1
Что выведет этот код?
🤔2
Flutter схлестнулся с Нативом в чемпионате DigitalSkills в Казани

8 участников
7 - натив андроид,
1 - Флюттер

Итог такой:
1. Андроид
2. Флюттер
3. Андроид

8. Андроид

Это показывает, что флаттер может конкурировать с нативными средствами разработки в скорости и качестве (кода).

Хоть это и совсем нерепрезентативно
👍5🍾1
Что будет выведено на экран?
Anonymous Quiz
53%
3
12%
3, 6
29%
3, 3
6%
6
Утренняя разминка!
Почему НЕ надо использовать Bang operator
А вот и лайтовая разминочка для утречка пятницы подъехала
Что будет выведено на экран?
Anonymous Quiz
58%
0, 2
27%
0, 1
9%
1, 2
6%
не запустится
Реализация паттерна “Спецификация” на dart

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

Читается это необычно, будто бы читаю СпЕцИфИкАцИю к тому, кому выдавать кредит

Исходный код
Постпятничная задачка на утро)
Что будет выведено на экран?
Anonymous Quiz
39%
1
61%
1, 2
Early return pattern упростит вашу жизнь

Суть паттерна в том, чтобы досрочно завершать функцию, вместо того, чтобы писать else.

В примере приведен реальный код из dart’а

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

Мысль у меня такая: если у вас появилась необходимость вложить if в if или дописать else в вашей функции, значит вы что-то делаете не так. Вернитесь на шаг назад и переосмыслите, может быть надо вынести метод? Или дело в концепции?
👍2
Затестил новый импеллер в Flutter 3.16, разочаровало.
This media is not supported in your browser
VIEW IN TELEGRAM
Разберем подробнее вчерашний пример с импеллером. Дело в том, что этот пример был создан для демонстрации загрузки UI и Raster потоков. В потоке UI сложная операция, которая рисует множество окружностей на экране + рисует SweepGradient (для отрисовки крутящегося радара). Ну и где-то через полторы минуты приложение крашнулось.

Радар при этом обернут в RepaintBoundary, чтобы выделить новый слой отрисовки и не затрагивать слой со сложной отрисовкой.

На конференции GDG Devfest Astrakhan 2023 расскажу подробнее. Постараюсь побыстрее для вас выложить запись доклада, ну а после доклада выложу видосы с примерами и пришлю ссылку на код.

P.S. да, я запускал с флагами --enable-impeller --profile, и да, это версия 3.16, телефон Google Pixel 7
🔥3
Если кратко, там где-то утечка памяти происходит
🤔1😨1