Build fast and powerful applications by harnessing the power of protocol-oriented programming in Swift 4
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
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
Table of Contents
Starting with the Protocol
Our type choices
Adopting Design Patterns in Swift
Forensic Neuropathology, Second Edition This updated text comprehensively reviews all aspects of neuropathology that may have forensic or medical-legal import. The book presents significant coverage of the role of the neuropathologist in a legal setting before delving into specific forensic aspects of neuropathology, including comprehensive discussions of various syndromes and conditions... SQL Server DMVs in Action: Better Queries with Dynamic Management Views
When I first discovered DMVs, I was enthralled because they made many difficult
things so easy. It was simple to identify, typically within seconds, the core performance
problems that affect SQL Server databases. For example, I could quickly
discover which queries were taking the longest time to run, which indexes were missing,
The Artful Universe Expanded Our love of art, writes John Barrow, is the end product of millions of years of evolution. How we react to a beautiful painting or symphony draws upon instincts laid down long before humans existed. Now, in this enhanced edition of the highly popular The Artful Universe, Barrow further explores the close ties between our aesthetic appreciation and...
Hacking Windows Vista: ExtremeTech
"Why didn't they ask me before they did that?"
Vista is the most radical revamping of Windows since 1995. But along with all the fantastic improvements, there are a couple of things that drive you up the wall. Maybe you're not seeing the performance you expect. Security is better, but boy, is it annoying. And what's with...
Getting Started with GEO, CouchDB, and Node.js
Where. Whether it refers to where you have been, where you are, or where you are
going, the concept of where is important. Where links data to the physical world. A
shopping list can be a very useful collection of data on its own, but that data can be
even more useful with more context. If you map the location of the stores needed for...