We may earn an affiliate commission when you visit our partners.
Karoly Nyisztor

This course discusses the creational design patterns and the way they are implemented in Swift 5. You'll learn how to use each​ design pattern through hands-on coding examples.

Read more

This course discusses the creational design patterns and the way they are implemented in Swift 5. You'll learn how to use each​ design pattern through hands-on coding examples.

Software design patterns are standard, proven ways to solve various problems programmers encounter. In this course, Creational Design Patterns in Swift 5, you'll learn about the creational patterns using UML diagrams and practical Swift code examples.

First, you'll explore some of the history of design patterns, the value they provide, and their limitations. A brief Unified Modeling Language Primer introduces the concepts and the diagrams used throughout this course.

Next, you'll discover the creational patterns, which will feature the Singleton first, as well as solving thread-safety issues using Grand Central Dispatch.

Then, you'll learn about the Prototype pattern and concepts like the cloning of value and reference types and the difference between shallow and deep copying of objects.

Finally, you'll get to see the Abstract Factory, which provides an abstraction for creating families of related or dependent objects.

After finishing this course, you’ll have a foundational knowledge of creational design patterns that will help you as you move forward to becoming a better software developer.

Enroll now

Here's a deal for you

We found an offer that may be relevant to this course.
Save money when you learn. All coupon codes, vouchers, and discounts are applied automatically unless otherwise noted.

What's inside

Syllabus

Course Overview
Introduction and Prerequisites
The Singleton
The Prototype
Read more
The Builder
The Factory Method
The Abstract Factory
Final Thoughts

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Builds a strong foundation in a core programming concept
Taught by instructors who are recognized for their work in programming
Includes hands-on coding examples
Suitable for students with some background in programming
May require additional resources for students without a strong programming foundation

Save this course

Save Creational Design Patterns in Swift 5 to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Creational Design Patterns in Swift 5 with these activities:
Read the textbook
Review the textbook prior to starting this course to ensure foundational knowledge is fresh in your mind
Show steps
  • Read Chapter 1
  • Take notes on the key concepts
  • Answer the review questions at the end of the chapter
  • Repeat for all remaining chapters
Watch tutorials on Singleton
Supplement your understanding of Singleton by watching tutorials
Browse courses on Singleton Design Pattern
Show steps
  • Search for tutorials on Singleton in Swift 5
  • Watch at least 3 tutorials
  • Take notes on the key concepts
  • Try implementing Singleton in your own code
Solve coding exercises on Prototype
Reinforce your understanding of Prototype by solving coding exercises
Show steps
  • Find coding exercises on Prototype in Swift 5
  • Solve at least 5 exercises
  • Compare your solutions with others
One other activity
Expand to see all activities and additional details
Show all four activities
Create a project using Abstract Factory
Apply your knowledge of Abstract Factory by creating a project
Show steps
  • Choose a problem that can be solved using Abstract Factory
  • Design the class hierarchy
  • Implement the factory method
  • Test your code
  • Deploy your project

Career center

