Pull to refresh
56
19
Send message

Девайс-холдер: кто такой, зачем нужен и насколько хорошо держит устройства

Reading time6 min
Views1.7K

Все, кто знаком с мобильным тестированием, знают, что для тестов нужны разные устройства. Если с iOS все понятно — там одна операционная система, один вендор, но разные форм-факторы — то с Android сложнее. Это разные оболочки, и разные форм-факторы, и разные сервисы, которые будут влиять на тестирование. Поэтому нам понадобится не один и даже не десять смартфонов.

Расскажем, как покрыть устройствами все запросы отдела и сделать так, чтобы каждый QA был уверен в наличии нужной конфигурации.

Читать дальше
Total votes 11: ↑7 and ↓4+3
Comments2

Как устроены аннотации в Kotlin. Часть 2

Level of difficultyMedium
Reading time10 min
Views2.2K

Привет! Сегодня с вами Максим Кругликов из Surf Android Team, и мы продолжаем статью об аннотациях в Kotlin, в которой рассмотрим кодовую базу Moshi в качестве примера того, как реальная библиотека использует процессинг аннотаций, рефлексию и lint. В первой мы рассказывали об этих трёх механизмах — рекомендуем посмотреть сначала её.

Читать дальше
Total votes 3: ↑2 and ↓1+3
Comments0

Принципы SOLID на примере iOS-разработки

Level of difficultyMedium
Reading time13 min
Views4.8K

Привет, меня зовут Антон, я iOS-разработчик в компании Surf. Все программисты хотят писать красивый, масштабируемый и сопровождаемый код, и мобильщики – не исключение. Как в этом помогут принципы SOLID, и зачем они нужны?

Расскажем и покажем на примерах (куда без этого). Кейсы в статье относятся к iOS-разработке, но они будут полезны для всех разработчиков, независимо от стека.

Читать дальше
Total votes 7: ↑7 and ↓0+7
Comments6

Как подменять данные в SSR-сайтах

Level of difficultyMedium
Reading time4 min
Views1.5K

Привет, на связи Surf Web Team и Никита, QA Surf! 

Давайте разберемся, какие проблемы возникают при тестировании SSR-сайтов с помощью подмены данных и как сделать так, чтобы все заработало.  

Читать далье
Total votes 7: ↑7 and ↓0+7
Comments0

Как устроены аннотации в Kotlin. Часть 1

Level of difficultyMedium
Reading time10 min
Views4.1K

Привет! Сегодня с вами Максим Кругликов из Surf Android Team с переводом статьи про устройство аннотаций в Kotlin и три основных механизма их обработки: процессинг, рефлексию и lint.

Читать дальше
Total votes 4: ↑4 and ↓0+4
Comments0

Flutter Add-to-App: как добавить Flutter в приложение

Level of difficultyMedium
Reading time24 min
Views2.8K

Меня зовут Сергей, я разработчик в Surf Flutter Team. И сегодня мы разберёмся, как пользоваться Flutter Add-to-App, на что обратить внимание и какие проблемы могут возникнуть при интеграции.

Читать дальше
Total votes 13: ↑12 and ↓1+12
Comments2

Как двум командам сработаться и не сойти с ума

Level of difficultyMedium
Reading time12 min
Views1.4K

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

Как раз об этой комбинации мы и хотим рассказать. Так что в этой статье поделимся собственным опытом и порефлексируем.

А чтобы картинка не получилась однобокой, сделаем мы это вместе: точку зрения команды бэкенда расскажет Наташа, системный аналитик (SA) компании Интаро, взглядом фронтенда поделится Лиза, аналитик (BA) компании Surf.

Читать дальше
Total votes 6: ↑6 and ↓0+6
Comments1

Flutter 3.22 — наше мнение

Level of difficultyMedium
Reading time5 min
Views5.5K

14 мая Flutter зарелизили новую версию 3.22. Подробнее об этом тут (мы всё заботливо перевели и художественно отредактировали), оригинал здесь

