MADs
1.54K subscribers
241 photos
14 videos
303 links
Комьюнити разработчиков мобильных приложений и сервисов. Рассказываем, как создаем продукты в Mad Brains, делимся знаниями, кейсами и внутренней атмосферой.

Карьера: madbrains.ru/career
Присоединиться к команде: @nasty_280
Сотрудничество: @ks_vano
Download Telegram
🔑 Продолжаем тему ключей во Flutter в рубрике «Годнота от лида». Сегодня Николай Омётов рассказывает, где используются локальные ключи.

Ключи — мощный инструмент, который имеет много применений. Основная их цель в жизненном цикле Flutter приложения — это сравнение виджетов при перестроении дерева элементов.

// class Widget
static bool canUpdate(Widget oldWidget, Widget newWidget) {
return oldWidget.runtimeType == newWidget.runtimeType
&& oldWidget.key == newWidget.key;
}


Чаще всего рассказывают про применение ключей для StatefulWidget’ов в списке, чтобы виджеты «не теряли» свои стейты. Описывать всё это не имеет смысла, так как это можно узнать почти из каждой статьи про ключи. Я оставлю ссылку на видео с канала Flutter.

Главная проблема, что без ключей при сравнении виджеты будут считаться одинаковыми по типу, а поэтому не пересоздадут\переиспользуют свой элемент. Просто ничего не произойдёт. Ключи же дадут уникальность виджету в списке и сравнение будет корректным. (Важно помнить: одинаковых ключей в списке быть не должно, Flutter сразу будет ругаться если обнаружит это).

Используя ключи, можно намеренно перерисовать виджет, просто сменив их. Не советуется так делать, так как это больше лайфхак и костыль, который следует реализовать с помощью вашего стейт менеджмента или ValueNotifier. Пример: ребёнок AnimatedSwitcher не перерисовывается и анимация не происходит. Добавьте ребёнку изменяемый ключ и AnimatedSwitcher заработает.

Хорошо, но зачем существует совет добавлять локальные ключи всем виджетам списка? Чтобы воспользоваться алгоритмом Linear reconciliation. Суть в том, что при перестроении дерева виджетов, списки виджетов сравниваются и объекты-Element’ы из старого списка «спасаются» в хеш таблицу (кэш) по КЛЮЧУ и берутся оттуда же. Если виджет в новом списке такой же по типу и с тем же ключом, то по нему можно зайти в кэш и достать Element сохранившийся с прошлого ребилда. Остальные Element’ы удаляются. Поэтому данный совет позволяет улучшить производительность за счёт переиспользования Element’ов.

Также ключи позволяют сохранять место прокрутки списка или какую-то другую информацию, чтобы можно было её восстановить. Делается это через PageStorageKey (подвид ValueKey).

Ещё ключи работают как локаторы. Показывают, где находится в дереве элементов элемент и его виджет. Это используется для виджет тестирования и интеграционного тестирования. По ним можно точно сравнивать элементы дерева и указать конкретный ключ для виджета, чтобы быть уверенным, что выбран нужный.
#flutter #keys #notes_of_lead
🔥7👎1
На YouTube-канале Mad Brains уже 10 000 подписчиков! 💥
Вы вдохновляете нас создавать еще более полезный контент!

Часто в личные сообщения или по электронной почте нам приходят технические вопросы от подписчиков.

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

Но сначала пройдите небольшой опрос под этим постом 😊
🔥8
Друзья, на этой неделе мы участвуем в размещении на Produсt Radar с нашим продуктом X-kit — маркетплейс ПО для бизнеса. Если сможете отдать голос за X-kit, будем очень признательны! https://clck.ru/39Ct6n

Product Radar — это площадка, где каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд.
👍7
Всем привет! 👋

На связи команда Mad Brains! И у нас крутые новости — наш канал переименовывается в MADs. Здесь мы продолжим делиться кейсами, вакансиями, видеороликами с докладами наших ребят и друзей компании. Но есть пара изменений. 🧏‍♂️

Бизнес-контент с рассказами о полезных фичах мобильных приложений📱и инструментах для роста бизнес-показателей 📈 переезжает в канал Mobile Growth Fucking. Не забудь подписаться!

Мы запустили коммьюнити для Flutter-разработчиков Flutter Mad Fans! И теперь вся профессиональная тусовка будет там!

Youtube-канал работает в боевом режиме, и у нас уже готов новый ролик. Смотри выступление разработчика, тимлида и ведущего IT Way Podcast 🧔🏻‍♂️ Паши Калашникова по ссылке ниже! Классный кейс, где он рассказал, как его команда делала фронтенд на флаттере.

Будь там, где тебе интересно! 😉
🙏+100 баллов к карме за лайк и репост!
🔥9
В Mad Brains очень любят гостей, и круто, что прошлая неделя получилась насыщенной! ☺️

Сначала к нам заглянули ученики компьютерной Академии TOP. Угостили их вкусняшками и рассказали:
— почему в IT-сфере становятся крайне важны не только hard-, но и softskills,
— что читать, тестить и где искать полезные ресурсы, чтобы прокачивать навыки.

Кстати, напомним, что совсем недавно мы запустили ТГ-сообщество для flutter-разработчиков Flutter Mad Fans. Самое время добавиться в чат!