Learners who complete Creational Design Patterns in Swift 5 will develop knowledge and skills that may be useful to these careers:
Software Engineer
Software Engineers apply the principles of software design, computer science, and programming to the design and development of computer software. Enrolling in the Creational Design Patterns in Swift 5 course builds a foundation in essential design patterns, which are key to becoming a successful Software Engineer. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which will equip you to design efficient and reusable software systems.
Software Developer
Software Developers design, implement and test software systems for various clients or organizations. By taking the Creational Design Patterns in Swift 5 course, you will learn about the creational patterns, which will greatly benefit you in your role as a Software Developer. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory. These are essential patterns that you can use to effectively design and implement software solutions.
Software Architect
Software Architects design and develop the overall architecture of software systems, ensuring that they are efficient, scalable, and reliable. Taking the Creational Design Patterns in Swift 5 course can be very useful in your role as a Software Architect. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory. These are fundamental patterns that can aid in the design of complex software systems.
Mobile Developer
Mobile Developers design, develop, and maintain mobile applications for various platforms. Enrolling in the Creational Design Patterns in Swift 5 course will help you to gain a deeper understanding of the creational patterns, which are widely used in mobile development. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can assist you in creating efficient and reusable mobile applications.
Web Developer
Web Developers design, develop, and maintain websites and web applications. Taking the Creational Design Patterns in Swift 5 course is particularly useful for those interested in back-end web development. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can be applied to the design and implementation of web applications.
Full-Stack Developer
Full Stack Developers are responsible for designing, developing, and maintaining both the front-end and back-end of web applications. By enrolling in the Creational Design Patterns in Swift 5 course, you will gain valuable knowledge of the creational patterns, which are used in both front-end and back-end development. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can aid in the creation of robust and scalable web applications.
Machine Learning Engineer
Machine Learning Engineers design, develop, and deploy machine learning models for various applications. By taking the Creational Design Patterns in Swift 5 course, you will gain a deeper understanding of the creational patterns, which can be useful in designing and implementing machine learning systems. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory. These patterns can aid in creating efficient and reusable machine learning pipelines.
Data Scientist
Data Scientists use scientific methods and processes to extract knowledge and insights from data. Enrolling in the Creational Design Patterns in Swift 5 course can supplement your skills as a Data Scientist, particularly in designing and implementing data pipelines and data analysis systems. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can assist in creating efficient and maintainable data-driven solutions.
DevOps Engineer
DevOps Engineers bridge the gap between development and operations teams, ensuring that software is delivered efficiently and reliably. Enrolling in the Creational Design Patterns in Swift 5 course can be beneficial to DevOps Engineers, particularly in designing and implementing automated build and deployment pipelines. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can aid in creating robust and scalable DevOps systems.
Technical Architect
Technical Architects design and develop the overall architecture of complex technical systems. Taking the Creational Design Patterns in Swift 5 course can enhance your skills as a Technical Architect, particularly in designing and implementing scalable and maintainable systems. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which are essential patterns for designing efficient and reusable technical solutions.
Product Manager
Product Managers are responsible for defining, developing, and launching new products or features. By taking the Creational Design Patterns in Swift 5 course, you will gain a deeper understanding of the creational patterns, which can be useful in designing and implementing new products and features. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can aid in creating innovative and user-friendly products.
Technical Program Manager
Technical Program Managers are responsible for planning, managing, and executing technical projects. Enrolling in the Creational Design Patterns in Swift 5 course can aid Technical Program Managers in designing and implementing project plans and deliverables. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can assist in creating efficient and effective project management systems.
Project Manager
Project Managers are responsible for planning, executing, and closing projects. Enrolling in the Creational Design Patterns in Swift 5 course can be beneficial to Project Managers in designing and implementing project plans and deliverables. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can aid in creating efficient and effective project management systems.
Business Analyst
Business Analysts work with stakeholders to identify and define business needs and requirements. Taking the Creational Design Patterns in Swift 5 course can supplement your skills as a Business Analyst, particularly in designing and documenting business processes and requirements. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which can assist in creating clear and concise business requirements.
Systems Analyst
Systems Analysts design and implement computer systems to meet the needs of an organization. Taking the Creational Design Patterns in Swift 5 course can enhance your skills as a Systems Analyst, particularly in designing and implementing scalable and maintainable systems. This course covers topics such as the Singleton, Prototype, Builder, Factory Method, and Abstract Factory, which are essential patterns for designing efficient and reusable technical solutions.

Reading list

We've selected seven books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Creational Design Patterns in Swift 5.
More accessible introduction to design patterns than the Gamma et al. book, and it good choice for beginners. It uses a conversational style and humor to explain the concepts of design patterns.
Guide to object-oriented design with Swift 3. It provides a good overview of the principles and practices of object-oriented design, and it includes numerous examples and exercises.
Guide to functional programming in Swift 3. It provides a good overview of the principles and practices of functional programming, and it includes numerous examples and exercises.
Is another valuable resource for any software developer who wants to improve their coding skills. It provides a number of principles and practices for writing clean code, which can help to make it more readable, maintainable, and reusable.
Valuable resource for any software developer who wants to learn more about software testing. It provides a comprehensive overview of the principles and practices of software testing, and it includes numerous examples and exercises.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser