Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


Advanced Programming in Swift

Meta via Coursera


Limited-Time Offer: Up to 75% Off Coursera Plus!
7000+ certificate courses from Google, Microsoft, IBM, and many more.
At the heart of any remarkable iOS applies a thorough understanding of the Swift programming language. Embark on a journey to expand your knowledge and skillset with Advanced Programming in Swift. Discover Swift’s advanced custom data types, explore code organization best practices, tap into error handling to improve your program’s performance, and foster an understanding of programming the functional way with higher-order functions like map, filter and reduce. Then, to further understand the inner workings of successful app development, learn how to implement unit tests to ensure that your applications function as intended. By the end of this course, you will practice creating the functionality you often encounter in apps with large lists of items. You’ll implement advanced programming concepts including higher-order functions to process collections and build your own list in Xcode. Upon completion of this course, you will be able to: • Create custom data types including enumerations and sets. • Organize and optimize your code by using subclassing and inheritance, typecasting and polymorphism. • Discover how to set restrictions in your code using access control. • Create blueprints for your code with optional and required protocols. • Give control and pass responsibilities from one instance to another with delegation. • Employ appropriate error handling approaches, implement throwable functions and catch errors. • Describe what recursion is and identify common use cases. • Implement higher-order functions like map, filter and reduce. • Ensure your applications perform as expected by implementing unit tests. This course is ideal for intermediate learners who would like to prepare themselves for a career in iOS development. To succeed in this course, you need a foundational understanding of the programming fundamentals of Swift and SwiftUI.


  • Advanced custom data types
    • Get started with advanced programming in Swift by learning about the advanced custom data types that act as general-purpose programming blocks for your code.
  • Code organization
    • Discover how to inherit properties and methods with subclassing and explore access control, typecasting and polymorphism, protocols and delegation to better organize and optimize your code.
  • Error handling, functional programming and testing
    • Learn how to throw and handle errors with code, explore how to harness functional programming strategies, and discover unit testing in Swift.
  • Create a dinner menu
    • Implement the skills you've learned in this course to build your own list with filtering and sorting functionality.

Taught by

Taught by Meta Staff


4.8 rating at Coursera based on 69 ratings

Start your review of Advanced Programming in Swift

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.