The power of Objective-C 2.0. Effective programming for iOS and OS X
For whom this book is written:
The book is intended for developers who want to deepen their knowledge of Objective-C, and also strive to write code that is easy to maintain, efficient and with fewer errors. Even if you are not yet an Objective-C developer, but you have experience working on other object -oriented languages (like Java or C ++), you will still learn a lot of useful things. However, in this case it’s nice to familiarize yourself with the Objective-C syntax in advance.

What topics are covered in the book:
The book does not cover the basics of Objective-C - there are many other books and resources for this. Instead, the book teaches the efficient use of language. It consists of approaches, each of which contains simple and accessible information. Approaches are grouped by topic.
Chapter 1: Master Objective-C
Basic concepts related to the language as a whole.
Chapter 2 Objects, Communications, and the Executive Environment
Connections and interactions between objects are an important aspect of any object-oriented language. In this chapter, we will examine these aspects and examine the structure of the runtime environment.
Chapter 3 Designing an Interface and API
Code is rarely written for one-time use. Even if you don’t publish it for third-party use, most likely, the code will be involved in several projects. This chapter explains how to write a class that integrates well with the Objective-C binding system.
Chapter 4 Protocols and Categories
Protocols and categories are among the most important features of the language. Their effective use will make your code more readable, simplify its maintenance and reduce the likelihood of error. This chapter will help you master them.
Chapter 5 Memory Management
The Objective-C memory management model is based on reference counting. This fact has long created problems for beginners, especially those who have experience in the language with garbage collection. The introduction of Automatic Reference Counting (ARC) has simplified the situation, but the developer must take into account many important factors so that the object model works correctly and does not suffer from a memory leak. In this chapter, the reader will be introduced to the main problems associated with memory management.
Chapter 6 Blocks and Grand Central Dispatch
Blocks are C lexical closures introduced by Apple. They are commonly used in Objective-C to solve problems in which template code is heavily used. GCD (Grand Central Dispatch) provides a simple multi-threaded programming interface. Blocks are considered GCD tasks that can be performed - perhaps in parallel (depending on system resources). This chapter will help you get the most out of these two fundamental technologies.
Chapter 7 System Frameworks
As a rule, we will write Objective-C code for Mac OS X or iOS. In such cases, you will have at your disposal a complete set of system frameworks: Cocoa and Cocoa Touch, respectively. This chapter provides a brief overview of the frameworks, as well as an in-depth look at some of their classes.
Contents
Excerpt