This book is about protocol-oriented programming. When Apple announced Swift 2 at the World Wide Developers Conference (WWDC) in 2015, they also declared that Swift was the world's first protocol-oriented programming language. By its name, we may assume that protocol-oriented programming is all about the protocol, however, that would be a wrong assumption. Protocol-oriented programming is about so much more than just the protocol; it is actually a new way of not only writing applications but also how we think about programming.
In the first four chapters, we take an in-depth look at each of the components of the protocol-oriented programming paradigm. These chapters are designed to give the reader a solid understanding of the different components of protocol-oriented programming, so he/she will understand how they can use these components in their applications.
One of the biggest misconceptions about protocol-oriented programming is that it is just another name for object-oriented programming. In Chapter 5, Object-Oriented Programming and Chapter 6, Protocol-Oriented Programming we take on this myth by comparing protocol-oriented programming to object-oriented programming to see what is similar and what is different. We also discuss the advantages and disadvantages of both programming paradigms.
The last two chapters are written to help the reader understand how they can design their application in a protocol-oriented programming way. Chapter 7, Adopting Design Patterns in Swift looks at how we can implement several design patterns in a protocol-oriented way and Chapter 8, Case Studies looks at three real-world case studies to reinforce everything previously discussed in the book.