Pull to refresh
2
0
Ilya Chikmarev @ichikmarev

iOS Software Engineer

Send message

Темные уголки iOS Auto renewable Subscriptions

Reading time21 min
Views5K


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


Денис Кириллов на Mobius 2019 Moscow рассказал о лучших практиках применения технологии Auto-renewable Subscriptions в iOS и осветил ряд особенностей в ее работе, которые не всегда очевидны и документированы в официальных источниках.


Под катом — видео и текстовая расшифровка доклада с конференции Mobius 2019 Moscow.

Total votes 12: ↑12 and ↓0+12
Comments2

Какие навыки нужны для создания iOS-приложения? Доклад Яндекса

Reading time11 min
Views6.9K
Мобильному разработчику нужно обладать понятным набором навыков. Рассказывать о них нужно в контексте конкретных задач, которые возникают по ходу создания и публикации приложения. Артур Антонов работает iOS-разработчиком в отделе машинного перевода Яндекса. В своём докладе для студентов и начинающих специалистов Артур объяснил, что должен уметь разработчик, чтобы создавать современный мобильный софт.


— В нашем отделе есть два мобильных приложения: Яндекс.Переводчик и Яндекс.Клавиатура. В Переводчике у нас очень много сложных технологий, например голосовой ввод, распознавание текста по фото, перевод текста при помощи нейросетей. Отдельной сложной задачей является поддержка этой функциональности в офлайне. То есть у вас эта функциональность будет работать даже без интернета.
Total votes 6: ↑5 and ↓1+8
Comments1

Баги при работе с системной клавиатурой

Reading time12 min
Views7.2K
Взаимодействуя с приложением, мы в определенный момент активируем системную клавиатуру для набора сообщения или заполнения необходимых полей. Сталкивались ли вы с ситуациями, когда клавиатура отображается, а вот поля для ввода сообщения нет или наоборот — клавиатура есть, куда вводить текст, не видно? Баги могут быть связаны как с проблемами внутри конкретного приложения, так и с общими недостатками системной клавиатуры.

Константин Мордань, iOS-разработчик из Mail.ru в своей работе повидал всякое: проанализировав способы управления клавиатурой в iOS, он решил поделиться основными найденными багами и подходами, которые применял для их обнаружения и исправления.



Осторожно: под кат мы поместили много гифок, чтобы наглядно демонстрировать баги. А еще больше примеров вы найдете в видео доклада Константина на AppsConf.
Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments3

Изменения модальной презентации экранов в iOS 13

Reading time9 min
Views18K

Всем привет!


Меня зовут Илья, я из Tinkoff.ru. Я перевел для вас статью от Geoff Hackworth про то, как изменился стиль модальной презентации в iOS 13, на что это повлияло и как работает обратная совместимость с предыдущими версиями iOS и Xcode.


image

Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments2

Переносим проект с Swift 4.2 на Swift 5.0

Reading time3 min
Views5K
Привет, Хабр! Представляю вашему вниманию перевод статьи «Swift 5.0: How to migrate your project and frameworks» автора Antoine Van Der Lee.

Swift 5.0 был выпущен в марте 2019 года и является первым стабильным выпуском ABI Swift. Несмотря на то, что многие ресурсы освещают новые возможности Swift 5.0, они не часто рассказывают вам о том, что вам нужно сделать, чтобы обновить свой проект до Swift 5.0.

В этом посте я рассмотрю шаги, которые вы можете предпринять, чтобы обновить существующий проект до Swift 5.0.

Проверьте, что ваш проект уже перенесен в Swift 4.2.
Не удивлюсь, если эта статья поможет убедить вашего продакт-менеджера спланировать время для перехода.
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments3

Видеозаписи со встречи CocoaHeads 15-го марта в офисе Туту.ру

Reading time1 min
Views1.6K

В первый месяц весны у нас в офисе прошел митап по iOS-разработке CocoaHeads. Сюрпризом для гостей стало первое выступление Стаса Сарычева на тему функционального программирования. Традиционно, было тепло и душевно, а теперь к видео:

Total votes 17: ↑17 and ↓0+17
Comments0

Устройство компилятора Swift. Часть 1

Reading time4 min
Views19K

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

Читать дальше
Total votes 28: ↑25 and ↓3+22
Comments3

Автоматически сгенерированные пароли в iOS 12

Reading time6 min
Views5.9K
Если в вашем приложении есть функция регистрации, включающая в себя возможность или необходимость ввода новых имени пользователя и пароля, скорее всего, вас заинтересует нововведение в «iOS 12», которое я хотел бы обрисовать. Это сервис, который придумывает новые пароли для пользователя, автоматически подставляет их в нужные поля и безопасно хранит в «Keychain».
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments0

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

Reading time3 min
Views6.7K
В нашем новом дайджесте карта доверия к мобильным SDK, реки пользовательских данных, интерфейсы и юзабилити, определяющий отчет App Annie об экономике мобильных приложений и многое другое!

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

