Pull to refresh
16K+
17
6
Rating
78
Subscribers
Send message

Как устроено состояние во Flutter: локальное состояние, данные приложения, InheritedWidget и Provider

Level of difficultyMedium
Reading time9 min
Reach and readers7.9K

Привет, Хабр! Это Аня, руководитель Flutter-команды Friflex, и Катя, Flutter-разработчица Friflex.

В этой статье разберем, что такое состояние во Flutter. Катя расскажет, как отличать локальное состояние от состояния приложения и в каких случаях достаточно setState(). Аня покажет, как передавать данные по дереву виджетов с помощью InheritedWidget, и разберет, как устроен Provider.

Читать далее

Как подготовиться к собеседованию на Flutter-разработчика

Level of difficultyEasy
Reading time4 min
Reach and readers9.8K

Привет! Это Анна, руководитель Flutter-команды Friflex. Я иногда провожу технические собеседования с Flutter-разработчиками и вижу, с чем чаще всего сталкиваются начинающие специалисты.

В этой статье я собрала чек-лист для подготовки: как рассказать об опыте, какие темы повторить и как вести себя, если вы не знаете ответ или сильно волнуетесь.

Читать далее

Как мы на хакатоне создавали ИИ-сервис для световых перформансов, а модель вместо «ЦСКА» рисовала «Арсенал»

Level of difficultyEasy
Reading time9 min
Reach and readers6.1K

Всем привет! Меня зовут Юрий, я участник и победитель хакатона по вайб-кодингу Friflex и ЦСКА (Вайбатона). В этой статье расскажу, как я вместе с командой собирал ИИ-сервис для стадионных перформансов: как мы писали в промпте «красно-синий текст футбольного клуба ЦСКА», а получалось лого Арсенала, как пришли к inpainting, зачем вынесли часть генерации анимаций в Web Worker. И покажу, что вообще получилось за четыре часа. 

Читать далее

Как мы ускоряем работу во Flutter в VSCode: расширения и горячие клавиши

Level of difficultyEasy
Reading time5 min
Reach and readers7.9K

Привет, Хабр! На связи Анна, лидер Flutter-команды Friflex, и Роза, Flutter-разработчица Friflex. Эта статья о том, как мы убираем лишнюю рутину в VSCode. Расскажем про полезные расширения и поделимся списком шорткатов, которые помогают быстрее искать, править и перемещаться по коду.

Читать далее

Как добавить свое расширение в DevTools и взаимодействовать с кодом приложения

Reading time7 min
Reach and readers5.8K

Привет, Хабр! Я — Роза, Flutter-разработчица в Friflex. Уверена, многие из вас знакомы с Dart DevTools и уже использовали его для анализа своих Flutter-приложений. Но пробовали ли вы создавать собственные расширения? Недавно у меня была такая задача, и я хочу поделиться своим опытом.

Читать далее

Оптимизация Flutter-приложения: списки, build() и утечки памяти

Reading time6 min
Reach and readers3.8K

Привет, Хабр! Меня зовут Анна Ахлестова, я лидер Flutter-команды компании Friflex. В этой статье я расскажу об оптимизации скроллящихся списков, уменьшении лишних перестроений в build() и контроле утечек памяти в приложении на Flutter. Разберу, какие решения помогают снизить нагрузку на интерфейс, где обычно возникают проблемы с производительностью и на что стоит обращать внимание в повседневной разработке.

Читать далее

Нестандартные применения LLM и синтетических данных: от антивируса для завода до сжатия данных языковыми моделями

Reading time7 min
Reach and readers6.2K

Привет, Хабр! Меня зовут Вадим Кондаратцев, я руковожу ИИ-направлением в Friflex и небольшой ИИ-лабораторией в МГТУ им. Баумана. Последние 10 лет работаю на стыке ML, HPC и Edge Computing, преподаю машинное обучение и примерно раз в день запускаю что-нибудь на суперкомпьютере.

Это расширенная версия моего доклада на CrossConf 2025 про мой опыт применения синтетических данных в проектах, которые связаны с интеграцией систем машинного обучения в промышленности и науке. Если интересно посмотреть, какая бывает синтетика и что она позволяет покрыть, прошу под кат.

Читать далее

