The book is composed of five parts with twenty-eight chapters and two appendixes.
From the first to the fifth chapter the book starts with the basis of all software development: download IDE, hello world, write code, compile and debug.
Whoever wants to begin to develop with Xcode has to read these chapters.
If you’re a software developer reading it will be very easy to understand.
The sixth chapter talks about the management of library. it is very helpful because of the different types of libraries sometimes can be frustrating for the developer.
One of the best qualities of Xcode is version control. In the seventh chapter it is introduced very clearly passing from the creation of local repository to resolution of conflicts and comparison of different versions of code.
The second part of the book talks about the whole cycle of writing and managing an iOS app.
The eighth chapter starts with the explanation of the MVC pattern and how an iOS app project is composed up to the eleventh chapter.
The twelfth chapter brings up the developer with the auto layout system, a very powerful tool that allows us to display the same data in different devices without getting bored with the one device / one layout way.
To level up we have to move on to the fifteenth chapter that introduces the unit testing practices. Even though in most companies there are people called testers that are developers that do only testing however It would be best for the whole team of develoepers to think about testing. The goal of this chapter is to permit everyone to know all about unit testing with Xcode.
The sixteenth chapter explains something that most of the time developers don’t do, that is measure the speed of an app. Even though the app is very reactive, however it is good to analyze how long our functions last to prevent bad surprises in the future and Xcode has one of the best tools to measure the performance in every aspect: cpu, memory and so on.
The seventeenth chapter explains how to write an extension. Very helpful to share in different projects.
The last chapter of the second part (eighteenth chapter) describes the provisioning for an ios app. From the project to the apple store there are some steps that have to be completed in order to test and to publish our app.
First of all the developer program is a requirement, even to test and debug the app on our devices. After that the sandbox and in the end, sign the app to publish on the apple store.
The third part of the book follows the same things of previous part but this time it talks about osx application, adding few arguments like localization in the twenty-first chapter and bundles in the twenty-second chapter.
The last part of the book seems like a miscellaneous chapter: the twenty-fourth chapter introduces the vast amount of documentation in Xcode, from the intellisense up to the classic developer documentation, passing from docblock documentation.
The twenty-fifth chapter completes the formamentis regarding the Xcode system: edit build variable and advanced command line tools. To be sure of what happens on our applications, Xcode offers several tools to check, debug and monitor the apps.
In the twenty-sixth and twenty-seventh chapter tools like time profiler to monitor the load of the cpus at the time, energy diagnostics, view UI hiearchy to debug the UI and breakpoints are introduced.
The last chapter shows some snippets for developers to allow them to do their work more quickly.
The book ends with two appendixes in part five with some extra information about building variables and several online resources.