Jon has developed extensively for the iOS platform since 2008. This includes several apps that he has published in the App Store, apps that he has written for third parties, and numerous enterprise applications. What really drives Jon is the challenges the information technology field provides and there is nothing more exhilarating to him than overcoming a challenge.
You can follow Jon on his two blogs: http://masteringswift.blogspot.com and http://myroboticadventure.blogspot.com.
Some of Jons other interests are watching baseball (Go Sox) and basketball (Go Celtics). Jon also really enjoys Tae Kwon Do where he and his oldest daughter Kailey earned their black belts together early in 2014, Kim (his wife) earned her black belt in December 2014, and his youngest daughter is currently working towards her black belt.
I would like to thank my wonderful wife, Kim, without whose support, encouragement, patience, and understanding, this book would have never been written. I would also like to thank my two wonderful daughters, Kailey and Kara, who have both been my inspiration and driving force since the days they were born.
About the Reviewer
Andrea Prearo is a software engineer with over 15 years of experience.
He is originally from Italy, and after a decade of writing software in C/C++ and C#, he moved to the Bay Area in 2011 to start developing mobile apps.
In the last few years, he has been focusing on Swift, Objective-C, iOS, and microservices, with some short explorations of the Android platform.
Currently, he is a member of the iOS development team at Capital One, working on the companys flagship mobile banking app.
His interests include reading books, watching movies, and hiking. From time to time, he also blogs about tech on Medium: https://medium.com/@andrea.prearo.
I would like to thank my wonderful wife, Nicole, for her never-ending support in all my endeavors.
www.PacktPub.com
For support files and downloads related to your book, please visit www.PacktPub.com.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at service@packtpub.com for more details.
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
https://www.packtpub.com/mapt
Get the most in-demand software skills with Mapt. Mapt gives you full access to all Packt books and video courses, as well as industry-leading tools to help you plan your personal development and advance your career.
Why subscribe?
- Fully searchable across every book published by Packt
- Copy and paste, print, and bookmark content
- On demand and accessible via a web browser
Preface
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 worlds first protocol-oriented programming language. From its name, we may assume that protocol-oriented programming is all about the protocol; however, that would be an incorrect 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.
One of the biggest misconceptions about protocol-oriented programming is that it is just another name for object-oriented programming. , Object-Oriented Programming and Protocol-Oriented Programming , immediately takes 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.
In chapters two to six, 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 they will understand how they can use these components in their applications.
The last two chapters are written to help the reader understand how they can design their application in a protocol-oriented programming way. , Case Studies , looks at three real-world case studies to reinforce everything previously discussed in the book.
What this book covers
, Object-Oriented Programming and Protocol-Oriented Programming , will show the differences between object-oriented programming and protocol-oriented programming giving the reader a good understanding of the difference paradigms. By the end of the chapter, the reader should have a basic understanding of protocol-oriented programming and what it offers.