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

Weekend Offer Delivery Club для мобильных разработчиков

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


Привет, Хабр и те, кто готов к быстрым переменам! В ближайшие выходные, 27-28 ноября 2021, мы в Delivery Club проводим Weekend Offer — мероприятие для привлечения разработчиков в технические команды. В этот раз событие посвятим мобильной разработке.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

ВТБ открыл регистрацию на участие в онлайн-хакатоне MORE.Tech 5.0 с призовым фондом более 1 млн рублей

Время на прочтение1 мин
Количество просмотров672

С 13 по 15 октября ВТБ проведет пятый ежегодный хакатон MORE.Tech 5.0 с общим призовым фондом 1,1 млн рублей. Регистрация уже открыта и продлится до 10 октября включительно.

В этом году хакатон включает в себя два трека: WEB+MOBILE и METAVERSE. В течение 40 часов командам предстоит решить одну из двух задач: разработать сервис для подбора оптимального банковского отделения или разработать элементы виртуального пространства и сценарии взаимодействия пользователей с цифровыми продуктами и сервисами банка. На протяжении всего мероприятия участникам будут помогать менторы из технологического блока ВТБ.

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

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

Проверено на «Практике»: как прикрутить две системы мобильной аналитики в одно приложение

Время на прочтение1 мин
Количество просмотров443

Заказчик мобильного приложения «Практика» пришел к нам с задачей: нужно было подключить и настроить две системы аналитики, чтобы и инвестор, и собственный аналитик компании могли регистрировать все нужные данные — продуктовые, бизнесовые, технические. Какие проблемы возникли, когда решали эту задачу, (спойлер: нам понадобилось больше времени) и как их побороли, Юрий Сапожков, QA-инженер Doubletapp, рассказал в докладе, с которым выступил на SQA Days/31. Делимся записью.

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

Paysend Connect Meetup

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

Paysend invites you to its first Paysend Connect meetup, which will take place on September 22 in Belgrade at Karbon space.

At our first meeting, we will talk about the company, the technology stack, the architecture solutions, and show a couple of demos.

https://www.eventbrite.com/e/paysend-conne
Рейтинг0
Комментарии2

Немитап? «Митапник»? Нет — Alfa Квартирник

Время на прочтение2 мин
Количество просмотров656

Как называется митап, когда все играют в Денди или на гитаре на фоне советских ковров, между делом что-то обсуждают и заедают пиццей? Это называется Alfa Mobile Квартирник — нетворк-встреча между мобильными разработчиками, где будет кикер, PS5, спортивное программирование, технический Alias, «Своя игра», и доклады между делом. За подробностями приглашаем вас под кат.

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

Карта развития мобильного разработчика

Время на прочтение12 мин
Количество просмотров23K
Мы ежедневно сталкиваемся с понятиями «джун», «мидл», «сеньор», но наши представления о том, какими знаниями должен обладать разработчик на разных стадиях роста, разнятся. Отсутствие четкого плана развития и непонимание, куда двигаться дальше, часто приводят к фрустрации и необдуманным сменам места работы.



Ребята из AppsCast совместно с Head of Mobile проекта Pandao Александром Черным (@AlexChernyy) попробовали разобраться в вопросе и составить собственную карту развития мобильного разработчика с момента попадания в профессию и до руководящих постов. Под катом советы о собеседовании джунов, где брать хороших разработчиков, рекомендации новичкам для устройства на работу, ключевые отличия джунов, мидлов и сеньоров, и важность навыка коммуникации для всех уровней.
Читать дальше →
Всего голосов 47: ↑42 и ↓5+37
Комментарии9

MVC без C: Что изменит SwiftUI в архитектуре приложений?

Время на прочтение4 мин
Количество просмотров8K
MVC был давним стандартом в паттернах проектирования, используемых для написания iOS приложений. Структура iOS приложений, которые создавались ранее, была основана на одном базовом компоненте, который присутствует везде, и называется он — Controller. На WWDC19 был представлен SwiftUI, который не имеет такого компонента.

Проблема с так называемыми massive view-controllers должна быть решена в SwiftUI. Так, необходимо найти новый способ правильной декомпозиции кода. Давайте посмотрим на текущее состояние платформы и подумаем, какие парадигмы мы можем использовать при разработке для iOS13 и более поздних версий.

image
Читать дальше →
Всего голосов 15: ↑12 и ↓3+9
Комментарии1

Моделирование состояния приложения с использованием объектов Store в SwiftUI

Время на прочтение4 мин
Количество просмотров6.1K
На этой неделе я хочу поговорить о моделировании слоя данных в SwiftUI. Я уже закончил работу над своим самым первым приложением, которое я создаю используя только SwiftUI. Теперь я могу поделиться способом создания слоя модели с использованием объектов Store, которые я использовал при разработке приложения NapBot.

Объект Store


