Book Image

Swift Protocol-Oriented Programming - Fourth Edition

By : Jon Hoffman
Book Image

Swift Protocol-Oriented Programming - Fourth Edition

By: Jon Hoffman

Overview of this book

Protocol-oriented programming is an incredibly powerful concept at the heart of Swift's design. Swift's standard library was developed using POP techniques, generics, and first-class value semantics; therefore, it is important for every Swift developer to understand these core concepts and take advantage of them. The fourth edition of this book is improved and updated to the latest version of the Swift programming language. This book will help you understand what protocol-oriented programming is all about and how it is different from other programming paradigms such as object-oriented programming. This book covers topics such as generics, Copy-On-Write, extensions, and of course protocols. It also demonstrates how to use protocol-oriented programming techniques via real-world use cases. By the end of this book, you will know how to use protocol-oriented programming techniques to build powerful and practical applications.
Table of Contents (11 chapters)

Memory Management

For many years, the primary languages I used were C and C-based object-oriented languages, such as Objective-C and C++. These languages required a good handle on managing memory and knowing when to release memory. Luckily, modern languages such as Swift take care of managing memory for us; however, it is a good idea to understand how memory management works so we can avoid the pitfalls that cause memory management to fail.

In this chapter, we will learn about the following:

  • How ARC works
  • What a strong reference cycle is
  • How to use weak and unowned references

Structures are value types. What this means is that when an instance of a structure is passed within our application, such as a parameter for a method, a new instance of the structure is created in the memory. This new instance of the structure is only valid while the application is in the scope where the...