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

Flutter *

Фреймворк для кросс-платформенной разработки

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

Как я стал Google Developer Expert по Flutter

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

У Google есть программа для экспертов в их технологиях. Чтобы попасть в неё, нужно выступать, писать, обучать, менторить или делать open-source в технологиях Google. Программа называется “Google Developer Experts”, и это самое привилегированное сообщество разработчиков, о котором я знаю.

Читать далее
Всего голосов 4: ↑1 и ↓3 -2
Комментарии 0

Новости

Хитрый виджет: разбор тестового Flutter-задания. Детективная нуар-история

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

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

«Введённое сегодня утром чрезвычайное положение из‑за аномальных метеоусловий остаётся в силе на территории всего штата. Метель свирепствует в городе третий день, и конца ей пока не предвидится» — тревожно вещал радиоприёмник. На облачное небо медленно взбирались наполненные тревогой сумерки.

Полиция прибыла на место происшествия в мотель «Burnout Meteo Inn» за час до меня. В 911 сообщили о подозрительном…

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 10

Как добавить Flutter в нативное приложение iOS и протестировать его на Codemagic (Часть 3)

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

Hola, Amigos! На связи Саша Чаплыгин, Flutter dev компании заказной разработки Amiga. Вот и наконец-то 3 часть статьи, в которой будет идти речь про про использование «Hot Reload», «Hot Restart» и тестирование на Codemagic.

Читать далее
Рейтинг 0
Комментарии 2

OpenStreetMap в Flutter-проекте: что такое flutter_map, как его внедрить и чем дополнить

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

Всем привет! Меня зовут Анна Ахлёстова, я Flutter-разработчик в Friflex. Ранее мы обсудили, как использовать инструменты yandex_mapkit в Flutter-проекте. В этой статье рассмотрим еще один плагин для работы с картографическими сервисами – flutter_map, изучим его возможности, преимущества перед аналогами и реализуем простой проект в качестве примера.

Если вы начнете искать удобный, адаптированный под Flutter картографический сервис, основными результатами поиска будут GoogleMaps API и Yandex Mapkit SDK.

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

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

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

Для Flutter-проектов есть еще одно решение – применять OpenStreetMap. 

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

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 4

Истории

Размышления о 18 годах работы в Google

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

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

Читать далее
Всего голосов 127: ↑125 и ↓2 +123
Комментарии 125

Как добавить Flutter в нативное приложение iOS и протестировать его на Codemagic (Часть 2)

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

Hola, Amigos! На связи Саша Чаплыгин, Flutter dev компании заказной разработки Amiga. Нашел интересную статью на английском о том, как добавить Flutter в новый или существующий проект Native iOS. Решил поделиться с вами переводом. Это вторая часть, в которой будет идти речь про реализацию экрана Flutter в приложение для iOS и использование platform channel.

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 1

Flutter 3.16: обзор обновления фреймворка с комментариями разработчиков Surf

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

Привет, на связи команда Flutter-разработчиков Surf. Мы регулярно делимся с сообществом последними новостями о Dart и Flutter, и этот случай — не исключение. Предлагаем перевод официального материала о большом обновлении Flutter 3.16. Дополнили его своими комментариями.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 0

Как добавить Flutter в нативное приложение iOS и протестировать его на Codemagic (Часть 1)

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

Hola, Amigos! На связи Саша Чаплыгин, Flutter dev компании заказной разработки Amiga. Нашел интересную статью, решил поделиться переводом. Автор материала рассказывает, как добавить Flutter в новый или существующий проект Native iOS и протестировать его на Codemagic CI/CD с помощью codemagic.yaml.

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 0

Анонс Dart 3.2

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

Улучшены языковые возможности и опыт разработчиков, а также обновлена информация о веб-приложениях и Wasm

Авторы: Kevin Moore & Michael Thomsen

Сегодня мы анонсируем Dart 3.2, в котором появилась новая языковая функция для non-null продвижения приватных конечных полей, улучшен опыт разработчиков за счет новых возможностей взаимодействия, поддержка расширений в DevTools, а также обновлен дорожный план веб-разработки, включающий поддержку Wasm (aka WebAssembly).

Что новенького!
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 5

Новый линт в Dart 3.2

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

Разбираем новый линт annotate_redeclares и новую конструкцию 'extension type', которая пока доступна в Dart 3.2 под экспериментальным флагом.

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 0

Flutter 3.16: что нового

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

Тема Material 3 по умолчанию, предварительный просмотр Impeller для Android, расширения DevTools и многое другое. Наш Flutter Team Lead Юрий Петров делится первым переводом официального релиза от Google. Давайте посмотрим, что добавили и улучшили во фреймворке за три месяца с момента релиза Flutter 3.13

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 0

