Pull to refresh
0
0
Send message

Идеальный наблюдатель на Swift

Reading time12 min
Views5.5K

В этой статье речь пойдёт о шаблоне проектирования «Наблюдатель» (Observer) и его реализации на Swift. Точнее — о его идеальной реализации.

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

Идеальный REST-клиент для iOS

Level of difficultyMedium
Reading time8 min
Views2.6K

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

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

Таймер в iOS

Reading time9 min
Views35K
Представьте, что вы работаете над приложением, в котором нужно периодически выполнять некоторые действия. Именно для этого в Swift используется класс Timer.

Timer используется для планирования действий в приложении. Это может быть разовое действие или повторяющаяся процедура.

В этом руководстве вы разберётесь, как в iOS работает таймер, как он может влиять на отзывчивость UI, как оптимизировать потребление батареи при использовании таймера и как использовать CADisplayLink для анимации.

В качестве тестового полигона мы будем использовать приложение — примитивный планировщик задач.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments12

Списки захвата в Swift: в чём разница между ссылками weak, strong и unowned?

Reading time7 min
Views46K

Джозеф Райт, «Пленный» — иллюстрация «сильного» захвата

Список «захваченных» значений находится перед списком параметров замыкания и может «захватить» значения из области видимости тремя разными способами: используя ссылки «strong», «weak» или «unowned». Мы часто его используем, главным образом для того, чтобы избежать циклов сильных ссылок («strong reference cycles» aka «retain cycles»).
Начинающему разработчику бывает сложно принять решение, какой именно применить способ, так что вы можете потратить много времени, выбирая между «strong» и «weak» или между «weak» и «unowned», но, со временем, вы поймёте, что правильный выбор — только один.
Давайте взглянем на проблему.
Total votes 8: ↑8 and ↓0+8
Comments18

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity