Key Features

  • Leverage the power of protocol-oriented programming in your applications and learn from real world use cases
  • Create a flexible codebase with protocols and protocol extensions
  • Incr...

Buy Now From Amazon

Product Review

Key Features

  • Leverage the power of protocol-oriented programming in your applications and learn from real world use cases
  • Create a flexible codebase with protocols and protocol extensions
  • Increase the overall productivity and performance of applications with protocol-oriented programming

Book Description

One of the most important additions to the new features and capabilities of the Swift programming language was an overhaul of protocols. Protocol-oriented programming and first-class value semantics have now become two incredibly powerful concepts at the heart of Swift's design. The Swift standard library is developed using Protocol-Oriented programming techniques so understanding what Protocol-Oriented programming is all about will help you understand how Swift standard library.

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 different 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 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, 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