Flutter. Много
2.76K subscribers
333 photos
23 videos
258 links
Заказать мобильную разработку: https://amiga.agency/?utm_source=tg
Заказать рекламу в канале @amiga_agency_bot

Новости Flutter-разработки, дайджесты мероприятий, личный опыт.
Download Telegram
Hola, Amigos! Принимаем поздравления, нам исполнилось 4 года🥳

В этом году мы достигли значительных успехов, и каждый шаг делал нас только сильнее и увереннее. Давайте вспомним, какие важные моменты произошли в нашем пути за 2024 год:

⚙️ Взяли 72 интересных проекта, это в 2 раза больше, чем в прошлом году;
⚙️ Обновили корпоративный сайт, и теперь улучшаем его для максимального удобства;
⚙️ Наш канал Flutter.Много вырос на 50%;
⚙️ Поучаствовали в 10 масштабных мероприятиях;
⚙️ Завоевали 2 и 3 место на премии CrossConf Awards и серебро и бронзу на Tagline Awards в номинации «Лучшее мобильное MVP-приложение» с кейсом разработки мобильного приложения для сети «Аптека Ваша №1» и в номинации «Лучший маркетплейс» с кейсом создания первого маркетплейса горного оборудования в России;
⚙️ Запустили новые площадки для разработки;
⚙️ Оптимизировали процессы;
⚙️ Улучшили продуктовый подход и расширили спектр услуг;
⚙️ Научились делать больше с меньшими затратами ресурсов, стали эффективнее и сильнее.

С каждым годом количество крупных клиентов и сложных интересных проектов увеличивается, а значит — нам доверяют.

Спасибо всей команде, клиентам и партнёрам — без вас этот путь был бы невозможен! А мы замотивированы расти и не останавливаться, поэтому stay tuned❤️
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉17👍74🔥3🤝1
Hola, Amigos! В день всех влюбленных подготовили для вас карточки с поздравлениями💖

Отправляйте близким, сохраняйте и пишите в комментариях, как ещё можно признаться в любви, если работаешь в IT:)
Please open Telegram to view this post
VIEW IN TELEGRAM
13🥰6💘3👍1👎1
Hola, Amigos! Напоминаем о must-visit этого февраля — FlutterConf, первую в России конференцию, полностью посвященную Flutter!

В этот раз Павел Гершевич, наш Flutter Team Lead, выступит с докладом: «Многомодульность в Flutter 2.0. Все подходы и что нового». Павел поделится своим опытом, расскажет о современных подходах к многомодульности и том, как это может упростить вашу разработку.

📅 Дата: 21 февраля 2025 года
📍 Место: Москва, 3-я ул. Ямского Поля, 26А

Еще в программе:

Два потока докладов про реальные кейсы с нестандартными требованиями, архитектурные решения и инструменты для Flutter-проектов.
Нетворкинг-события — завести полезные знакомства и найти новых единомышленников.
Экспертная зона — обсудить конкретные вопросы с профессионалами, получить практический совет и понять, как расти в профессии.
Круглый стол: прошлое, настоящее и будущее Flutter.
• AfterParty, где получится неформально пообщаться с коллегами.

🔥 Напоминаем, промокод Amiga10 даст вам скидку 10% на билеты. Успейте зарегистрироваться!

Программа лежит по ссылке, а мы ждем вас в 1 зале в 11:30!
🔥53👍3
Hola, Amigos! На связи Михаил Чернецов, Flutter dev в Amiga. Сегодня рассмотрим плагин sensors_plus, который открывает доступ к сенсорам вашего устройства. С его помощью можно получать данные от акселерометра, гироскопа, магнитометра и барометра.

Как это работает?

Для доступа к данным сенсоров достаточно подписаться на соответствующий стрим. Например:

userAccelerometerEvents.listen(
(AccelerometerEvent event) {

},
onError: (error) {},
cancelOnError: true,
);


Важно: На некоторых старых Android-устройствах данные сенсоров могут быть недоступны. Поэтому не забывайте обрабатывать ошибки через onError.

Какие стримы доступны?

accelerometerEvents — необработанные данные акселерометра, включая гравитационное притяжение Земли.

userAccelerometerEvents — данные акселерометра без учета гравитации.

gyroscopeEvents — данные о вращении устройства.

magnetometerEvents — данные о магнитном поле вокруг устройства.

barometerEvents — данные об атмосферном давлении.

Для доступа к сенсорам в iOS необходимо добавить ключ в Info.plist, иначе приложение упадет.