Объекты Store, отвечают за сохранение состояния и предоставлении действии по его изменению. У вас может быть столько объектов Store, сколько вам необходимо, желательно чтобы они были простыми и отвечали за небольшую часть состояния вашего приложения. Например, у вас может быть SettingsStore для сохранения состояния пользовательских настроек и TodoStore для сохранения пользовательских задач.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Лучшие практики и инструменты при разработке iOS приложений

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

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

Каждый инструмент или подход, добавленный в шаблон, заслуживают отдельной статьи, но я хотел бы попытаться суммировать каждый пункт и дать краткое объяснение того, почему я включил их в данную статью.
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии14

Крибле Крабле Gradle: магия автоматической сборки

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

Разработчики облегчают жизнь людям, а Gradle — разработчикам. Если вы пишете на Android, эта статья для вас. Читайте о том, что за зверь этот Gradle (спойлер: он слон), а также — как с ним работать.


Gradle — система автоматической сборки, которую используют для упрощения работы с Java. С помощью (условно) стандартизированных средств она помогает разработчикам собрать нужный продукт без потери его уникальности. Ведь процесс работы с Gradle — не просто выбор шаблона. Но обо всём по порядку.


image

Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии2

Проблемы архитектуры в больших проектах

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

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


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


image

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

Сканирование документов и распознавание текстов с помощью VisionKit и Vision Framework на iOS

Время на прочтение4 мин
Количество просмотров5.1K
Сегодня отсканируем документ и выведем на экран распознанный текст из этого документа. Для этого не нужно устанавливать дополнительные библиотеки: пригодятся VisionKit для сканирования и Vision для распознавания текстов.



Для начала убедитесь что у вас стоит Xcode 11 и iOS 13, потом создайте новый проект с поддержкой Storyboard.

Сканирование совершим с помощью видеокамеры. Значит нам нужно добавить NSCameraUsageDescription в Info.plist, без этого приложения будет аварийно завершаться.


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

VoiceOver на iOS: каждый контрол ведёт себя по-разному

Время на прочтение5 мин
Количество просмотров4.6K
Привет, Хабр! Недавно я говорил про адаптацию приложений для незрячих и неподвижных людей. И не договорил!

Сегодня расскажу, как изменить поведение контролов с помощью accessibilityTraits и сделать жизнь незрячих чуть удобней. Знать работу этих трейтов (traits) важно, чтобы не писать свои костыли.


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

Современный подход к тестированию локализации на iOS

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

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


image

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

Проблемы взаимодействия с внешними командами на больших проектах

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

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


image

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

VoiceOver на iOS: решение типовых проблем

Время на прочтение6 мин
Количество просмотров3.9K
Когда берёшься адаптировать приложение для незрячих, часто что-то идёт не так: то порядок собьётся, то фокус не туда встанет. С другой стороны, есть UX, который легко пропустить, потому что не знаешь про возможные проблемы. В этой статье будем разбираться с типовыми проблемами и их решением.


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

Authenticate me. If you can…

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


I frequently hear questions like "How to implement authentication in an Android app?", "Where to store a PIN?", "Hey man, will I be secure if I implement an authentication feature in such a way?" and a lot of the kind. I got really tired answering these questions so I decided to write all my thoughts about it once to share with all questioners.

Read more →
Всего голосов 13: ↑10 и ↓3+7
Комментарии0

Redux — подобные контейнеры состояния в SwiftUI. Основы

Время на прочтение5 мин
Количество просмотров4.3K
image

На этой неделе мы поговорим о создании контейнера состояний схожим с тем, который используется в Redux. Он является единственным источником значений для разрабатываемого приложения. Единое состояние для всего приложения облегчает отладку и проверку. Единый источник истинностных значений устраняет тысячи ошибок, возникающих при создании нескольких состояний в приложении.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии1

How to Implement Tinder Swipe Cards in SwiftUI

Время на прочтение7 мин
Количество просмотров14K
In June, we heard about SwiftUI for the first time — a totally new way of creating and working with UI elements in iOS and macOS (also iPadOS) apps. It felt like Christmas in the summer. It's new, it's declarative, it's sexy! And now, just a few weeks after iOS 13 has been released, we can start to use SwiftUI in all our projects. Let's learn how to use this amazing tool that Apple gave us, to create the classic Tinder-esque Swipe Cards.

In this article, I would like to show you how to achieve a Tinder-like card view and behavior (swipe to action), with just a few lines of code.

To achieve this, we need to do the following things, in order:

  • Create UserView
  • Create NavigationView
  • Create BottomBarView
  • Create SwipeView
  • Put all this together inside ContentView

So let's get started.
Read more →
Всего голосов 7: ↑6 и ↓1+5
Комментарии0

Разработка мобильного приложения без сервера

Время на прочтение10 мин
Количество просмотров13K
Очень часто при разработке мобильных приложений (возможно с веб-приложениями та же проблема) разработчики попадают в ситуацию, когда бэкэнд не работает или не предоставляет нужных методов.

Такая ситуация может происходить по разным причинам. Однако, чаще всего на старте разработки, бэкэнд просто не написан и клиент начинает без него. В таком случае начало разработки затягивается на 2-4 месяца.

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


Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии15
1
23 ...