Quantcast
Channel: Kodeco | High quality programming tutorials: iOS, Android, Swift, Kotlin, Unity, and more
Viewing all articles
Browse latest Browse all 4370

New Course: iOS Design Patterns

$
0
0

Have you picked up so much wonderful code that you’re overwhelmed and don’t know how to keep it all tidily organized in your projects? Don’t worry if so! It’s a common problem raywenderlich.com visitors develop. :]

Or do you feel like you’re always doing the same things over and over? Always “reinventing the wheel”?

If you’re looking for help solving these issues, today is your luck day!

I’m proud to announce the release of my brand new, highly-anticipated course, iOS Design Patterns, ready for Swift 3 & iOS 10!

In this 11-part course, you’ll be introduced to design patterns that are specifically tailored for use with iOS. You’ll start by learning how best to set your projects up, and then jump right in to using design patterns that include:

  • MVC-N and MVVM
  • Multicast Closure Delegate
  • Visitor
  • much more!

Let’s take a peek at what’s inside.

Introduction

Video 1: Introduction You’ll be introduced to “iOS design patterns” in this video, including what design patterns are and how they’re useful.

Project Setup

Video 2: Project Setup Learn two ways to structure your project for design patterns: “grouping by function” and “grouping by type.” You’ll also learn which to use depending on your project.

MVC-N

Video 3: MVC-N In this video, learn about Model-View-Controller (MVC) and the dreaded massive view controller problem. Oh my! Fortunately, Model-View-Controller-Networking (MVC-N) is here to save the day.

MVVM

Video 4: MVVM. Learn about Model-View-ViewModel (MVVM) in this video, which you’ll use to further combat massive view controllers.

Multicast Closure Delegate

Video 5: Multicast Closure Delegate Learn about the multicast closure delegate pattern, a spin-off pattern from delegate. This is in preparation for performing auto re-login authentication in the next video.

Authentication

Video 6: Auto Re-Login Authentication Use the multicast closure delegate pattern from the previous video to create an auto re-login authentication client.

Memento

Video 7: Memento Learn about the memento pattern, which allows an object’s state to be saved and restored later.

Composition over Inheritance

Video 8: Composition Over Inheritance Learn about “composition over inheritance” in this video, a design principle used by most design patterns.

Container Views

Video 9: Container Views In this video, you’ll learn how to DRY out your storyboard UIs using container views. This is in preparation for the next video, where you’ll use this to implement the visitor pattern.

Visitor

Video 10: Visitor Learn the visitor design pattern, which you’ll use to eliminate view controllers’ code duplication logic. This video builds on the previous one, which eliminated storyboard UI duplication.

Conclusion

Video 11: Conclusion In this video, you’ll review what you learned in this “iOS Design patterns” video tutorial series and find out where to go from here.

Where To Go From Here?

Want to check out the course? You can watch the introduction for free!

The rest of the course is for raywenderlich.com subscribers only. Here’s how you can get access:

  • If you are a raywenderlich.com subscriber: You can access the first two parts of iOS Design Patterns today, and the rest will be coming out over the next two weeks.
  • If you are not a subscriber yet: What are you waiting for? Subscribe now to get access to our new iOS Design Patterns course and our entire catalog of over 500 videos.

There’s much more in store for raywenderlich.com subscribers – if you’re curious, you can check out our full schedule of upcoming courses.

I hope you enjoy our new course, and stay tuned for many more new courses and updates to come! :]

The post New Course: iOS Design Patterns appeared first on Ray Wenderlich.


Viewing all articles
Browse latest Browse all 4370

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>