Как стать автором
Обновить
1.1

Dart *

Язык программирования, созданный Google

Сначала показывать
Порог рейтинга
Уровень сложности

Flutter & Dart: весенний апдейт — backend, DevTools и Roadmap 2025!

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.9K

Весна в самом разгаре, а вместе с ней — обновления, гайды, инсайды и бум активности в экосистеме Dart и Flutter. В этом выпуске вы найдёте мощные инструменты для DevTools, свежие идеи для архитектуры, backend-направление на Dart и многое другое.

Читать далее

Новости

Локализация Flutter приложения на сервере

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1K

g11n, i18n, l10n... или один из множества вариантов локализации приложения. Привет, меня зовут Константин Комков и я надеюсь данный пример и последовательность шагов сэкономят Вам время при разработке!

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

Читать далее

Использование wildcard-переменной _ в Dart 3

Время на прочтение7 мин
Количество просмотров934

С выходом Dart 3 в язык были добавлены значительные нововведения, включая рекорды, паттерн-матчинг и модификаторы классов. Данная статья посвящена менее обсуждаемой, но полезной возможности, улучшающей чистоту и выразительность кода — wildcard-переменной, обозначаемой символом _.

Символ _ в определенных контекстах позволяет явно указать на намерение разработчика проигнорировать некоторое значение. Рассмотрим сценарии использования и преимущества этого механизма.

Читать далее

Telegram Web App: Интеграция с Flutter

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.8K

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

Теперь рассмотрим, как создать Telegram Web App с использованием Flutter, фреймворка для разработки кроссплатформенных приложений.

Читать далее

Как сделать GitLab CI/CD вашим лучшим другом для сборки и доставки Flutter приложений. Часть 1

Уровень сложностиПростой
Время на прочтение22 мин
Количество просмотров2.6K

Flutter & GitLab CI/CD. Подготовка и настройка физической машины

В мире мобильной разработки, где скорость и стабильность доставки приложений определяют успех, выбор инструментов для автоматизации становится особенно важным. Работая мобильным разработчиком в TAGES более пяти лет, я убедился, что использование self‑hosted решений дает значительные преимущества в гибкости, надежности и контроле над процессами. Одним из таких мощных инструментов является GitLab — платформа, которая позволяет не только управлять кодом, но и настраивать полноценные CI/CD‑процессы.

Эта статья станет первым шагом на пути к полной автоматизации сборки и доставки Flutter‑приложений. Мы разберем, как превратить вашу физическую машину в надежный инструмент для автоматизации. В конце статьи у вас будет готовая машина, которая сможет запускать и обрабатывать задачи из GitLab.

Читать далее

Dart / Flutter — применяя zero / empty объекты ко всему

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.5K

Больше техническая заметка, чем статья, поэтому постараюсь изложить мысли как можно кратче.

Приходя из JS/TS мира, когда я впервые написал на Dart, самой прекрасной вещью, помимо многих было использование функций isEmpty или isNotEmpty для String, List, Map, и так далее. Это было невероятно просто и прекрасно не писать каждый раз  .length == 0.

Также, очень полезным паттерном были empty/zero значения как Duration.zero, Offset.zero, и другие.

Спустя время, я нашел привычку использовать похожий принцип для работы с различными случаями, а также пришел к мысли - что если мы используем такие значения для большей части объектов, избавляясь от null (не для всех случаев, но тем не менее)? Немного поискав, нашел похожий паттерн в Go и других языках, и продолжил думать.

Читать далее

Реализация простого SSE клиента на Dart

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров1K

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

Мы рассматривали два подхода: WebSocket и Server-Sent Events (SSE). Оба варианта соответствовали нашим требованиям, но в итоге мы остановились на SSE — из-за его простоты реализации и использования стандартного HTTP-протокола.

Читать далее

Flutter дайджест – Март 2025

Время на прочтение3 мин
Количество просмотров1.3K

Привет, Flutter-разработчики! 👋 В этом выпуске вас ждут горячие новости, свежие пакеты и интересные видео.

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

Читать далее

Решение задач распознавания на Flutter

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров2.1K

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

Читать далее

FlutterPulse: главные события недели 27.02-05.03.2025