Между логином и 401: как устроена JWT-авторизация во Flutter

Level of difficultyEasy
Reading time6 min
Reach and readers5.9K

Привет, Хабр! Я — Роза, Flutter Dev Friflex. Сегодня я расскажу о веб-токенах JWT: как с их помощью безопасно передавать данные и реализовать авторизацию во Flutter. Разберем, чем JWT отличаются от классической схемы с сессиями, как работают Access- и Refresh-токены, зачем нужен Blacklist и как все это собрать в рабочее решение.

Читать далее

8 трендов в дизайне интерфейса без эффектов ради эффектов

Level of difficultyEasy
Reading time5 min
Reach and readers8.4K

Привет! Меня зовут Светлана Моторкина, я Head of Design в компании Friflex. Тренды в интерфейсах появляются регулярно, но, увы, большинство из них не проходит проверку продом. В этой статье я рассмотрю интерфейс не как набор визуальных приемов, а как систему: от цвета и формы до доступности, анимации и новых сценариев с AI.

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

Читать далее

Deeplink-и во Flutter: динамические ссылки и app_links

Level of difficultyMedium
Reading time3 min
Reach and readers5.1K

Привет! Меня зовут Анна Ахлестова, я Flutter Team Lead в компании Friflex. Мобильные приложения, в том числе на Flutter, позволяют настраивать обработку различных ссылок. В этой статье я разберу, как во Flutter реализовать поддержку deeplink-ов и универсальных ссылок и как управлять ими на уровне платформы.

Читать далее

Flutter — везде (и даже в чайнике). Часть 1

Level of difficultyMedium
Reading time4 min
Reach and readers8.9K

Привет, Хабр! Меня зовут Юра Петров, я руководитель отдела разработки в компании Friflex и автор канала «Мобильный разработчик». Возможно, мы встречались этой осенью на CrossConf, где я выступал с докладом и мы с ребятами презентовали нашу книгу о Flutter. В этой статье хочу продолжить рассказывать о фреймворке: какие платформы он поддерживает, в чем его преимущества (и как сделать прошивку своего чайника).

Читать далее

Когда .arb не тянет: как я подключаю TMS к Flutter-проекту

Level of difficultyMedium
Reading time5 min
Reach and readers5.9K

Привет! Я Роза, Flutter Dev Friflex. Недавно на CrossConf рассказывала о том, что такое система управления переводами и как подключить ее к проекту на Flutter. В этой статье — краткое сравнение популярных сервисов локализации и разбор подключения TMS по шагам.

Читать далее

Nano Banana для дизайнеров: как работать, не отходя от Figma

Level of difficultyEasy
Reading time3 min
Reach and readers30K

Привет, Хабр! Меня зовут Алина Сидоренко, я лид-дизайнер в компании Friflex. В этой статье я расскажу, как быстро генерировать и редактировать изображения без фотошопа (и даже не выходя из Figma) с помощью нейросети Nano Banana. Это модель редактирования и генерации изображений внутри ИИ-помощника Gemini от Google, которая позволяет точечно менять отдельные элементы на фото и при этом не разрушать всю сцену.

Читать далее

Вместо бесконечных макетов под плотный интерфейс мы просто…

Level of difficultyEasy
Reading time3 min
Reach and readers6.3K

Привет, Хабр! Меня зовут Светлана Моторкина, я Head of Design в компании Friflex. В этой статье расскажу, как мы придумали формулу, чтобы управлять сложными адаптивными интерфейсами с большим количеством повторяющихся элементов в ряду.

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

Читать далее

Мы съездили на дизайн-выходные и вернулись к реальной работе

Level of difficultyEasy
Reading time5 min
Reach and readers1K

Привет, это дизайнеры Friflex. Мы съездили в Казань на дизайн-выходные и сделали заметки про редизайн, ИИ, эмоции в интерфейсах и выгорание. Универсальных ответов здесь нет, но, может быть, наблюдения в этой статье будут вам полезны, дорогие коллеги.

Читать далее

Duit: как создать эффективный BDUI фреймворк, не привлекая внимания санитаров

Level of difficultyMedium
Reading time8 min
Reach and readers2.7K