Наша Flutter-команда не могла остаться в стороне и уже опробовала новинку. Делимся мнением.

Читать дальше
Total votes 11: ↑10 and ↓1+11
Comments14

Что Flutter 3.22 нам готовит?

Level of difficultyMedium
Reading time12 min
Views1.4K

Привет, с вами Flutter-команда Surf с переводом нового релиза Flutter 3.22.

WebAssembly, улучшенный рендеринг графики, способы интегрировать искусственный интеллект — это и многое другое в статье!

Читать дальше
Total votes 4: ↑2 and ↓2+2
Comments1

Ключи во Flutter

Level of difficultyMedium
Reading time9 min
Views3.7K

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

У ключей во Flutter есть несколько разновидностей. Выбрать правильный тип ключа для конкретной ситуации — сложная задача даже для опытных разработчиков. Так что идём смотреть, как правильно использовать ключи и избежать потенциальных проблем в работе приложения.

Читать дальше
Total votes 6: ↑6 and ↓0+8
Comments2

Уменьшаем boilerplate с помощью Swift Macros

Level of difficultyMedium
Reading time10 min
Views2.2K

Сегодня с вами Никита Коробейников, iOS Team Lead в Surf. Никита объяснит, что такое Swift Macros, сравнит кодогенерацию от Apple со сторонними решениями: Liquid, Generamba, Sourcery и расскажет, как создать собственный Swift Macros. 

Читать дальше
Total votes 5: ↑5 and ↓0+5
Comments0

Автоматизированное тестирование событий аналитики в мобильном приложении: насколько это реально и оправдано

Level of difficultyMedium
Reading time14 min
Views1.5K

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

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments0

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

Level of difficultyMedium
Reading time14 min
Views4.7K

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

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments0

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

Level of difficultyMedium
Reading time5 min
Views3K

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

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

Читать далее
Total votes 5: ↑4 and ↓1+4
Comments0

WidgetKit в iOS — не просто большие иконки

Level of difficultyMedium
Reading time6 min
Views2.7K

Меня зовут Даша, я iOS-разработчик в Surf. Сегодня я освежу в вашей памяти философию и design виджетов. Подсвечу технические аспекты, которые помогут, если вы собираетесь делать свой первый виджет или хотите вдохнуть жизнь в старый. А ещё затрону несколько неочевидных, но важных тем.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments1

jenv — удобный инструмент для управления версиями Java

Level of difficultyEasy
Reading time4 min
Views3.5K

Иногда может возникнуть необходимость использовать какую-то определенную версию Java для вашего проекта. Мы тоже в Surf с таким столкнулись при работе над одним из Flutter приложений-долгожителей. Решение нашлось в виде использования менеджера версий Java. Рассказываем, что за инструмент и как с ним базово работать на MacOS.

Читать далее
Rating0
Comments13

In-app purchases — за что и почему? Взгляд аналитика

Level of difficultyMedium
Reading time11 min
Views4.4K

Всем привет, меня зовут Лиза, я — аналитик Surf. Имею пока что не самый долгий, но уже чрезвычайно насыщенный опыт работы в Fintech, EdTech и MedTech проектах. Я поделюсь с вами своим опытом проектирования и подготовки ТЗ для реализации in-app purchases.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments0

Flutter 3.13. Что нового?

Level of difficultyMedium
Reading time11 min
Views5.1K

Двухмерный скроллинг, ускорение работы с графикой, обновления от Material 3 и многое другое.

Привет! Это команда команда веб- и мобильной разработки Surf. Совсем недавно вышло обновление Flutter 3.13. Спешим поделиться с вами нашим переводом статьи со всеми новыми фичами ?

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

Flutter-разработчикам: показываем, как шарить код через DartPad

Level of difficultyMedium
Reading time6 min
Views2.5K

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

Меня зовут Ахмедов Самир, я Flutter разработчик в Surf, и я расскажу о том, что же ещё умеет DartPad.

Читать далее
Total votes 7: ↑5 and ↓2+4
Comments0

Information

Rating
376-th
Works in
Registered
Activity