Как убедить клиента или компанию использовать Flutter

Reading time12 min
Views26K
Привет, Хабр! Представляю вашему вниманию перевод с англ. статьи Pitching Flutter to your company or client (автор Wm Leler)

С момента публикации статьи What’s Revolutionary about Flutter прошло больше года (и этот материал всё ещё актуален). Когда я писал ту статью, лишь немногие мобильные разработчики слышали о Flutter, но с тех пор многое изменилось. Сейчас я не успеваю следить за потоком новых статей и видео, которые появляются в этом активном и постоянно развивающемся сообществе. Разработчики открыли для себя Flutter, и они от него без ума. Вот пример приложения от Reflectly, созданного с помощью Flutter:


Умное приложение-дневник Reflectly
Читать дальше →
Total votes 40: ↑31 and ↓9+22
Comments44

Немного о лексическом анализе

Reading time9 min
Views17K


Давным-давно, когда небо было голубым, трава зеленее и по Земле бродили динозавры… Нет, забудьте про динозавров. Ну, в общем, когда-то тогда пришла в голову мысль отвлечься от стандартного web-программирования и заняться чем-то более безумным. Можно было, конечно, чем угодно, но выбор пал на написание своего интерпретатора. Что я могу сказать… Никогда не пишите свои языки программирования. Но некоторый опыт из всего этого я извлёк, так что вот и решил поделиться. Начнём с самой основы — лексера.
Total votes 19: ↑18 and ↓1+17
Comments20

Swift Heroes 2018. Как это было

Reading time2 min
Views2.7K
9 ноября в Турине прошла конференция, посвящённая iOS-разработке. Мероприятие собрало около 500 участников со всей Европы и проходило в историческом центре Турина — Centro Congressi Torino Incontra.

image

Организаторы конференции — компании Synesthesia и SYX.

Были представлены доклады от довольно известных в iOS-комьюнити спикеров. Среди них автор библиотеки Sourcery, несколько авторов курсов на «Raywenderlich», создатель «Hacking with Swift» и другие. Конференция проходила в 2 параллельных потока, доклады разделялись на кейноуты и воркшопы.
Total votes 11: ↑11 and ↓0+11
Comments1

The New iOS Mobile Enterprise. Часть #1: Кодогенерация для ресурсов

Reading time11 min
Views8.7K

Всем привет!


Меня зовут Дмитрий. Так получилось, что я являюсь тим лидом в команде из 13 iOS разработчиков уже на протяжении двух лет. И вместе мы трудимся над приложением Тинькофф Бизнес.


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


Расскажу о практиках и подходах которые помогли команде заметно ускориться в разработке и тестировании и заметно сократить количество стресса, багов, проблем при внеплановом или срочном релизе. #MakeReleaseWithoutStress.


Поехали!

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

Как избавить проект от лишних килограммов

Reading time5 min
Views7.4K


Всем привет! Меня зовут Илья, я — iOS разработчик в Tinkoff.ru. В этой статье я хочу рассказать о том, как уменьшить дублирование кода в presentation слое при помощи протоколов.
Читать дальше →
Total votes 27: ↑18 and ↓9+9
Comments13

Примеры конфигурации UIViewController-ов используя RouteComposer

Reading time9 min
Views5.1K

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


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

Apple Wallet. Что это такое и как интегрировать в него свою карту

Reading time8 min
Views66K

Принято считать, что Wallet – не самый популярный сервис в СНГ. Но уже во втором проекте подряд заказчик ставит задачу «Сделать интеграцию с Wallet». Поэтому я решил написать эту статью, чтобы рассказать о сервисе в целом и показать, как интегрировать в него свой продукт.


Что такое Wallet? Он позволяет держать в телефоне различного вида карты (билеты, скидочные карты и т.п.), облегчая жизнь пользователям продукта. Более того, есть возможность актуализировать информацию о карте посредством push-уведомлений, но это тема для отдельной статьи. Но если у вас есть карта/билет/абонемент, которые можно интегрировать в телефон, то для этого есть решение! Как это сделать – читайте ниже.

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

Как писать на Objective-C в 2018 году. Часть 1

Reading time10 min
Views27K

Большинство iOS-проектов частично или полностью переходят на Swift. Swift — замечательный язык, и за ним будущее разработки под iOS. Но язык нераздельно связан с инструментарием, а в инструментарии Swift есть недостатки.


В компиляторе Swift по-прежнему находятся баги, которые приводят к его падению или генерации неправильного кода. У Swift нет стабильного ABI. И, что очень важно, проекты на Swift собираются слишком долго.


В связи с этим существующим проектам может быть выгоднее продолжать разработку на Objective-C. А Objective-C уже не тот, что был раньше!


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


Читать дальше →
Total votes 37: ↑34 and ↓3+31
Comments49

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Mobile Application Developer
Lead