Сёрф Flutter-разработка
رفتن به کانال در Telegram
Комьюнити Flutter-разработчиков Сёрф. 📚 Делимся полезными материалами и обучаем стажёров 💬 Чат → t.me/+HL9Xac3ChFhmMmZi 🧑🏻💻 Вакансии: career.surf.ru 📲 По вопросам @SurfAskBot
نمایش بیشتر3 176
مشترکین
+124 ساعت
+137 روز
+1930 روز
آرشیو پست ها
Loose and tight constraint
Начинающим разработчикам знакома ситуация, когда виджет «игнорирует» переданные параметры — хотя размеры явно указаны. Вот мы указали явный размер для контейнера, ожидая получить квадрат 100х100:
MaterialApp(
home: Container(
width: 100,
height: 100,
color: Colors.red,
),
),
Но контейнер всё же растянется на весь экран. В карточках разобрали, почему так происходит.
Ссылки на DartPad:
🔵 Пример из поста
🔵 Как узнать ограничения
🔵 Изменяем ограничения
🔵 Устанавливаем свои ограничения
#экспертныйВозможности dart:async — Completer
Мы все хотим писать лаконичный асинхронный код, используя
Future. Но иногда обстоятельства не на нашей стороне: нужно интегрировать плагин/библиотеку, которые предоставляют callback-based API.
К счастью, мы можем взять ситуацию в свои руки и очень просто преобразовать неудобные вызовы method((result) { … }) к привычным final result = await method().
Поможет в этом Completer. В карточках ассказываем, как это реализовать.
‣ Документация по CompleterДобраться до строк
Продолжаем тему локализации. Сегодня рассмотрим три случая работы с локализованными строками в приложении:
→ Локализации ещё нет, и вы используете хардкод.
Расскажем, как сделать так, чтобы при подключении локализации ничего не забыть.
→ Локализация настроена.
Посмотрим, как удобнее всего добраться до неё через контекст.
→ Локализация вне контекста.
Покажем, как получить локализованные строки, если доступа к контексту нет.
#экспертный
Как управлять Java при помощи jenv
Иногда нужно использовать определённую версию Java для проекта — мы столкнулись с этим при работе над одним из Flutter-приложений. Решение нашлось в виде использования менеджера версий Java. В статье на Хабр рассказываем, что это за инструмент и как с ним базово работать на MacOS.
➡️ Читать по ссылке
#экспертный
3. Какой контент тебе интересен? Можно выбрать несколько вариантов:
К нам пришло много новых людей — спасибо, что подписываетесь! Продолжаем развивать канал и хотим понять, что тебе интересно. Пожалуйста, ответь на несколько вопросов:
1. Какой у тебя грейд?
Локализация по-новому
Поддержка языков системы в приложении у нас имеется и уже привычна. Поменяли в системе — поменялось в приложении, всё круто. Но с недавних пор в новых версиях iOS и Android появилась возможность задавать индивидуальные настройки локали для приложений:
🤖 Android: Settings ➡️ System ➡️ Languages & input ➡️ App Languages
🍏🤖 iOS и Android: App Settings ➡️ Language
Рассказываем, как это реализовать для наших приложений.
Ссылки из карточек:
🔵 Документация для Android
🔵 Документация для iOS
#экспертный
Вакансия: Flutter Team Lead 😎
В поиске опытного Flutter-разработчика в свою команду. Вместе мы будем разрабатывать крутые приложения, сложные сервисы и решения с применением искусственного интеллекта.
➡️ Для отклика пиши Алёне.
#вакансия
Новый эпизод Flutter Dev Podcast 🎧
Говорим о DCM — как изменился проект и какими новыми функциональными возможностями обзавёлся? Куда он развивается и какие цели преследует его создатель? И, что немаловажно, как на пользователей повлияют изменения в системе монетизации?
Обсудили не только нюансы технической реализации плагинов, но и неприглядную обратную сторону мира open-source, и даже выяснили, как с помощью линтера ты и твоя команда можете заработать денег!
🎙 У микрофона — Женя и Марк из Surf и Дима из DCM.
⌨️ Подписывайся на подкаст в Telegram и слушай на всех доступных площадках:
Soundcloud | Яндекс.Музыка | Spotify | Apple Podcasts | CastBox | Google Подкасты | VK
#экспертный #от_сёрфера
Мы — на Стачке и Crossconf 🐦
Если будешь на одной из этих конференций, не пропусти доклад Сёрфера Артёма «Foreign Function Interface, или как подружить Dart с C». Поговорим о Dart FFI (Foreign Function Interface) и как связать короткий код на C с Dart посредством dart:ffi.
📅 Crossconf: 15 сентября, 17:15, зал 4
📅 Стачка: 16 сентября, 15:00, зал 3.6
Ждём тебя!
#мероприятия
В стек…
В недавнем опросе про коллекции в Dart вы почти единогласно ответили, что хотели бы больше постов на эту тему — расскажем тогда ещё кое о чем.
Итак, есть задача: нужно сделать сервис по работе со списком недавно просмотренных товаров в интернет-магазине.
Требования:
🔵 в списке может быть не больше 24 позиций;
🔵 если достигнут предел, то при добавлении нового, последний товар в списке отбрасывается;
🔵 если пользователь просмотрел товар, который уже в списке, то он передвигается в начало.
Ссылки из карточек:
➡️ Queue
➡️ ListQueue
➡️ DoubleLinkedQueue
➡️ Difference between a DoubleLinkedQueue and a ListQueue
➡️ Пример кода на DartPad
#экспертный
Surf Flutter Offer: расширяем команду 🐮
Организуем one-day offer для middle и senior-специалистов — ищем ребят, которые спроектируют сайт и мобильное приложение крупного магазина, а также будут развивать банковский продукт.
Кто мы?
➡️ Одна из крупнейших Flutter-команд в СНГ;
➡️ 35+ реализованных проектов;
➡️ 20+ крутых инженеров;
➡️ С 2018 года задаём стандарты архитектуры Flutter в Surf Gear;
➡️ Создали первый банк на Flutter в Европе и свой Flutter-курс.
🔵 Оставляй заявку до 10 сентября по ссылке.
#мероприятия #вакансия