<key>NSMotionUsageDescription</key>
<string>Ваше описание</string>


Для чего могут быть использованы эти датчики:

Акселерометр — например, для определения тряски устройства.

Магнитометр — для определения направления взгляда пользователя (например, в картографии).

Гироскоп — для определения наклона устройства (раньше часто использовался в играх).

Барометр — для измерения высоты над уровнем моря.

Плагин sensors_plus — это мощный инструмент для работы с сенсорами, который может открыть новые возможности для вашего приложения. Попробуйте и делитесь своими кейсами!
🔥9👍53
Дайджест февраля

Hola, Amigos! Собрали в одну подборку все полезные посты февраля, которые вы могли пропустить. Выбирайте, что интересно, и переходите по ссылкам:

⚪️ Cookies во Flutter. Часть 1
⚪️ Cookies во Flutter. Часть 2
⚪️ Многомодульность во Flutter 2.0
⚪️ С днем всех влюбленных
⚪️ Sensors_plus

Всем хорошего кода!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🔥3
Hola, Amigos! FlutterConf 2025 позади, и это было мощно! 🚀

Впервые в России состоялась конференция, полностью посвященная Flutter, и она объединила сотни разработчиков, архитекторов и экспертов индустрии. Два потока докладов, дискуссии, нетворкинг, разборы кейсов — все, чтобы участники ушли с багажом полезных знаний и новых знакомств.

Наш Flutter TeamLead Павел Гершевич рассказал о многомодульности в Flutter 2.0 — разобрали подходы, обсудили лучшие практики и свежие фичи.

Также Павел поделился впечатлениями:

FlutterConf стал местом, где все Flutter-разработчики России могут общаться, обмениваться опытом и узнавать что-то новое.

Как член программного комитета скажу, что нам удалось собрать сильные доклады, и конференция прошла просто отлично! Много участников, общения, знакомств. Будем рады видеть на следующем FlutterConf.


Спасибо организаторам, спикерам и всем, кто присоединился! Увидимся в следующем году! 🚀
🔥85👍3
Hola, Amigos! Делимся полезным:

Критическое мышление в эпоху быстрого принятия решений

Руководитель в IT каждый день решает задачи разной степени адовости. Иногда решения принимаются на автомате, по шаблону — потому что так быстрее. Но чем выше ставка, тем важнее уметь включать критическое мышление.

28 марта на офлайн-митапе разберемся, как руководителям в IT не попадать в когнитивные ловушки и принимать решения осознанно. Организаторы из AGIMA обещают много экспертов и классную программу:

🔥 В первой части вечера бизнес-тренер Алексей Кельин научит сомневаться во всем — в хорошем смысле. Он покажет инструменты, которые помогут руководителям критически оценивать свои мысли, видеть ситуацию со всех сторон и принимать эффективные решения.

💬 Потом гости обсудят кейсы с лидерами команд из СберАналитики, Госуслуг, Okko, Магнит OMNI, СОГАЗ и AGIMA — когда нестандартные решения дали бизнесу профит в деньгах, людях и нервах.

🥂 В финале — зона для нетворкинга с вкусной едой, напитками и кальянами (потому что критическое мышление лучше тренируется с бокалом в руках).

Событие закрытое и эксклюзивное — только для руководителей IT-команд, CEO, CTO, CPO, PO, которые принимают стратегические решения в крупных компаниях.

Мы создаем атмосферу для обмена опытом между лидерами рынка, поэтому все заявки тщательно модерируются.

Количество мест ограничено — успейте зарегистрироваться по ссылке: https://clck.ru/3GqLWF
🔥53👍3
Hola, Amigos! На связи Павел Гершевич, Mobile Team Lead в Amiga. Сегодня обсудим максимально полезный инструмент для командной работы — Git Hooks.

При совместной разработке кода часто возникают различия в стилях: кто-то забывает переносы строк, кто-то — запятые. Конечно, можно поручить форматирование CI/CD, но это займет больше времени. Git Hooks выполняются на рабочей станции разработчика и легко настраиваются.

Для чего могут быть полезны Git Hooks:

⚙️ Форматирование кода — dart format
⚙️ Статический анализ кода — dart analyze
⚙️ Запуск тестов

Все это можно запускать в определенные моменты:

⚙️ Перед и после git commit
⚙️ Перед и после git push
⚙️ Перед и после других команд гита

Давайте рассмотрим на примере добавления команды на форматирование кода перед тем, как разработчик сделает коммит.

