Для кого написана эта книга:
Книга предназначена для разработчиков, которые хотят углубить свои знания Objective-C, а также стремятся писать код, простой в сопровождении, эффективный и содержащий меньше ошибок.Даже если вы еще не являетесь разработчиком Objective-C, но у вас имеется опыт работы на других объектно-ориентированных языках (например, Java или C++), вы все равно узнаете много полезного. Впрочем, в таком случае неплохо заранее ознакомиться с синтаксисом Objective-C.
Какие темы рассматриваются в книге:
В книге не рассматриваются основы Objective-C — для этого есть много других книг и ресурсов. Вместо этого книга учит эффективно использовать язык. Она состоит из подходов, каждый из которых содержит простую и доступную информацию. Подходы сгруппированы по темам.
Глава 1.Осваиваем Objective-C
Основные концепции, относящиеся к языку в целом.
Глава 2.Объекты, сообщения и исполнительная среда
Связи и взаимодействия между объектами — важная сторона любого объектно-ориентированного языка. В этой главе мы рассмотрим эти аспекты и изучим строение исполнительной среды (runtime).
Глава 3.Проектирование интерфейса и API
Код редко пишется в расчете на одноразовое использование. Даже если вы не станете публиковать его для стороннего использования, скорее всего, код будет задействован в нескольких проектах. В этой главе объясняется, как написать класс, который хорошо встраивается в систему связей Objective-C.
Глава 4.Протоколы и категории
Протоколы и категории входят в число важнейших возможностей языка. Их эффективное использование сделает ваш код более удобочитаемым, упростит его сопровождение и снизит вероятность ошибки. Эта глава поможет вам освоить их.
Глава 5.Управление памятью
Модель управления памятью Objective-C основана на подсчете ссылок. Этот факт давно создавал проблемы для начинающих, особенно имеющих опыт работы на языке с уборкой мусора. Введение автоматического подсчета ссылок (ARC, Automatic Reference Counting) упростило ситуацию, но разработчик должен учитывать много важных факторов, чтобы модель объектов работала правильно и не страдала от утечки памяти. В этой главе читатель познакомится с основными проблемами, связанными с управлением памятью.
Глава 6.Блоки и Grand Central Dispatch
Блоки представляют собой лексические замыкания (closures) для языка C, введенные компанией Apple. Они обычно используются в Objective-C для решения задач, в которых интенсивно используется шаблонный код. GCD (Grand Central Dispatch) предоставляет простой интерфейс многопоточного программирования. Блоки рассматриваются как задачи GCD, которые могут выполняться — возможно, параллельно (в зависимости от системных ресурсов).Эта глава поможет вам извлечь максимум пользы из этих двух основополагающих технологий.
Глава 7.Системные фреймворки
Как правило, будем писать код Objective-C для Mac OS X или iOS. В таких случаях в вашем распоряжении будет полный набор системных фреймворков: Cocoa и Cocoa Touch соответственно. В этой главе приведен краткий обзор фреймворков, а также углубленно рассмотрены некоторые из их классов.
Автор: idpiter