Чат на iOS: используем сокеты

Picture created by rawpixel.com
В этой публикации мы опустимся на уровень TCP, изучим сокеты и средства Core Foundation на примере разработки приложения для чата.
Приблизительное время чтения публикации: 25 минут.

Открытый объектно-ориентированный язык




В iOS 12.2 Apple добавила новую классную фичу – промо-предложения. Теперь приложения с авто-возобновляемыми подписками могут предлагать нынешним или бывшим клиентам персональные скидки или дополнительный бесплатный период. Промо-предложения распространяются на платящих, плативших, находящихся в триале и отменивших триал пользователей. В отличие от вводного предложения, промо-предложение можно купить сколько угодно раз по усмотрению разработчика. Но реализация требует наличия сервера для генерации цифровой подписи.




Всем привет. Сегодня хотим поделиться переводом подготовленным в преддверии запуска курса «iOS Разработчик. Продвинутый курс». Поехали!

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




associatedtype.
Any и AnyObject, но их стоит использовать осторожно и далеко не всегда. Использование Any и AnyObject сделает ваш код ненадежным, поскольку будет невозможно отследить несоответствие типов при компиляции. Именно тут на помощь приходят дженерики.Array, Set и Dictionary используют дженерики для хранения элементов.Астрологи объявили неделю релизов в JetBrains, количество публикаций в блоге выросло втрое! На самом деле, это тоже релизный пост, так что если вы участвовали в EAP, вы уже обо всем знаете.
Если нет — обязательно заходите под кат, потому что в этом релизе у нас не только появился анализ покрытия кода тестами и отображение дизассемблированного кода, но еще и поддержка DSL на Ruby и куча прочего интересного!


Раньше для поддержки iPad делали отдельный xib. Чтобы унифицировать лейаут, в 2014 году Apple представила Auto Layout и Size Classes, а для адаптивной навигации UISplitViewController.

Split-контроллер — это контейнер, который разместит два контроллера рядом. Слева будет навигационный контроллер (речь не про Navigation Controller), справа соответсвующий выбору в навигационном. Короче, как в Настройках.
Разберем как настроить UISplitViewController и его поведение на экранах.