Анимация загрузки картинок во Flutter, или как сделать shimmer своими руками

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

Hola, Amigos! На связи Ярослав Цемко, Flutter dev продуктового агентства Amiga. Я участвую в разработке мобильного приложения Bravo — e-com проект по продаже карнавальной продукции, воздушных шаров и товаров для праздника. Это одна из крупнейших в России и в мире компаний в данной отрасли. 

Сегодня хочу вам рассказать про решение, которое делает анимацию загрузки картинок вместо пустого экрана или троббера (вращающееся колечко).

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Комментарии 4

Простой, но масштабируемый State Management для Flutter

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

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

Чувствуете ли вы легкое покалывание при виде OnRefreshPostsButtonClickedHomeScreenEvent? Возможно, вы используете bloc.

Нет? А сейчас -firstNameUserProfileStateProvider ? Ага, riverpod.

Все еще нет? Тогда, может: Succeeded after 104.6s with 364 outputs (2412 actions)? Все ясно - MobX

"Нужен ли нам еще один State Management", или как я написал библиотеку, с которой снова начал любить Flutter.

Читать далее
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 23

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

Subject объекты в RxDart и чем они полезны Flutter-разработчику

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

Dart в совокупности с пакетом Async обладает неплохим функционалом в части работы со стримами. Однако ограничения всё ещё есть. Чтобы сделать стримы более удобными, используется пакет RxDart.

Меня зовут Виталий, я Flutter Team Lead в Surf. Это первая статья в цикле публикаций на тему RxDart.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 0

Как подключиться к Flutter приложению в режиме нативного debug на ОС Аврора

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

Привет, Хабр! Меня зовут Юрий Петров, я Flutter Team Lead в Friflex и автор ютуб-канала «Юрий Петров | Всё об IT». Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. А также мы делаем  свой вклад в развитие экосистемы Аврора + Flutter. В этой статье хочу рассказать про то, как можно подключиться к нативной части ОС Авроры для тестирования нативной части Flutter-приложения.

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 2

Структура Flutter-приложения: feature-first или layer-first

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

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

Читать далее
Рейтинг 0
Комментарии 6

«Разгоняем» HashSet, HashMap и циклы на примере Dart

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

Если вы занимались профилированием своего приложения, то, глядя на CPU Flame Chart, вероятно, испытывали смесь досады и азарта, глядя на особо «жирный» метод. Досады – что ваша программа всё ещё не идеальна по скорости. Азарт – от того, что вы можете докопаться до причины проблемы и отжать для процессора ещё немного свободного времени на более полезные вычисления. По крайней мере, я регулярно становлюсь жертвой обоих этих чувств, чему данная статья и обязана своим появлением.

Мой кейс – это попытка выжать из игрового движка Flame больше скорости и возможностей, чем он может «из коробки». Гейм-разработка имеет свои особенности по сравнению с «парсингом большого json» или устранением подлагивания при разовом проигрывании анимации, как минимум потому что здесь потенциально объёмные вычисления производятся абсолютно на каждом кадре. Так что, наверное, мой опыт не сильно будет перекликаться с теми проблемами, которые встречает большинство Flutter-разработчиков.

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

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 10

Управляем навигацией во Flutter с помощью библиотеки auto_route. Часть 1

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

Привет, Хабр! Меня зовут Юрий Петров, я Flutter Team Lead в Friflex и автор ютуб-канала «Юрий Петров | Всё об IT». Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. В этой статье хочу рассказать про библиотеку auto_route, с помощью которой можно управлять навигацией во Flutter.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 9

Flutter VS React Native

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

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

Поскольку мобильные телефоны становятся умнее, пользователи также становятся умнее с каждым днем. Каждый клиент перед выбором и покупкой изучает его функции и используемые технологии. Когда дело доходит до разработки ОС Android и iOS, каждая компания задумывается о том, как лучше всего предоставить своим клиентам мобильное приложение с превосходным пользовательским интерфейсом (пользовательский интерфейс) и выдающимся UX (пользовательский опыт). Компании стараются предоставлять приложения, совместимые с несколькими платформами и позволяющие быстрее разрабатывать их в одном месте. Затем на место приходят Flutter и RN (React Native). Оба являются кроссплатформенными платформами для разработки мобильных приложений.

Читать далее
Всего голосов 23: ↑3 и ↓20 -17
Комментарии 11

Padding vs SizedBox. Что выбрать для вёрстки отступов Column и Row

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

Здравы будьте! С вами на связи руководитель Flutter-направления Mad Brains Николай Омётов. В этой статье я проведу разбор особенностей вёрстки отступов с помощью Padding и SizedBox и расскажу, что выбрала наша команда для создания единого стиля кода.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 5

Вклад авторов

Работа