Время на прочтение3 мин
Количество просмотров639

Привет, друзья! Я автор телеграм-канал FlutterPulse.

Хотел сделать небольшую подборку новостей про Flutter, которые, как мне показалось, были самыми интересными за эту неделю, но новостей, прямо скажу, было не много

Читать далее

Синхронизируем скроллы в Sliver-списках

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1K

Всем привет, на связи Иван, тимлид и ведущий Flutter-разработчик Surf.
Сегодня потрогаем тему синхронизации двух списков при скролле и раскроем важные моменты при её реализации.

Спойлер: мы попробовали разные варианты решения и нашли оптимальный.

Читать дальше

FlutterPulse: главные события недели 20.02-26.02.2025

Время на прочтение3 мин
Количество просмотров755

Привет, друзья! Я автор телеграм-канал FlutterPulse.

Хотел сделать небольшую подборку новостей про Flutter, которые, как мне показалось, были самыми интересными за эту неделю

Читать далее

Такие разные Slivers. Часть 5: аналоги обычных виджетов

Время на прочтение2 мин
Количество просмотров706

Мы подошли к заключительной части нашего цикла о сливер-виджетах во Flutter. За прошедшие статьи мы разобрали множество различных типов сливеров, от списков и сеток до гибких решений для управления размером и поведением элементов. В этой финальной статье мы познакомимся со сливер-виджетами, которые являются аналогами обычных (box-based) виджетов, выполняя схожие функции, но для работы в прокручиваемых структурах. Эти элементы расширяют возможности управления видимостью, анимациями и декорациями, предоставляя дополнительную гибкость при создании сложных интерфейсов.

Читать далее

Ближайшие события

Flutter 3.29 — Что нового во Flutter?

Время на прочтение9 мин
Количество просмотров3.3K

Погрузитесь в Flutter 3.29! Этот релиз улучшает разработку и повышает производительность, с обновлениями Impeller, Cupertino, DevTools и других. Flutter 3.29, в котором приняли участие 104 уникальных автора, демонстрирует преданность сообщества. Давайте рассмотрим, что нового!

Читать далее

FlutterPulse: главные события недели 13.02-19.02.2025

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров848

Привет, друзья! Я автор телеграм-канал FlutterPulse.

На этой неделе новостей было немного, но есть несколько интересных статей и обновлений!

Читать далее

Такие разные Slivers. Часть 4: гибкое управление элементами

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров795

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

Читать далее

Аналитика мобильных приложений на Flutter. Часть 2. Подключение Firebase Analytics

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров891

В первой части мы рассмотрели подключение решения Yandex AppMetrica. В этой части мы рассмотрим подключение решения от Google - Firebase.

Читать далее

Flutter: Создание расширения «Получение ссылок для онлайн-кинотеатров» для Chrome

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров906

Привет, я автора телеграм-канала FlutterPulse, хотел поделиться с пользователями хабра расширением для Google Chrome, а также способом его создания.

Расширение создано для получения ссылок для программы yt-dlp для последующего скачивания файлов локально. Пока поддерживается только сайт телеканала Пятница friday.ru

Для кого данная статья: Люди, которые не имеют отношения к программированию, но хотят скачать файл локально и самостоятельно

Люди, которые хотят самостоятельно написать расширение для браузера на языке Flutter

Читать далее

Склеиваем Flutter и Live Activities: Часть 1 – Android

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров962

Привет хабр!

Меня зовут Липатов Богдан, я Middle Flutter-разработчик, автор блога и статей на своем сайте, где мои материалы и инсайты публикуются в первую очередь.

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

Читать далее

«Основы Dart: Community edition» 1-е издание

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.7K

Привет, Хабр!

Вот и прошел год с момента выхода второго издания электронной версии «Основы Dart» и его анонса на Хабре. За это время книга успела разжиться печатной версией (издательство «Питер»), парочкой дополнительных глав и сквозным проектом. Меня много раз спрашивали по поводу того, буду ли оставлять второе издание в открытом доступе, обновлять его, если буду обновлять, то как и т. д. Некоторые даже шептали сладостные речи только о платном распространении книги. Поэтому, считаю, что настала пора поставить все точки над «Ё».

Читать далее
1
23 ...