Так-так... Вернемся к гостям 😅 В среду в наш офис приехали министр цифрового развития Ульяновской области Олег Ягфаров и исполнительный директор Фонда развития информационных технологий Сергей Горлов. Вместе с CEO Олегом Чебулаевым обсудили перспективы развития IT-отрасли в регионе и потребности государственных ведомств в цифровых продуктах. Было интересно и продуктивно.

А хотите тоже к нам в гости? Тогда пишите в комментариях или администратору группы ✍️ Мы легко организуем такой визит.

#team_news
🔥5👏2👎1🤣1
😀 Всем привет!
Готовы поделиться очередным видео с пятничного митапа Mad Brains —
GraphQL на Flutter для чайников 💣

Зачем смотреть:
— узнаешь, что такое GraphQL и “с чем его едят”,
— разберешься, как привязать GraphQL к Flutter и добавить кодогенерацию,
— найдешь полезные библиотеки, советы и инструкции для работы с GraphQL.

Мы ждем твоих комментариев и, конечно, лайков!
Тебе не сложно. Нам приятно ☺️❤️

#madbrains_tekhno
🔥9👍2
☺️ Всем привет!

Среда — это маленькая пятница. А, кстати, знаете, что делает каждый сотрудник Mad Brains под конец рабочего дня в пятницу? Правильно — смотрит выступление коллеги и прокачивает свои hard- и soft-скиллы. Присоединяйтесь к нам! Сделать это, как говорил 🕵️‍♂️ Шерлок Холмс, элементарно. Все записи с докладов — на нашем Youtube-канале!

Что из свеженького? Доклад «Репутация: просто о сложном. Кейсы из сферы IT и не только». Презентовал его наш аналитик Артем 🧔🏻‍♂️

👀 Скорей смотри 👇
👍7🔥2
🔥 Уже в эту субботу! Директор по персоналу Mad Brains Елена Аскерова выступит на международной конференции «Стачка»!

Обязательно приходи! Узнаешь, почему сотрудники IT-компаний сталкиваются с выгоранием, какие виды мотивации бывают и как строится крутой HR-бренд 💪

Когда?
13 апреля, 14:00.

Где?
Ульяновский государственный педагогический университет им. И.Н. Ульянова.

Как называется доклад?
«Где у него кнопка? Или как узнать мотивацию сотрудников и эффективно на нее влиять».

Кому полезно?
— руководителям ключевых подразделений,
— сотрудникам HR-отделов,
— нынешним и будущим сотрудникам IT-отрасли.

Не проспи! 😀 Встречаемся на «Стачке»!

#team_news #nastachku
6🔥5🥰3
This media is not supported in your browser
VIEW IN TELEGRAM
Стачка! 🔥 Было интересно, познавательно, многолюдно! Крутые спикеры и доклады 👍🏻

Так что это за мотивационные факторы, о которых рассказывала HRD Mad Brains Елена Аскерова? Что за 5 кнопок, которые вдохновляют сотрудника развиваться?

Вот они:

🟠 Достижения (не могу стоять на месте, хочу ставить перед собой высокие цели и их достигать)

🟠 Признание (мне важно, чтобы руководство ценило мой вклад в работу команды)

🟠 Ответственность (хочу сам принимать решения, готов за это отвечать)

🟠 Рост и развитие (люблю челленджи, всегда в поиске нового опыта)

🟠 Интерес к работе (хочу делать то, что по-настоящему круто получается и приносит мне удовольствие)

У каждого из нас свои желания и цели 🧏‍♂️

И все же, если ваша мотивация укладывается в ряд условий:
1) хочу гибкий график, возможность расти на крутых проектах и хорошую зарплату, чтобы 👉👉👉
2) получать удовольствие от работы,
вам точно в Mad Brains! 🏃‍♂️

Mad Brains — это по любви! ❤️

P.S. Полная версия доклада будет чуть позже 😉

#madbrains_team
🔥13
У нас смонтировано очередное видео с Техно! 🔥
В нем наш Flutter-разработчик Андрей рассказывает, как проверял и оценивал жизнеспособность нейронок в Dart. Так что, если вы активно интересуетесь ИИ и способами их применения в Dart, вы пришли, куда надо. Клик-клик! 👇
🔥9🤔2🏆2
Вы когда-нибудь примеряли на себя роль ментора?

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

Так ты сможешь:

🟣 структурировать знания,

🟣 прокачать софт-скиллы,

🟣 вырасти как лидер,

🟣 получить положительный заряд от процесса обучения (видеть, как подопечный делает успехи — особое удовольствие).

Так вот. Если вы давно хотели стать ментором, но не знали, с чего начать, смотрите доклад Антона Волкова, CEO Solvery — это специальная платформа для менторства в IT.

Антон приходил в Mad Brains на «Техно». Мы послушали, записали, а теперь делимся информацией, чтоб и вы смогли узнать, как нанести пользу окружающим! 😀

Энджой! 👇

#MadBrains
🔥8
🎉 Ура, последний рабочий день перед долгими выходными! И неделька выдалась насыщенная, надо сказать!

Наша компания стала соорганизатором хакатона «ТраеКТОрия» для студентов Колледжа экономики и информатики, электромеханического колледжа, Ульяновского многопрофильного техникума, а также учащихся 9-х, 10-х классов.

😎 В качестве кейс-задания от Mad Brains участникам понадобилось разработать Telegram-бота на языке Python, презентовать его жюри и нашему очаровательному эксперту — java backend-разработчику Софии.
🔥7👍2🎉1