
Иногда на смартфоне неожиданно «ломается» вёрстка приложения, при этом в эмуляторе всё работает корректно. Рассказываем, в чём может быть причина.
Иногда на смартфоне неожиданно «ломается» вёрстка приложения, при этом в эмуляторе всё работает корректно. Рассказываем, в чём может быть причина.
О чём говорили на конференции Flutter Forward в Найроби: перевод статьи с комментариями разработчиков Surf.
Разработчикам, только начинающим работать с Async/await, бывает довольно сложно разобраться в главной его особенности — неблокировании потоков.
Рассказываем, что такое неблокирование потоков, как оно работает и какие преимущества даёт Async/await при работе с большим количеством задач.
Чем проект банковского мобильного приложения отличается от других? Та же работа с заказчиком, уточнение и описание требований, проектирование функциональностей, согласования ТЗ… Но так кажется только на первый взгляд.
Как развернуть инфраструктуру для бэкенд-разработки: с чего начать, что ставить и как ко всему подступиться. Пошаговая инструкция.
В этом выпуске разберём установку Ubuntu, Docker, K8s, Metallb и Traefik.
Однажды к нам пришла задача: заказчик хотел получить мобильное приложение, сайт, ERP-систему и CMS. И всё это — за полгода. Мы поняли, что реализовать проект можно, если подключить к нему не одного аналитика, а команду.
В итоге произошло то, чего мы не ожидали: команда становилась всё недовольнее с каждым днём, а фичи получались непроработанные. Над нами замаячил риск срыва сроков.
Рассказываем, как мы вышли из этой ситуации и выстроили работу команды.
В сентябре Microsoft анонсировал TypeScript 4.9 beta. В бета-версии появились любопытные нововведения и исправления: новый оператор, оптимизация производительности, улучшения существующих типов… Разбираем самые интересные фичи этого анонса.
По данным ВОЗ, в мире более миллиарда человек обладает с той или иной формой инвалидности. Поэтому Accessibility, или доступность, — важная штука в разработке программного обеспечения, особенно под мобильные платформы.
Адаптировать View-интерфейс для людей с ограниченными возможностями не так трудоёмко, как кажется: об этом мы рассказывали в предыдущей статье.
Сегодня — про Accessibility в Jetpack Compose: в нём сделать доступный графический интерфейс приложения ещё легче, чем на View. Разбираемся, как устроена поддержка доступности в Compose и какие особенности учесть при разработке.
Функции приложения, которые должны выполняться с определенной периодичностью или по расписанию, не выглядят на первый взгляд чем-то сложным. Однако при реализации можно столкнуться с рядом проблем. Грамотно подобранный инструмент позволит облегчить разработку и избежать проблем при эксплуатации приложения.
В статье на примере покажу, зачем использовать планировщик задач Quartz в Spring Boot-приложениях и с какими проблемами он поможет справиться.
Поговорим об управлении глобальным состоянием с помощью Redux. Расскажу, как наиболее продуктивно связать Elementary — архитектурный пакет для Flutter — и Redux.
Мне очень нравится меню с Apple watch: плавность анимации, поведение иконок при перемещении, расположение элементов по необычной сетке. Я захотел повторить это меню на Android. Но делать это на старом подходе с помощью ViewGroup или кастомного Layout Manager для RecyclerView не очень хотелось: слишком уж затратно для работы «в стол».
С появлением Compose эта идея стала более привлекательной и интересной для реализации. Рассказываю, как создать собственный ViewGroup на Jetpack Compose.
Одно из самых проблемных мест SwiftUI — работа с навигацией. Отсутствие доступа к стеку навигации, невозможность разделить UI-слой и слой навигации, сложность создания диплинков — всё это затрудняло работу многим разработчикам, использующим SwiftUI в своих проектах.
В iOS 16 появился совершенно новый API для работы с навигацией. Разбираемся, стало ли удобнее.
Pet-проект или самописный инструмент помогают решить проблемы, которые возникают в разработке. На примере инициализатора Flutter-проектов рассказываем, как следует подходить к разработке собственной «тулзы» правильно: с SOLID и чистой архитектурой.
В один из зимних вечеров я сидел дома, читал замечательную книжку «Android-программирование для профессионалов» и наткнулся на главу про Accessibility. Раньше я об этой теме не задумывался: клал null в поле contentDescription и жил себе спокойно. Но когда узнал, как слабовидящие люди пользуются смартфоном, у меня появилось желание погрузиться в тему доступности глубже.
Рассказываю, как адаптировать приложение для людей с ограниченными возможностями и так ли это трудозатратно, как кажется.
В первый месяц стажировки ментор мне говорил: «В жизни каждого уважающего себя менеджера должен быть один легендарный факап». А что скажете насчёт пяти?
Ещё один текст о том, как правильно общаться с заказчиком, чтобы он лучше вас понимал. На лавры Ильяхова не претендуем, в лёгкий язык без стоп-слов не получилось (сложна!). Постарались собрать краткий гайд «гигиенического минимума коммуникаций» для проджектов и всех, кому предстоит общение с заказчиком.
Работа с разрешениями, загадочный TARE, изменения UI. Разбираемся, какие изменения несёт грядущее обновление Android 13.
Как не попасть в ад из внешних зависимостей? Как сделать так, чтобы проект собирался с одинаковыми версиями зависимостей на машинах разных разработчиков? Рассказываем, зачем нужны менеджеры зависимостей и как ими пользоваться правильно.
Понимание общих принципов поможет не только iOS-разработчикам: у всех менеджеров зависимостей проглядывается общая схема фиксации версий, и требования к распространяемым утилитам во многом похожи.
Можно легко упустить момент, когда работа с кодом становится рутинной. Логичный шаг — автоматизировать её. Стартуем серию статей о тулинге: расскажу, как начать и куда смотреть дальше.