Как стать автором
Обновить
80.42
Surf
Создаём веб- и мобильные приложения
Сначала показывать

Как не «сломать» вёрстку Flutter-приложения из-за textScaleFactor

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 1.3K
Блог компании Surf Программирование *Разработка мобильных приложений *Flutter *

Иногда на смартфоне неожиданно «ломается» вёрстка приложения, при этом в эмуляторе всё работает корректно. Рассказываем, в чём может быть причина.

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

Что ждёт Flutter в будущем

Время на прочтение 11 мин
Количество просмотров 8.8K
Блог компании Surf Программирование *Разработка мобильных приложений *Dart *Flutter *
Перевод

О чём говорили на конференции Flutter Forward в Найроби: перевод статьи с комментариями разработчиков Surf.

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

Async/await в iOS: что нам дает неблокирование потоков

Время на прочтение 7 мин
Количество просмотров 2K
Блог компании Surf Программирование *Разработка под iOS *Разработка мобильных приложений *

Разработчикам, только начинающим работать с Async/await, бывает довольно сложно разобраться в главной его особенности — неблокировании потоков.

Рассказываем, что такое неблокирование потоков, как оно работает и какие преимущества даёт Async/await при работе с большим количеством задач.

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

Особенности работы мобильного аналитика в банковских проектах

Время на прочтение 10 мин
Количество просмотров 1.6K
Блог компании Surf Анализ и проектирование систем *Аналитика мобильных приложений *

Чем проект банковского мобильного приложения отличается от других? Та же работа с заказчиком, уточнение и описание требований, проектирование функциональностей, согласования ТЗ… Но так кажется только на первый взгляд. 

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

Создаём стенд для бэкенд-разработки на Bare Metal (и не только). Часть 1

Время на прочтение 7 мин
Количество просмотров 5.7K
Блог компании Surf Программирование *Разработка мобильных приложений *DevOps *Kubernetes *
Туториал
🎅 Сезон Kubernetes

Как развернуть инфраструктуру для бэкенд-разработки: с чего начать, что ставить и как ко всему подступиться. Пошаговая инструкция.

В этом выпуске разберём установку Ubuntu, Docker, K8s, Metallb и Traefik.

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

А вот и не подерётесь: как организовать работу команды аналитиков на проекте

Время на прочтение 10 мин
Количество просмотров 2.8K
Блог компании Surf Анализ и проектирование систем *Аналитика мобильных приложений *

Однажды к нам пришла задача: заказчик хотел получить мобильное приложение, сайт, ERP-систему и CMS. И всё это — за полгода. Мы поняли, что реализовать проект можно, если подключить к нему не одного аналитика, а команду.

В итоге произошло то, чего мы не ожидали: команда становилась всё недовольнее с каждым днём, а фичи получались непроработанные. Над нами замаячил риск срыва сроков. 

Рассказываем, как мы вышли из этой ситуации и выстроили работу команды.

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

TypeScript 4.9: что нас ожидает

Время на прочтение 5 мин
Количество просмотров 12K
Блог компании Surf Разработка веб-сайтов *JavaScript *Программирование *TypeScript *

В сентябре Microsoft анонсировал TypeScript 4.9 beta. В бета-версии появились любопытные нововведения и исправления: новый оператор, оптимизация производительности, улучшения существующих типов… Разбираем самые интересные фичи этого анонса. 

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

Адаптируем Android-приложение для незрячих людей. Часть 2: Jetpack Compose

Время на прочтение 8 мин
Количество просмотров 1.1K
Блог компании Surf Программирование *Разработка мобильных приложений *Разработка под Android *Accessibility *

По данным ВОЗ, в мире более миллиарда человек обладает с той или иной формой инвалидности. Поэтому Accessibility, или доступность, — важная штука в разработке программного обеспечения, особенно под мобильные платформы.

Адаптировать View-интерфейс для людей с ограниченными возможностями не так трудоёмко, как кажется: об этом мы рассказывали в предыдущей статье.

Сегодня — про Accessibility в Jetpack Compose: в нём сделать доступный графический интерфейс приложения ещё легче, чем на View. Разбираемся, как устроена поддержка доступности в Compose и какие особенности учесть при разработке.

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

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

Время на прочтение 9 мин
Количество просмотров 3.6K
Блог компании Surf Программирование *Разработка мобильных приложений *Flutter *
Перевод

Обновления для работы с текстом, улучшения производительности и многое другое.

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

Выполняем задачи по расписанию с Quartz и Spring Boot

Время на прочтение 9 мин
Количество просмотров 4.8K
Блог компании Surf Программирование *Разработка мобильных приложений *

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

В статье на примере покажу, зачем использовать планировщик задач Quartz в Spring Boot-приложениях и с какими проблемами он поможет справиться.

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

Как подружить Redux и Elementary

Время на прочтение 7 мин
Количество просмотров 1.6K
Блог компании Surf Программирование *Разработка мобильных приложений *Dart *Flutter *

