Pull to refresh
0
0
Владислав @HobbesT

iOS Developer

Send message

Быстрый, простой, сложный: как мы выпилили Realm

Reading time 18 min
Views 20K

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

Мы тоже использовали Realm — 3 года подряд. Сначала он помогал, потом раздражал, пару раз выстрелил и в конце чуть не вогнал команду в депрессию. В итоге мы удалили Realm из проекта. Это сложный инструмент — простота интеграции обманчива, а за все удобства придётся расплачиваться.

Почему и как мы его удалили
Total votes 46: ↑46 and ↓0 +46
Comments 47

Дайджест интересных материалов для мобильного разработчика #377 (11 — 17 января)

Reading time 3 min
Views 3.1K
В первом дайджесте нового года чаты на вебсокетах, переход из 1С в Android, написание игры за месяц и тренды мобильных игр, доходы рынка приложений и полезные инструменты. Это и многое другое в нашей новой подборке!

Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 0

Сравнение архитектур Viper и MVVM: Как применить ту и другую

Reading time 15 min
Views 24K


В настоящее время VIPER и MVVM являются наиболее популярными архитектурными решениями, применяемыми при разработке крупных приложений, требующих участия в разработке больших команд, являющихся хорошо тестируемыми, длительно проддерживаемыми и постоянно развивающимися. В данной статье мы попробуем применить их на небольшом тестовом проекте, который представляет из себя список контактов пользователей с возможностью добавления нового контакта. В данной статье больше практики, чем аналитики, и предназначена она в первую очередь для тех, кто уже в теории знаком с данными архитектурами и теперь хотел бы понять как это работает на конкретных примерах. Впрочем, базовое описание архитектур и их сравнение также присутствует.
Читать дальше →
Total votes 11: ↑10 and ↓1 +9
Comments 2

Структуры данных с примерами на языке Swift. Часть первая: связаный список

Reading time 3 min
Views 19K

Предисловие


Кто из iOS разработчиков не мечтал о работе в престижном месте вроде Yandex или Avito. К сожалению, про мечты на собеседованиях спрашивает только hr, а вот интервьюеры из числа разработчиков задают вопросы немного другого характера. Чем отличается reference type от value type или bounds от frame? Вопросы, который каждый из нас слышал не раз на собеседованиях. Если ваше интервью начинается с вопроса про отличия значимого и ссылочного типов или в духе “расскажите ка нам про SOLID”, то вы явно на пути трудоустройства в ООО “Так себе перспективы“.
Читать дальше →
Total votes 23: ↑20 and ↓3 +17
Comments 28

Интервью — 10 вопросов про Swift. Часть 3

Reading time 4 min
Views 13K

Профессиональная программа «iOS Разработчик» — 5 месяцев Best Practice по разработке мобильных приложений с помощью Swift 5. Лучших выпускников ждут на собеседованиях 12 компаний-партнёров OTUS, поэтому публикуем перевод заключительной статьи из серии «iOS Interview Questions (Swift)», где рассмотрим ещё десяток вопросов, ответы на которые помогут вам при трудоустройстве.


image

Читать дальше →
Total votes 13: ↑11 and ↓2 +9
Comments 1

Модуляризация iOS-приложения Badoo: борьба с последствиями

Reading time 13 min
Views 5.4K

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

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

В этой статье я расскажу:

— как мы не потерялись в сложном графе зависимостей;

— как спасли CI от чрезмерной нагрузки;

— что делать, если с каждым новым модулем приложение запускается всё медленнее;

— мониторинг каких показателей стоит предусмотреть и почему это необходимо.

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

27 open-source ништячков для iOS разработчика

Reading time 7 min
Views 24K

1. DZNEmptyDataSet


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

С этой библиотекой вам необходимо всего лишь соответствовать определённым протоколам и iOS сама позаботиться о просмотре коллекций и выделит необходимое особым шрифтом, в виде красивых сообщений для пользователя. Элементарное решение для каждого проекта под iOS.

image


Total votes 29: ↑23 and ↓6 +17
Comments 9

Делаем свой Widget в iOS 14

Reading time 16 min
Views 24K

В iOS 14 и macOS 11 Apple представили Widgets. Еще один способ взаимодействия пользователя с приложением. В данной статье рассмотрим основные принципы работы WidgetKit и интегрируем свой Widget в готовый проект.


Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 1

Почему VIPER это хороший выбор для вашего следующего приложения

