Surf Flutter Team
Комьюнити Flutter-разработчиков Surf. 🛠 Разработали решения для KFC, Росбанка и Medium Quality 📚 Делимся полезными материалами и обучаем стажёров 💬 Чат → https://t.me/+Pzp8MViNYtI4NDli 🧑🏻💻 Вакансии: career.surf.ru 📲 По вопросам @SurfAskBot
Більше2 605
Підписники
+324 години
+297 днів
+9130 днів
Архів дописів
Фото недоступнеДивитись в Telegram
Surf, Яндекс, Flutter — приглашаем на митап в Москве 🐦
Проводим большой митап в столице! Расскажем про опыт нашей команды, поделимся внутренней кухней опенсорса. А наши Flutter-звёзды — Женя и Марк — оценят эволюцию фреймворка за 5 лет. No holy war!
А также будет special guest из Яндекса. Ждём Flutter-разработчиков и тех, кому неравнодушен фреймворк.
📅 19 апреля, начало в 19:00
📍 Москва, лофт Idealista, ул. Нижняя Сыромятническая, 11/1, офис 316
🚇 Метро Чкаловская
📌 Подробности и регистрация
#surf_events #surf_flutter
🔥 25 7❤ 2👎 1🤔 1
Dart 3 спустя почти год: Records
В прошлый раз Женя рассказывала про Sealed-классы. Сейчас поговорим про Records.
До их появления привычные во многих языках программирования кортежи реализовывались с помощью пакетов со словом tuple в названии. С недавних пор в этом нет необходимости.
Итак, что такое Records. Лучше определения, чем в документации, мы не нашли, поэтому лови:
«Records представляют собой анонимный, неизменяемый, агрегированный тип данных. Как и другие типы коллекций, они позволяют объединять несколько объектов в один объект. В отличие от других типов коллекций, записи имеют фиксированный размер, неоднородны и типизированы»Пример Record, опять же из документации:
var record = ('first', a: 2, b: true, 'last');
Разберём подробнее, что это значит, посмотрим на базовое использование, особенности и изучим интересные расширения для работы с Records. Погнали!
Полезные ссылки (в карточках подчёркнуты):
🔵 Pattern types для Record
🔵 Исходники FutureRecord и FutureIterable
🔵 Пример с FutureRecord
🔵 Заметка про typedef
#surf_flutter👍 26❤ 6 5😱 3
Фото недоступнеДивитись в Telegram
Новый эпизод Flutter Dev Podcast 🎧
Продолжаем тему карьеры Flutter-разработчика — поговорим о том, какой дополнительный профит можно извлекать из собеседований, какие вопросы по Flutter нам нравится задавать и на какие отвечать, поделимся опытом процесса отбора в Яндекс.Про и Surf, а также врываемся с особо острой темой — лайв-кодинг в интервью.
А наш специальный гость, Миша Зотьев, расскажет о том, чем интервью в зарубежные компании отличается от наших.
🎙 У микрофона — Женя и Марк из Surf, Илья Вирник и Сергей Кольцов из Яндекс.Про, Михаил Зотьев из Wolt, автор канала Oh, my Flutter.
⌨️ Подписывайся на подкаст в Telegram и слушай на всех площадках:
Soundcloud | Яндекс.Музыка | Spotify | Apple Podcasts | CastBox | Google Подкасты | VK
#surf_podcast
👍 18🔥 10 5❤ 1
Фото недоступнеДивитись в Telegram
Ещё один новый пакет в Surf Gear
По умолчанию Flutter уводит многострочный текст в прозрачность сверху вниз. Но бывает, что нужен эффект затухания текста слева направо. Для таких случаев был создан пакет faded_text.
Чтобы применить fade-эффект из пакета, просто создай экземпляр класса FadedText подобно обычному Text:
FadedText(
'Lorem ipsum dolor sit amet,
consectetur adipisci and blah blah...',
maxLines: 5,
)
Есть ещё FadedText.rich, который аналогичен Text.rich.
🐦 Пробуй и делись опытом!🔥 29 9❤ 5
Фото недоступнеДивитись в Telegram
Новый пакет в Surf Gear 🐦
Все наши новые пакеты родились из успешных решений, которые кочевали из проекта в проект. И кажется, это самый правильный путь — делать то, чем хочешь пользоваться сам.
➡️ Так что лови новичка в семействе Surf Gear — surf_widget_test_composer!
Это удобный инструмент для облегчения работы с виджет и голден-тестами. Это в некотором смысле обёртка над пакетом golden_toolkit, которая упрощает предварительную настройку и работу.
В файле конфигурации нужно один раз задать темы, устройства, локализацию. После — написать тест с минимумом настроек. На выходе получаем набор голденов по количеству элементов конфигурации.
Например, если у нас 2 языка, 2 темы и мы тестируем их для 3 устройств, то по итогу получим 12 голденов, как вот тут.
🔵 Кроме голден-тестов можно выполнять виджет-тестирование.
Пробуй и пиши, получилось или нет!
🔥 22 8⚡ 3
Записи лекций с первого дня Flutter Study Jam 🐦
Опубликовали записи джема на YouTube. Спасибо всем участникам за насыщенные четыре дня, и ждём на следующих джемах!
📹 Адаптивная вёрстка во Flutter, Максим, Surf Flutter Developer
📹 Сериализация и десериализация — вошли и вышли, Кирилл, Surf Flutter Developer
📹 Коллекции во Flutter, Самир, Surf Flutter Developer
#мероприятия
🔥 30👍 10 9❤ 2
Как создавать платформенные виджеты
Когда разрабатываешь кроссплатформенные приложения, может понадобиться отобразить элементы интерфейса, которые характерны для конкретной платформы. Как оптимизировать работу, чтобы быстрее писать и удобнее поддерживать код, расскажет 🏄♀️ Таня, Flutter-разработчик Surf.
Полезные ссылки:
🔵 Адаптивные виджеты
🔵 Решение Surf для pull-to-refresh: Swipe Refresh
#экспертный #от_сёрфера
👍 34🔥 12🤔 5 5👎 3❤ 2👌 1
⬆️ Примеры использования AbsorbPointer и IgnorePointer
AbsorbIgnore-06.mp42.55 MB
GIF-1.mp43.86 MB
GIF-2.mp43.49 MB
GIF-3.mp43.17 MB
👍 24⚡ 2 1
⬆️ Примеры использования AbsorbPointer и IgnorePointer
GIF-1.mp43.86 MB
GIF-2.mp43.49 MB
GIF-3.mp43.17 MB
AbsorbPointer и IgnorePointer — 3 кейса использования
Бывает, что необходимо сделать виджет, который не реагирует на жесты. Например, нужно сделать кнопку не кликабельной или поле ввода неактивным. А иногда нужно сделать это одновременно с несколькими виджетами. В таких ситуациях на помощь приходят AbsorbPointer и IgnorePointer, которые хоть и похожи друг на друга, но все-таки разные.
🏄♀️ Сёрфер Женя расскажет об этом подробнее.
#экспертный #от_сёрфера
🔥 31👍 13⚡ 5 2
Оберіть інший тариф
На вашому тарифі доступна аналітика тільки для 5 каналів. Щоб отримати більше — оберіть інший тариф.