Рубрика «iOS» - 40

Компонентная архитектура UI в iOS-приложении - 1

Привет!

Меня зовут Валера, и уже два года я разрабатываю iOS-приложение в составе команды Badoo. Один из наших приоритетов — легкосопровождаемый код. Из-за большого количества новых фич, еженедельно попадающих к нам в руки, нам нужно в первую очередь думать об архитектуре приложения, иначе будет крайне сложно добавить новую фичу в продукт, не ломая уже существующие. Очевидно, что это также относится и к реализации пользовательского интерфейса (UI) независимо от того, делается это с помощью кода, Xcode (XIB) или смешанного подхода. В этой статье я опишу некоторые методики реализации UI, которые позволяют нам упрощать разработку пользовательского интерфейса, делая её гибкой и удобной для тестирования. Также есть версия этой статьи на английском.

Прежде чем начать…

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

Оно состоит из трёх частей:

  1. Компоненты — кастомные UI-компоненты, то есть код, относящийся только к пользовательскому интерфейсу.
  2. Демоприложение — демонстрационные view models и другие сущности пользовательского интерфейса, имеющие только UI-зависимости.
  3. Реальное приложение — view models и другие сущности, которые могут содержать специфические зависимости и логику.

Почему такое разделение? На этот вопрос я отвечу ниже, а пока ознакомьтесь с пользовательским интерфейсом нашего приложения:
Читать полностью »

Разделение на компоненты, layout anchors и другие методики реализации UI на iOS - 1

Привет!

Меня зовут Валера, и уже два года я разрабатываю iOS-приложение в составе команды Badoo. Один из наших приоритетов — легкосопровождаемый код. Из-за большого количества новых фич, еженедельно попадающих к нам в руки, нам нужно в первую очередь думать об архитектуре приложения, иначе будет крайне сложно добавить новую фичу в продукт, не ломая уже существующие. Очевидно, что это также относится и к реализации пользовательского интерфейса (UI) независимо от того, делается это с помощью кода, Xcode (XIB) или смешанного подхода. В этой статье я опишу некоторые методики реализации UI, которые позволяют нам упрощать разработку пользовательского интерфейса, делая её гибкой и удобной для тестирования. Также есть версия этой статьи на английском.

Прежде чем начать…

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

Оно состоит из трёх частей:

  1. Компоненты — кастомные UI-компоненты, то есть код, относящийся только к пользовательскому интерфейсу.
  2. Демоприложение — демонстрационные view models и другие сущности пользовательского интерфейса, имеющие только UI-зависимости.
  3. Реальное приложение — view models и другие сущности, которые могут содержать специфические зависимости и логику.

Почему такое разделение? На этот вопрос я отвечу ниже, а пока ознакомьтесь с пользовательским интерфейсом нашего приложения:
Читать полностью »

Netflix, Uber, Google и ты на MBLT DEV 2018 - 1

До конференции мобильных разработчиков MBLT DEV 2018 остался один месяц. Регистрируйся, если ты ещё не с нами, ведь уже 1 сентября цена билетов вырастет.

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

В этом выпуске: больше новых рефакторингов, лучше автодополнение, поддержка баз данных из DataGrip и даже поддержка Touch Bar. Более подробно — под катом.

Splash
Читать полностью »

11 августа в нашем офисе прошел Avito Mobile Testing Meetup — митап, полностью посвященный тестированию приложений на платформах iOS и Android. Говорили о качестве мобильного приложения — как понять, что оно работает должным образом, о нативных UI-тестах в iOS — что тестировать и какие инструменты помогут их улучшить. Обсуждали, что лучше использовать в тестировании Android-приложений — Appium или Espresso, и в end-to-end тестах — можно ли их организовать в больших мобильных проектах, и не только.

Кроме того, коллеги из Яндекса рассказывали о своём инструменте тестирования производительности мобильных телефонов, а мы представили телеграм-бота Гошу, который присматривал за всеми из-за угла, провели целых две викторины и наградили участников, приехавших на митап из Волгограда и Воронежа. В общем, получился настоящий фестиваль мобильного тестирования.

Под катом делимся впечатлениями, фото, видео, презентациями со встречи и отзывами слушателей.

Run, Test, Run. Рассказываем, как прошел Mobile Testing Meetup - 1Читать полностью »

С 10 по 22 сентября пройдет конкурс Яндекс.Блиц по мобильной разработке. Регистрация открыта. Блиц — это короткий путь в Яндекс: участникам топ-5 будет достаточно успешно пройти одну секцию собеседования вместо стандартных четырех.

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

Как писать программы на стыке мобильной разработки и алгоритмов? Конкурс и истории Яндекса - 1

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

Читать полностью »

Правда ли, что сейчас для любой жизненной ситуации можно найти соответствующее мобильное приложение? Сочиняя анонс конференции по мобильной разработке, мы решили заменить все подзаголовки на иконки приложений и посмотреть, найдутся ли подходящие. Где-то получилось совсем точно, где-то приблизительно. Если есть более подходящие варианты — сообщайте в комментариях!

А если вы не просто пользуетесь мобильными приложениями, но и сами их разрабатываете (хоть Android, хоть iOS), то в декабре будем рады видеть вас на Mobius, а здесь написали, чего ждать:

There's an app for that: анонс Mobius 2018 Moscow - 1
Читать полностью »

MBLT DEV 2018: повышение цены и новые спикеры - 1

5-я Международная конференция мобильных разработчиков MBLT DEV 2018 состоится 28 сентября, а уже в эту субботу цена билетов повысится. Под катом — спикеры, 3 причины стать участником конференции и последние билеты по старой цене.Читать полностью »

Всем привет. В последнее время довольно много статей написано на тему clean architecture. То есть чистой архитектуры, которая позволяет писать приложения, удобные в сопровождении и тестировании. Про саму чистую архитектуру вы можете прочитать в таких замечательных статьях как: Заблуждения Clean Architecture или Чистая архитектура, поэтому не вижу смысла повторять то, что уже написано.
Читать полностью »

Голосовой помощник Google Assistant, появившийся в 2016 году, стал доступен на русском языке, рассказали представители компании. Чтобы начать работу с Ассистентом на Android, нужно сказать «Окей, Гугл» или долго удерживать кнопку главного экрана, Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js