Привет, Хабр! Меня зовут Никита Синявин, я ведущий Flutter-разработчик в компании BetBoom, а сегодня еще и гостевой автор Friflex. В этой статье я расскажу о своем Opus Magnum — создании эффективного Backend-Driven UI под названием Duit.

Читать далее

4, 3, 2, 1 — поехали! Реальная история запуска IT-продукта за четыре месяца

Level of difficultyMedium
Reading time8 min
Reach and readers5.7K

Привет, Хабр! Меня зовут Юлия Запольская, я продакт-менеджер в Яндексе, а  сегодня еще и гостевой автор Friflex. В этой статье я поделюсь инсайтами, благодаря которым у меня получилось запустить продукт за четыре месяца.

Мой продукт называется CodeRun. В нем можно прокачивать свои навыки в формате решения практических задач по нескольким направлениям: фронтенд, бэкенд, аналитика, ML и мобильная разработка. Еще там можно общаться в коммьюнити (мы его модерируем и всячески поддерживаем), обращаться за помощью в решении задач к редакторам и соревноваться за призы и сокращенную схему найма в Яндекса.

Перенесемся в февраль 2024 года. У коллег была классная идея и ресурсы в виде большого количества контента и задач для тренировки навыков разработчиков, которые долгое время использовались в Яндексе для различных соревнований, но не публиковались для внешних пользователей. А также было огромное желание начать помогать разработчикам, которые очень хотят попасть в Яндекс или начать свой путь в IT. 

С помощью этого контента и команды был собран бета-тренажер. Его запустили на узкую аудиторию — и сделали главный вывод, что он «зашел», надо делать. 

Было принято решение запуститься в июне 2024 года: оставалось четыре месяца для того, чтобы полностью собрать фактуру, погрузиться и запустить продукт. 

Что требовалось сделать? Во-первых, сильно расширить функциональность продукта, потому что она была супер базовая. В публичный запуск с такой функциональностью выходить сложно, потому что рынок конкурентов перенасыщен и важно было показать что-то особенное.

Читать далее

Что получится, если 14 команд сядут кодить с ИИ — и по вайбу

Reading time5 min
Reach and readers12K

Привет, Хабр! Это Александра Павлова, деврел Friflex. В этой статье расскажу про наш недавний эксперимент — хакатон по вайб-кодингу. 

Если коротко: вместе с Институтом №8 МАИ мы собрали 14 команд студентов IT-специальностей, дали им один вечер, минимум ограничений, максимум генеративных ИИ — и предложили придумать и реализовать мини-игру для страховой компании ЭНЕРГОГАРАНТ. Мы назвали это гордым словом «Вайбатон» (ну вы поняли: вайб + хакатон), потому что вайб-кодинг и правда был, но была еще и проверка кода экспертами жюри.

Читать далее

Первый проект на HarmonyOS — мой плейлист для старта с нуля

Level of difficultyEasy
Reading time24 min
Reach and readers12K

Привет, Хабр! Это Юрий Волковский, техлид фронтенда в компании Friflex. Я работаю, в том числе, с мобильными приложениями на React Native. Разработка под HarmonyOS сразу заинтриговала меня тем, что ArkTS — это как бы TypeScript, но не совсем. И сам ArkUI сочетает в себе элементы и из React Native, и из Flutter, который мне тоже знаком. 

Я решил: создам на Harmony OS базовое мобильное приложение и посмотрю, насколько дружелюбна эта платформа. Если вы мобильный разработчик (особенно с опытом Android или Flutter) и тоже хотите разобраться, что это за платформа и как с ней работать — вы по адресу. Создадим базовый плейлист по шагам.

Читать далее

Offline First в мобильных приложениях. CRUD на стороне клиента

Level of difficultyMedium
Reading time9 min
Reach and readers2.4K

Привет, Хабр! Это Ахмед Шериев, сооснователь стартапа VoxOps, а сегодня — еще и гостевой автор блога Friflex. Это вторая статья про мой опыт разработки офлайн-приложений — первая была про кэширование.

Если пользователи в офлайне должны менять данные, а потом синхронизировать изменения с сервером, есть два основных подхода. Первый — синхронизировать сами данные. Второй — синхронизировать команды или события.

Читать далее

Information

Rating
1,208-th
Works in
Registered
Activity