Learning PathSwift Protocol-Oriented Programming Free Download

Learning PathSwift Protocol-Oriented Programming Free Download

Last updated 9/2017MP4 | Video: h264, 1280×720 | Audio: AAC, 44.1 KHzLanguage: English | Size: 542.61 MB | Duration: 5h 36m

Know the advantages of Swift protocols and how to use them effectively in your code

What you’ll learn

Know the advantages of using protocols in your code

Explore the basic and advanced features of protocols

Create and use generic functions and types in Swift

Use generics with protocols in order to write powerful and flexible generic code

Explore some under-the-hood details of protocols that can help you use them efficiently in your code

Master some of the new protocol features in Swift 4

Requirements

Working knowledge of Swift

No prior experience with Swift protocols is needed

Description

Swift is a general-purpose, multi-paradigm, and compiled programming language developed by Apple Inc. Protocol-oriented programming offers a lot of benefits including better code maintainability, increased developer productivity, and superior application performance. Using right protocols can transform the way you write your Swift code. If you are a Swift developer and want to improve the flexibility, maintainability, and reusability of your code, then you should surely go for this Learning Path.

Packt’s Video Learning Paths are a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it.

The highlights of this Learning Path are

Use protocols effectively in real-world applications

Solve common problems when working with protocols

Explore some of the new features in Swift 4

Let’s take a quick look at your learning journey. This Learning Path shows you how to get the most out of protocol-oriented programming. With useful examples and practical, step-by-step instructions, you’ll create protocols and use them in your code. Taking you beyond the basics, this Learning Path teaches you advanced techniques and ways-of-thinking that will improve the way you use protocols, and shows you how to solve common problems you’ll face when working with protocols. Finally, you’ll be building your first app with protocols.

By the end of this Learning Path, you’ll be ready to use protocols in production to improve the effectiveness of your code. You’ll be a protocol programming expert!

About the Author

Hamish Knight is a Computer Science undergraduate at the University of Bath in the UK with a passion for Swift. Hamish is always interested in exploring how Swift operates at a lower level, and enjoy posting answers to Swift questions on Stack Overflow. Furthermore, he has over three years of experience developing mobile apps for iOS, with four apps currently on the App Store.

Overview

Section 1: Getting Started with Protocols in Swift

Lecture 1 The Course Overview

Lecture 2 Exploring Protocols

Lecture 3 Defining and Confog to Protocols

Lecture 4 Extending Protocols

Lecture 5 Why Use Protocols?

Lecture 6 Using Protocols as Types

Lecture 7 Mutating Requirements and Class-bound Protocols

Lecture 8 Initialiser Requirements

Lecture 9 Optional Requirements

Lecture 10 Stored Properties in Protocol Extensions

Lecture 11 Associated Type Requirements

Lecture 12 Self Requirements

Lecture 13 Operator Requirements

Lecture 14 Where Clauses in Extensions

Lecture 15 Introduction to generics

Lecture 16 Using Protocols with Generics

Lecture 17 Using Protocols to Refine Extensions on Generic Types

Lecture 18 Equatable, Comparable, and Hashable

Section 2: Build Your Swift App Using Protocols

Lecture 19 The Course Overview

Lecture 20 Using Protocols Over Inheritance

Lecture 21 The Importance of Protocol Semantics

Lecture 22 Delegation with Protocols

Lecture 23 Testing with Protocols

Lecture 24 OptionSet and Sequence

Lecture 25 Collection Family of Protocols

Lecture 26 Building an App with Protocols

Lecture 27 Existential Containers

Lecture 28 Dispatch of Protocol Requirements

Lecture 29 Constrained Generic Placeholder versus Protocol Type

Lecture 30 Type Erasers

Lecture 31 Simplifying Protocol Architectures with Closures

Lecture 32 Overriding Operator Conformance

Lecture 33 Avoiding Expensive Casts

Lecture 34 Working Around the Lack of Conditional Conformances

Lecture 35 Using Protocols to Allow Parameterised Extensions

Lecture 36 Associated Type Where Clauses

Lecture 37 Working with Conditional Conformances

Lecture 38 Class and Subtype Existentials

This Learning Path is for Swift developers who want to improve the flexibility, maintainability, and reusability of their code. Don’t worry if you have no experience with protocols in Swift; this Learning Path start right from the basics of what protocols are and how you define them.