Пример: добавим команду форматирования кода перед коммитом. Сначала укажем папку для Git Hooks:

git config core.hooksPath .githooks/


Далее создадим эту папку и в ней файл pre-commit. Посмотрим на его наполнение:

#!/usr/bin/env bash

#dart format
printf "\e[33;1m%s\e[0m\n" 'Running dart format'

result=$(dart format .)
result_lines=$(echo "$result" | wc -l)

if [ "$result_lines" -gt 1 ]; then
echo "$result"
printf "\e[31;1m%s\e[0m\n" 'Dart format applied changes, please recommit'
exit 1
fi

echo "$result"
printf "\e[32;1m%s\e[0m\n" 'Finished running dart format'


Тут мы не просто не вызываем наш метод, но и смотрим на его результат. Если он ничего не поменял, то выведем, что все хорошо, в обратном случае попросим пользователя сделать коммит еще раз.

Во второй части мы перенесем этот скрипт на Dart.

Делитесь в чате: используете ли вы Git Hooks в своих проектах? Какие команды запускаете?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥3
Hola, Amigos! На связи команда агентства продуктовой разработки Amiga. Сегодня запускаем рубрику полезных материалов о Flutter для всех: от только начинающих до уверенных сеньоров.

Если у вас уже есть базовые знания Dart, Java, Kotlin или Swift, изучение Flutter пойдет быстрее. А для новичков лучше проходить курсы, где сначала разбирают основы языка и принципы мобильной разработки. Итак, с чего начать:

1. Пройти онлайн-курс. Они предлагают пошаговые инструкции, практические задания и поддержку менторов. Например, курс «Основы Flutter (в разработке)» от авторского коллектива книги «Основы Flutter».

2. Послушать подкасты, чтобы быть в курсе последних трендов и узнавать истории успеха из первых уст. Например:

⚙️FlutterDevPodcast новости индустрии, продакшн-опыт внедрения и интересные наблюдения (там выступал Паша, можно послушать тут)
⚙️The Flutter Podcast — интервью с разработчиками Google и кейсы из реальных проектов.⚙️На английском

3. Почитать
книги и другие материалы. Например:

⚙️Основы Dart — подробное изучение языка вплоть до разработки полноценного приложения.
⚙️Официальная документация Flutter — с интерактивными примерами. Настольная книга для всех.
⚙️ Хендбук о Flutter в Яндекс.Образовании

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

Например:
- Flutter. Уроки с нуля до профи
- С нуля до профи в Dart - Dart (курс простыми словами)
- Уроки Flutter и Dart с нуля
- YouTube-канал «LazyLoad Dart & Flutter» — короткие и понятные видео.

А затем изучаем сопутствующие технологии:
- система контроля версий: Git: курс
- сервисы Firebase: Flutter Firebase Course | Firebase Mastery- работа с сетью: Flutter REST API
- state-менеджеры: Provider (Flutter) и ​​Flutter Bloc
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥42👏1
Hola, Amigos! На связи Павел Гершевич, Mobile Team Lead в Amiga. Сегодня мы продолжим говорить про Git Hooks, а именно рассмотрим, как их можно делать на Dart.

В этом нам поможет библиотека git_hooks. Ее нужно активировать глобально.

dart pub global activate git_hooks


Далее создать место, где будут храниться наши хуки внутри нашего проекта.

git_hooks create bin/git_hooks.dart


Потом необходимо создать файл bin/main.dart со следующим содержанием:

void main() async{
GitHooks.init(targetPath: "bin/git_hooks.dart");
}


И выполнить команду, которая все для нас подготовит

dart bin/main.dart


После чего мы можем приступить к написанию нашего хука. Заполним наш файл git_hooks.dart:

void main(List arguments) {
Map<Git, UserBackFun> params = {
Git.preCommit: _formatCode,
};
GitHooks.call(arguments, params);
}

Future<bool> _formatCode() async {
try {
print(‘Running dart format’);
ProcessResult result = await Process.run(‘dart format .’, [‘bin’]);
print(result.stdout);
if (result.exitCode != 0) return false;
} catch (e) {
return false;
}
return true;
}


Теперь наш хук должен заработать.

На самом деле, такое решение вполне применимо, но лучше использовать стандартные хуки на Bash.

Делитесь в чате, попробовали ли бы использовать такие хуки?
🔥32👍2
Hola, Amigos! Продолжаем нашу рубрику полезных материалов о Flutter. В прошлой части мы собрали ресурсы для новичков, а сегодня разберемся, как прокачаться до уровня Junior-разработчика.

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

