The Resource Swift 3 Protocol-Oriented Programming, Jon Hoffman

Swift 3 Protocol-Oriented Programming, Jon Hoffman

Label
Swift 3 Protocol-Oriented Programming
Title
Swift 3 Protocol-Oriented Programming
Statement of responsibility
Jon Hoffman
Creator
Author
Subject
Language
eng
Summary
Annotation
Cataloging source
NLE
Dewey number
005.13/3
Index
no index present
LC call number
QA76.73.S95
Literary form
non fiction
Nature of contents
dictionaries
Summary expansion
Build fast and powerful applications with the power of protocol-oriented programmingAbout This Book 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 programmingWho This Book Is ForThis book is for Swift developers who want to learn and implement protocol-oriented programming in practical applications.What You Will Learn Understand the difference between object-oriented programming and protocol-oriented programming Explore the different types that Swift offers and what pitfalls to avoid Error handling with do-try-catch block Delve into Generics and Generic programming Implement several design patterns in a protocol-oriented way How to design applications by prioritizing the protocol first and the actual type secondIn DetailOne 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.This book will help you understand the difference 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 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 to utilize the advanced features of protocol-oriented programming to boost the performance of your applications.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.Style and approachThis book is written for developers who learn best by working with code, so every concept discussed in this book is reinforced with real code examples
Label
Swift 3 Protocol-Oriented Programming, Jon Hoffman
Publication
http://library.link/vocab/branchCode
  • net
Carrier category
online resource
Carrier category code
cr
Carrier MARC source
rdacarrier
Content category
text
Content type code
txt
Content type MARC source
rdacontent
Contents
  • Cover; Copyright; Credits; About the Author; About the Reviewer; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Object-Oriented and Protocol-Oriented Programming; What is object-oriented programming?; Requirements for the sample code; Swift as an object-oriented programming language; Drawbacks to object-oriented design; Swift as a protocol-oriented programming language; Summarizing protocol-oriented programming and object-oriented programming; Differences between object-oriented programming and protocol-oriented programming
  • Protocol and protocol extensions compared with superclassesImplementing vehicle types; The winner is{u2026}; Summary; Chapter 2: Our Type Choices; The class; The structure; Access controls; The enumerations; The tuple; Protocols; Value and reference types; Recursive data types for reference types only; Inheritance for reference types only; Swift's built-in data types and data structures; Summary; Chapter 3: Catching Our Errors; Using the guard statement; Error handling; Error handling with return values; Error handling with do-catch; Representing errors; Throwing errors; Catching errors
  • The bridge patternUnderstanding the problem; Understanding the solution; Implementing the bridge pattern; The facade pattern; Understanding the problem; Understanding the solution; Implementing the facade pattern; The proxy design pattern; Understanding the problem; Understanding the solution; Implementing the proxy pattern; Behavioral design patterns; The command design pattern; Understanding the problem; Understanding the solution; Implementing the command pattern; The strategy pattern; Understanding the problem; Understanding the solution; Implementing the strategy pattern
  • Type constraints with genericsGeneric types; Associated types; Generics in a protocol-oriented design; Summary; Chapter 7: Adopting Design Patterns in Swift; What are design patterns?; Creational patterns; The singleton design pattern; Understanding the problem; Understanding the solution; Implementing the singleton pattern; The builder design pattern; Understanding the problem; Understanding the solution; Implementing the builder pattern; The factory method pattern; Understanding the problem; Understanding the solution; Implementing the factory method pattern; Structural design patterns
  • Using the defer statementWhen to use error handling; Summary; Chapter 4: All About the Protocol; Protocol syntax; Defining a protocol; Property requirements; Method requirements; Optional requirements; Protocol inheritance; Protocol composition; Using protocols as a type; Polymorphism with protocols; Type casting with protocols; Associated types with protocols; Delegation; Designing and developing with protocols; Summary; Chapter 5: Lets Extend Some Types; Defining an extension; Protocol extensions; Text validation; Summary; Chapter 6: Working with Generics; Generic functions
Control code
ocn966309739
Edition
Second edition
Extent
1 online resource (218 pages)
Form of item
online
Isbn
9781787128835
Media category
computer
Media MARC source
rdamedia
Media type code
c
http://library.link/vocab/ext/overdrive/overdriveId
9781787128835
http://library.link/vocab/recordID
.b36498798
Specific material designation
remote
System control number
  • (OCoLC)966309739
  • pebc1787128830

Library Locations

    • Deakin University Library - Geelong Waurn Ponds CampusBorrow it
      75 Pigdons Road, Waurn Ponds, Victoria, 3216, AU
      -38.195656 144.304955
Processing Feedback ...