Swift 4 Protocol-Oriented Programming - Third Edition: Bring predictability, performance, and productivity to your Swift applications by Jon Hoffman
English | 6 Oct. 2017 | ISBN: 1788470036 | ASIN: B0751PRVB4 | 210 Pages | AZW3 | 780.42 KB
English | 6 Oct. 2017 | ISBN: 1788470036 | ASIN: B0751PRVB4 | 210 Pages | AZW3 | 780.42 KB
Key Features
Leverage the power of protocol-oriented programming in your applications and learn from real-world use cases
Create a flexible code base with protocols and protocol extensions
Leverage the power of generics in Swift 4 to create very flexible frameworks
Book Description
Swift has become the number one language used in iOS and macOS development. The Swift standard library is developed using protocol-oriented programming techniques, generics, and first-class value semantics; therefore, every Swift developer should understand these powerful concepts and how to take advantage of them in their application design.
This book will help you understand the differences between object-oriented programming and protocol-oriented programming. It will demonstrate how to work with protocol-oriented programming using real-world use cases. You will gain a solid knowledge of the various types that can be used in Swift and the differences between value and reference types. You will be taught how protocol-oriented programming techniques can be used to develop very flexible and easy-to-maintain code.
By the end of the book, you will have a thorough understanding of protocol-oriented programming and how to utilize it to build powerful and practical applications.
What you will learn
Understand the differences between object-oriented programming and protocol-oriented programming
Explore the different types that Swift offers and what pitfalls to avoid
Delve into generics and generic programming
Learn how to implement Copy-On-Write within your custom types
Implement several design patterns in a protocol-oriented way
Design applications by prioritizing the protocol first and the implementation types second
About the Author
Jon Hoffman has over 25 years of experience in the field of information technology. Over these years, Jon has worked in the areas of system administration, network administration, network security, application development, and architecture. Currently, Jon works as a senior software engineer for Syn-Tech Systems.
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. He has also developed mobile applications for the Android and Windows platforms. What really drives Jon the challenges that the field of information technology provides and there is nothing more exhilarating to him than overcoming a challenge.
Some of Jon's other interests are spending time with his family, robotic projects, and 3D printing. 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 Kara is currently working towards her black belt.
Table of Contents
Starting with the Protocol
Our type choices
Extensions
Generics
Object-Oriented Programming
Protocol-Oriented Programming
Adopting Design Patterns in Swift
Case Studies