Обновить
8.66

Dart *

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

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

О времени, сложности и мотивации: финал

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели965

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

Почитать про приключения в мире Dart VM

О времени, сложности и мотивации: история поражения и победы

Уровень сложностиСложный
Время на прочтение32 мин
Охват и читатели491

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

Почитать про приключения в мире Dart VM

О времени, сложности и мотивации: знакомство

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели1.7K

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

Почитать про приключения в мире Dart VM

Нативная мощь: Flutter SDK на C++ ядре. Часть 2

Уровень сложностиСложный
Время на прочтение15 мин
Охват и читатели1.7K

На связи тимлид Mobile SDK в 2ГИС Александр Максимовский и Flutter-разработчик Михаил Новосельцев (@Sameri11). Наша команда разработала собственный продукт для генерации платформенного Dart-кода на базе публичного C++ API, и мы уже рассказали об основных принципах его работы.

Эта статья — про то, как на основе сырого сгенерированного кода реализовать SDK, готовый к внедрению в пользовательские Flutter-приложения.

Читать далее

Dart 3.8 — что нового в Dart?

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

Этот релиз приносит обновления форматера, null-aware элементы для коллекций, новые возможности кросс-платформенной разработки, лучший способ находить трендовые пакеты на pub.dev, доступность горячей перезагрузки (hot reload) для веба и многое другое! Мы также надеемся, что найдутся разработчики, заинтересованные в участии в нашей программе раннего доступа к FFigen и JNIgen.

Читать далее

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

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели3.6K

Добро пожаловать во Flutter 3.32! Этот релиз наполнен функциями, призванными ускорить вашу разработку и улучшить ваши приложения. Приготовьтесь к горячей перезагрузке (hot reload) для веба, потрясающим "сквирклам" (squircles) в стиле Cupertino для нативной точности и мощным новым интеграциям с искусственным интеллектом через Firebase. С 1024 коммитами от 156 уникальных участников, включая 39 новичков, Flutter 3.32 является свидетельством невероятной работы нашего сообщества. Давайте посмотрим, что нового!

Читать далее

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

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

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

Читать далее

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

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели801

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

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

Читать далее

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

Время на прочтение7 мин
Охват и читатели712

С выходом 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.1K

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

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

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

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

Читать далее

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

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели929

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

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

Читать далее

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

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

Время на прочтение3 мин
Охват и читатели955

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

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

Читать далее

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

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

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

Читать далее

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

Время на прочтение3 мин
Охват и читатели452

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

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

Читать далее

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

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели697

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

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

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

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

Время на прочтение3 мин
Охват и читатели556

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

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

Читать далее

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

Время на прочтение2 мин
Охват и читатели552

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

Читать далее

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

Время на прочтение9 мин
Охват и читатели2.5K

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

Читать далее