Reading time 3 min
Views 14K
Когда я прочитал статью, в которой автор рассказал про то, что архитектура VIPER полна проблем, это вызвало у меня несколько негативные эмоции, после чего я сразу решил написать статью в поддержку архитектуры.
Читать дальше →
Total votes 32: ↑21 and ↓11 +10
Comments 13

Как мы стартовали Vivid Money для iOS

Reading time 7 min
Views 3.2K

Всем привет! Меня зовут Илья. Я - iOS техлид в Vivid Money. Мы больше года занимались разработкой нашего финтех-продукта и теперь готовы поделиться с сообществом приобретенным опытом и знаниями.
Это вступительная статья, в которой я поверхностно затрону несколько технических решений, которые мы сделали на старте, а позже будут опубликованы статьи с детальным разбором самых интересных из них.

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

Vivid UI

Reading time 13 min
Views 6.3K

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

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

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

Читать далее
Total votes 11: ↑11 and ↓0 +11
Comments 0
Привет, Хабр. Меня зовут Константин, я Head of Mobile Cloud Services Development в департаменте разработки мобильных продуктов «Лаборатории Касперского».

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

Зато сейчас у нас внушительные 4,7 звезды в App Store и в среднем около 100 тыс. скачиваний в месяц. И это число постоянно растёт! Мы хотим рассказать нашу непростую success-story — заглядывайте под кат.
Закрытые зоны — открытые возможности
Total votes 46: ↑41 and ↓5 +36
Comments 5

Дайджест интересных материалов для мобильного разработчика #376 (21 — 27 декабря)

Reading time 3 min
Views 3.5K
Последний выпуск нашего дайджеста в 2020 году! Исследуем жизнь без Auto Layout, создаем гибкие списки, разбираемся с ошибками Android-разработки, ищем дубликаты изображений и изучаем основы мобильного маркетинга — это и многое другое в новой подборке. С наступающим!

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

Дайджест интересных материалов для мобильного разработчика #375 (14 — 20 декабря)

Reading time 4 min
Views 3.2K
В новом дайджесте рассказ о том, почем M1 такой быстрый (и насколько он быстрый), вебсокеты и работа Netflix, Flutter на изолятах и быстрое прототипирование IIoT-решений, работа социальных игр в мобильное время и многое другое. Добро пожаловать!

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

AppCode 2020.3: локализация для Swift, переход к определению до индексации, улучшенные рефакторинги и многое другое

Reading time 2 min
Views 1.8K

Вышел AppCode 2020.3. Те, кто читал статьи на английском в нашем блоге, уже и так все знают, а тем, кто еще не в курсе и хочет быстро ознакомиться со всеми изменениями, — добро пожаловать под кат.


КПДВ


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

Дайджест интересных материалов для мобильного разработчика #373 (30 ноября — 6 декабря)

Reading time 4 min
Views 3.5K
В новом дайджесте — работа разработчика с Apple Silicon M1, лучшие приложения Google Play и App Store, модуляризация приложений, начало App Store Small Business Program, GitHub Actions для приложений, вопросы повышения зарплаты и мобильной кроссплатформы.

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

Новичок или опытный? Как нанять мобильного разработчика под iOS, который что-то действительно умеет

Reading time 8 min
Views 17K
Мобильная разработка — это особая кухня, и в ней есть свои нюансы. Именно поэтому собеседования с кандидатами в отдел разработки под iOS должны проходить с определенным уклоном. Сегодня мы расскажем, как проходит прием в штат мобильных разработчиков Acronis, и какие курьезы бывают на собеседованиях, когда соискатель считает, что достаточно запомнить несколько умных слов, а потом «разберемся на месте».

image
Читать дальше →
Total votes 27: ↑24 and ↓3 +21
Comments 86

Дайджест интересных материалов для мобильного разработчика #371 (16 — 22 ноября)

Reading time 4 min
Views 2.7K
В новом выпуске путь к 10х инженеру, снижение комиссии App Store, тестирование без доступа к коду, руководство по росту приложений, как работает компьютерное зрение, выбор кроссплатформенной технологии и многое другое!

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

Материалы для обучения разработке iOS приложений и составления учебных планов junior, middle и senior iOS разработчиков

Reading time 2 min
Views 16K

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

Читать далее
Total votes 13: ↑11 and ↓2 +9
Comments 4

Information

Rating
Does not participate
Location
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Date of birth
Registered
Activity