Что важно знать джуну во Flutter?

⚙️Архитектура приложения
​В разработке приложений используются различные подходы к архитектуре и управлению состоянием. Один из них — Чистая архитектура. Она разделяет систему на независимые слои, что облегчает тестирование и сопровождение кода.

⚙️Книги для развития навыков:

1. «Грокаем алгоритмы» — доступное введение в алгоритмы и структуры данных.​

2. «Чистый код» и «Чистая архитектура» Роберта Мартина aka Дядюшка Боб — основы написания чистого и поддерживаемого кода.​

3. «Приёмы объектно-ориентированного проектирования» — изучение шаблонов проектирования для создания гибких и масштабируемых приложений.​

Если хотите развить софт-скиллы, почитайте «Идеальный программист» или «Программист-фанатик».

Много видеоуроков и курсов по Flutter — от основ до продвинутых техник — можно найти на Resocoder, а в коллекции статей Flutteris освещаются различные аспекты разработки.

Следующий пост – для Middle- и Senior-разработчиков! Поделитесь, какие темы вам интересны? 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145🔥3
Hola, Amigos! Продолжаем нашу серию полезных материалов о Flutter. Ранее мы рассмотрели ресурсы для новичков и пути развития до уровня Junior-разработчика. Сегодня поговорим о том, как опытным разработчикам перейти на следующий уровень.

Если вы стремитесь углубить технические навыки или планируете стать тимлидом, важно определить приоритетные направления обучения. Но в любом случае вам будет проще с опытом работы на iOS- или Android-платформах.

1. Для тех, кто хочет углубиться в технические аспекты:

⚙️ Изучение нативной разработки:
глубокое понимание платформ Android и iOS позволит создавать более производительные и адаптированные приложения.​

⚙️ Построение CI/CD: автоматизация процессов интеграции и доставки кода ускоряет разработку и повышает качество продукта.​

⚙️ Системный дизайн: способность проектировать масштабируемые и надежные системы необходима для создания сложных приложений.

Почитать:

- Roadmap для Flutter-разработчиков
- Доклад по Mobile System Design
- Обзор лучших решений для CI/CD

2. Для тех, кто стремится к роли тимлида:

⚙️ Развитие лидерских качеств:
эффективное управление командой и проектами требует навыков коммуникации, планирования и наставничества.​

⚙️ Понимание бизнес-процессов: знание потребностей бизнеса и умение переводить их на язык технологий поможет в принятии стратегических решений.​

⚙️ Техническое лидерство: контроль качества кода, проведение ревью и внедрение лучших практик обеспечивают стабильность и масштабируемость технических решений.

⚙️ Наставничество: помощь коллегам в профессиональном росте, обучение junior-разработчиков и обмен знаниями.

Почитать:

- «Как пасти котов» Дж. Ханк Рейнвотер
- «Эмоциональный интеллект» Дэниел Гоулман

А какие книги и ресурсы помогли вам в профессиональном росте? Делитесь рекомендациями в комментариях
👍154🔥4
Дайджест марта

Hola, Amigos! Собрали в одну подборку все полезные посты марта, которые вы могли пропустить. Выбирайте, что интересно, и переходите по ссылкам для полезного выходного чтива:

⚪️ Как прошла FlutterConf
⚪️ Git Hooks. Часть 1
⚪️ Git Hooks. Часть 2
⚪️ Flutter для начинающих
⚪️ Flutter для джунов
⚪️ Flutter для мидлов и сеньоров

Всем хорошего кода!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🔥3
Hola, Amigos! Поехали в Ульяновск!​ 18-19 апреля состоится XIII Международная IT-конференция «Стачка». Там вы сможете обменяться опытом с топами рынка и посетить множество направлений с полезными докладами:

⚪️ разработка
⚪️ дизайн и контент
⚪️ digital-маркетинг
⚪️ управление

На этот раз Павел Гершевич, наш Flutter Team Lead, выступит с докладом: «Истории о Stories: работаем с анимациями и жестами на Flutter».
Павел поделится своим опытом и расскажет о современных подходах к созданию анимаций и работе с жестами, что поможет сделать ваши приложения более интерактивными и привлекательными.​

📅 Дата: 18-19 апреля
📍 Место: Ульяновск, УлГПУ

Следите за обновлениями на официальном сайте конференции и обязательно приходите на выступление Павла в зал Разработка-2! До встречи на Стачке!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7