Simple play icon Course
Skills Expanded

Behavioral Design Patterns in Swift 5

by Karoly Nyisztor

This course will teach you how to effectively manage object interactions in your application, resulting in a more organized, flexible, and maintainable Swift codebase.

What you'll learn

Complex object interactions and unclear responsibilities can make our lives as developers quite challenging, leading to code that’s hard to manage, extend, and debug. In this course, Behavioral Design Patterns in Swift 5, you’ll learn to develop efficient, scalable, and maintainable Swift applications. First, you’ll dive into the Chain of Responsibility and Command patterns, which allow for dynamic behavior changes and efficient communication between objects. Next, you’ll explore the Interpreter that allows you to map a domain to a language and define its rules. The Iterator provides an elegant way to traverse collections without exposing their underlying representations. Then, you’ll master the Mediator and Memento patterns, providing you with techniques to facilitate communication between objects without requiring them to be explicitly aware of each other and to capture and restore an object’s internal state. The Observer and State patterns enable your objects to react to state changes and allowing an object to change its behavior when its state changes. Moving forward, you’ll learn the Strategy and Template Method patterns, helping you define a family of algorithms and let subclasses redefine certain steps of an algorithm without changing its structure. Finally, you’ll explore the Visitor pattern, which lets you separate algorithms from the objects on which they operate, enhancing flexibility and scalability. When you’re finished with this course, you’ll have the skills and knowledge of behavioral design patterns needed to enhance the clarity, flexibility, and robustness of your Swift applications, ensuring they are well-prepared for future maintenance and enhancements.

Table of contents

About the author

Károly Nyisztor is a professional software engineer, instructor, and author who has inspired over 250,000 students worldwide. As an instructor, he is dedicated to sharing his extensive experience of more than 30 years in software development, aiming to positively impact students' lives globally. He is passionate about uncovering hidden talents and guiding individuals into the world of programming. Having contributed to companies such as Apple, Siemens, and SAP, Károly has extensive industry ex... more

Ready to upskill? Get started