Поговорим об управлении глобальным состоянием с помощью Redux. Расскажу, как наиболее продуктивно связать Elementary — архитектурный пакет для Flutter — и Redux.

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

Jetpack Compose: реализация меню Apple Watch

Время на прочтение 11 мин
Количество просмотров 2.5K
Блог компании Surf Программирование *Интерфейсы *Разработка под Android *Дизайн мобильных приложений *
Туториал
✏️ Технотекст 2022

Мне очень нравится меню с Apple watch: плавность анимации, поведение иконок при перемещении, расположение элементов по необычной сетке. Я захотел повторить это меню на Android. Но делать это на старом подходе с помощью ViewGroup или кастомного Layout Manager для RecyclerView не очень хотелось: слишком уж затратно для работы «в стол». 

С появлением Compose эта идея стала более привлекательной и интересной для реализации. Рассказываю, как создать собственный ViewGroup на Jetpack Compose. 


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

Навигация в Swift UI: что изменилось с появлением iOS 16

Время на прочтение 7 мин
Количество просмотров 3.5K
Блог компании Surf Программирование *Разработка под iOS *Разработка мобильных приложений *Swift *

Одно из самых проблемных мест SwiftUI — работа с навигацией. Отсутствие доступа к стеку навигации, невозможность разделить UI-слой и слой навигации, сложность создания диплинков — всё это затрудняло работу многим разработчикам, использующим SwiftUI в своих проектах.

В iOS 16 появился совершенно новый API для работы с навигацией. Разбираемся, стало ли удобнее.

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

Создание инициализатора Flutter-проектов. Чисто и SOLIDно

Время на прочтение 9 мин
Количество просмотров 3K
Блог компании Surf Программирование *Разработка мобильных приложений *Dart *Flutter *

Pet-проект или самописный инструмент помогают решить проблемы, которые возникают в разработке. На примере инициализатора Flutter-проектов рассказываем, как следует подходить к разработке собственной «тулзы» правильно: с SOLID и чистой архитектурой.

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

Адаптируем Android приложение для незрячих людей. Часть 1: основы

Время на прочтение 18 мин
Количество просмотров 3.7K
Блог компании Surf Программирование *Разработка мобильных приложений *Разработка под Android *

В один из зимних вечеров я сидел дома, читал замечательную книжку «Android-программирование для профессионалов» и наткнулся на главу про Accessibility. Раньше я об этой теме не задумывался: клал null в поле contentDescription и жил себе спокойно. Но когда узнал, как слабовидящие люди пользуются смартфоном, у меня появилось желание погрузиться в тему доступности глубже.

Рассказываю, как адаптировать приложение для людей с ограниченными возможностями и так ли это трудозатратно, как кажется.

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

Ошибки начинающего проектного менеджера

Время на прочтение 8 мин
Количество просмотров 5.6K
Блог компании Surf Управление проектами *

В первый месяц стажировки ментор мне говорил: «В жизни каждого уважающего себя менеджера должен быть один легендарный факап». А что скажете насчёт пяти? 

Читать далее
Всего голосов 15: ↑13 и ↓2 +11
Комментарии 3

Пойми меня, если сможешь. Или как донести мысль заказчику (понятно и с первого раза)

Время на прочтение 9 мин
Количество просмотров 5.5K
Блог компании Surf Управление проектами *

Ещё один текст о том, как правильно общаться с заказчиком, чтобы он лучше вас понимал. На лавры Ильяхова не претендуем, в лёгкий язык без стоп-слов не получилось (сложна!). Постарались собрать краткий гайд «гигиенического минимума коммуникаций» для проджектов и всех, кому предстоит общение с заказчиком.

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

Android 13: какие изменения нас ожидают

Время на прочтение 4 мин
Количество просмотров 19K
Блог компании Surf Программирование *Разработка мобильных приложений *Разработка под Android *

Работа с разрешениями, загадочный TARE, изменения UI. Разбираемся, какие изменения несёт грядущее обновление Android 13.

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

Выход из ада зависимостей: взгляд iOS-разработчика

Время на прочтение 11 мин
Количество просмотров 2.4K
Блог компании Surf Программирование *Разработка под iOS *Разработка мобильных приложений *

Как не попасть в ад из внешних зависимостей? Как сделать так, чтобы проект собирался с одинаковыми версиями зависимостей на машинах разных разработчиков? Рассказываем, зачем нужны менеджеры зависимостей и как ими пользоваться правильно.

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

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

Создай себе инструмент. Часть 1: скрипт на Dart

Время на прочтение 5 мин
Количество просмотров 3K
Блог компании Surf Программирование *Dart *Flutter *

Можно легко упустить момент, когда работа с кодом становится рутинной. Логичный шаг — автоматизировать её. Стартуем серию статей о тулинге: расскажу, как начать и куда смотреть дальше.

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

Информация

Сайт
surf.ru
Дата регистрации
Дата основания
Численность
101–200 человек
Местоположение
Россия