Рубрика: Swift

Алгебраические типы

Алгебраические типы. Возможности Типа суммы Enum

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

Используем flatMap в Swift

Здесь на массив json мы применили flatmap и передали функцию, которая будет выполняться для каждого элемента. Каждый элемент - это [String: Any], так что SomeData.init(with:) - идеальный путь для приведения к flatMap. Мы возвратили массив [SomeData]?, и у нас не...

cocoa

Cocoa Tips #3: Timepiece ?

Cocoa Tips - сборник небольших советов и рекомендаций на разные темы, касающиеся iOS и Mac разработки. Цель каждой статьи - краткое введение в определенную тему. Это не заменит полноценную документацию, но поможет быстро понять основу.

cocoa

Cocoa Tips #2: Сцепление методов ?

Cocoa Tips - сборник небольших советов и рекомендаций на разные темы, касающиеся iOS и Mac разработки. Цель каждой статьи - краткое введение в определенную тему. Это не заменит полноценную документацию, но поможет быстро понять основу.

cocoa

Cocoa Tips #1: Инициализация View Controller ?

Cocoa Tips - сборник небольших советов и рекомендаций на разные темы, касающиеся iOS и Mac разработки. Цель каждой статьи - краткое введение в определенную тему. Это не заменит полноценную документацию, но поможет быстро понять основу.

swift 3

Что нового в Swift 3

Swift Evolution - источник на github, посвященный эволюции языка. Члены сообщества представили более 100 предложений для языка, поскольку его код открыт и доступен всем. После обсуждений и модификаций, большая часть из них была принята (на данный момент 70).

wwdc

Чего ожидать от WWDC 2016

Если Apple останется верной своим многолетним традициям, то на WWDC 2016 первым делом нам представят iOS 10 - новую ветвь развития мобильной операционной системы. В отличии от ситуации с iPhone 7, iOS 10 не имеет сколь либо глобальных утечек.

retain

Обнаружение retain-циклов

С введением автоматического подсчета ссылок (ARC) в iOS 5, работа с памятью значительно упростилась. Но ARC не может обрабатывать все сценарии.

NSBlockOperation

Простой пример NSBlockOperation

Как было сказано ранее, существуют различные API - интерфейсы параллелизма. Вы можете использовать Grand Central Dispatch (GCD), или же вы можете использовать NSThread, что не есть хорошо, так как это очень низкий уровень.

аутсорсинг

Аутсорсинг UITableViewDataSource

Очень распространенный вариант, когда UITableView является не только табличкой, но и источником данных. Это главная причина, по которой View контроллеры становятся огромными. Аутсорсинг источника данных к объекту является лучшим решением.