- Design Patterns on iOS using Swift – Part 1/2
- Design Patterns on iOS using Swift – Part 2/2
- Using child view controllers as plugins in Swift
- Design Patterns in Swift #1: Factory Method and Singleton
- Krush iOS Architecture
- Encapsulating Domain Data, Logic and Business Rules With Value Types in Swift
- Hiding third-party dependencies with protocols and extensions
- Passive View
- Presentation Model
- ARCHITECTING AN ANALYTICS SERVICE FOR IOS APPS
- Preventing views from being model aware in Swift
- How to move view code out of your view controllers
- Cleaner Classes with Structs and Tuples
- Extracting view controller actions in Swift
- Configurable types in Swift
- Layered Architecture to Design iOS Apps
- Splitting up Swift types
- Avoiding Massive View Controller using Containment & Child View Controller
- Building complex screens with Child ViewControllers
- Enum-Driven TableView Development
- Maintaining State in Your ViewControllers
- Modeling State In Swift
- The Comprehensive Guide to the State Management in iOS
- The easiest State Machine in Swift
- State Machines in Swift using enums
- Modelling state in Swift
- Maintaining State in Your Apps
- Promises in Swift: Asynchronous Promises: Proof of Concept in Swift
- Promise Pattern on Swift with PromiseKit And why you should migrate your async calls to them
- Under The Hood Of Futures And Promises In Swift
- Implementing Promises in Swift
- SOLID Principles Applied To Swift
- SOLID Principles for Becoming a Better iOS/Swift Developer
- iOSModulesArchitecture
- S.O.L.I.D: The First 5 Principles of Object Oriented Design
- Multicast Delegates in Swift
- Multicast on Swift 3 and MVVM-C
- Multicast Delegate and Delegates Composition
- Rethinking Design Patterns in Swift: State Pattern
- Design Patterns in Swift: State Pattern
- Applying the State Pattern in Swift
- How use State Design Pattern to create a Stateful ViewController?
- An iOS Coordinator Pattern
- Coordinator Tutorial for iOS: Getting Started
- Coordinators Redux
- MVVM and Coordinator pattern together
- How to use the coordinator pattern in iOS apps
- Coordinator and FlowController
- Coordinators with Storyboards
- Using closures with the coordinator pattern
- Introducing an iOS navigation library based on the coordinator pattern
- Coordinators Essential tutorial. Part I
- Coordinators Essential tutorial. Part II
- Coordinator: the missing pattern in UIKit
- Controller Hierarchies
- Advanced coordinators in iOS
- Introduction to Coordinator pattern in Swift
- [iOS] Flow: Make your logic flow and data flow clean and human readable
- Navigation with Flow Controllers
- Swift World: Design Patterns — Proxy
- A Design Pattern Story in Swift – Chapter 12: Proxy
- Protection Proxy
- Virtual Proxy
- Observers in Swift - Part 1
- Observers in Swift - Part 2
- Notification in Swift (NSNotification)
- Using NSNotificationCenter in Swift
- NSNotificationCenter addObserver in Swift
- Lightweight iOS View Controllers
- Apple’s Take on App Architecture
- Fluent Pagination - no more jumpy scrolling
- AdvancedCollectionView
- iOS: UITableView controller
- Nestable
- Advanced UITableViews Made Simple: YLTableView
- Typed, yet Flexible Table View Controller
- Complex table view state changes made easy
- Why you shouldn’t use delegates in Swift
- Understanding Delegates and Delegation in Swift 4
- Dependency Injection Demystified
- Dependency injection
- Dependency injection using factories in Swift
- Dependency Injection / Objective C
- Dependency Injection in Swift
- Dependency Injection in View Controllers
- Safer UIViewController Creation When Using Storyboards
- Faux Dependency Injection for Storyboards
- Advanced Dependency Injection
- Dependency Injection on iOS — part 1/4
- Dependency Injection on iOS — part 2/4
- Dependency Injection on iOS — part 3/4
- Dependency Injection on iOS — part 3/4
- Dependency Injection in Swift with Protocols
- Looser dependencies with Swift
- A Swift-y Approach to Dependency Injection
- Swift-y Dependency Injection, Part Two
- Null Object Pattern in Swift
- Null Object Design Pattern
- Swift Optionals and the Null Object Design Pattern
- Custom container view controllers in Swift
- Managing View Controllers With Container View Controllers
- Container View Controllers
- Container View Controllers Redux
- What is Data Transfer Object?
- LocalDTO
- Why Model Objects Shouldn’t Implement Swift’s Decodable or Encodable Protocols
- iOS Architecture Patterns. Demystifying MVC, MVP, MVVM and VIPER
- The best architecture for the iOS app, does it even exist?
Model View Controller
- Looking at Model-View-Controller in Cocoa
- MVC
- Model-View-Controller, Apple Docs
- Do MVC like it’s 1979
- A Better MVC, Part 1: The Problems
- A Better MVC, Part 2: Fixing Encapsulation
- A Better MVC, Part 3: Fixing Massive View Controller
- A Better MVC, Part 4: Future Directions
- A Better MVC, Part 5: An Evolution
- Just Controllers
- Model-View-Controller without the Controller
- Using child view controllers as plugins in Swift
- Model View Whatever
- Model-View-Controller (MVC) in iOS: A Modern Approach
- MVC: Many View Controllers
- Model-View-Controller (MVC) in iOS – A Modern Approach
Model View Controller - Network
- MVC-N why did use it instead of MVC traditional
- MVC-N: Isolating network calls from View Controllers
Model View Presenter
Model View View-Movel
- MVVM in Swift
- An Introduction to the MVVM Design Pattern
- Swift and ModelView-View-Model in Practive
- MVVM in Swift
- Introduction to MVVM
- MVVM is Not Very Good
- Simplification Of IOS View Controllers: MVVM Or Presentation Controls?
- On MVVM, and Architecture Questions
- MVVM and Coordinator Patterns Together
- Design Patterns by Tutorials: MVVM
- MVVM Pattern Sample in Swift/iOS
- From MVC to MVVM in Swift
- MVVM Is Quite Okay at What It Is Supposed to Do
- MVVM-C In Practice
- MVVM in Practice - RWDevCon Session
- View Models at Kickstarter
- How not to get desperate with MVVM implementation
- iOS Architecture: A State Container based approach
- MVVM: A non-reactive introduction
- Working With Static Patterns: A Swift MVVM Tutorial
- Model-View-ViewModel for iOS
- Basic MVVM with ReactiveCocoa
- Mastering MVVM on iOS
- Practical MVVM + RxSwift
- MVVM with Combine Tutorial for iOS
Model View View-Model Coordinator
- MVVM-C with Swift
- MVVM-C A simple way to navigate
- UIKonf 2016 – Day 1– Steve "Scotty" Scott – MVVM-C In Practice
View Interactor Presenter
View Interactor Presenter Entity Router
- Introduction to VIPER
- iOS Project Architecture: Using VIPER
- ARCHITECTING MOBILE APPS WITH (B)VIPER MODULES - A STRUCTURED ENGINEERING APPROACH FOR BIG MOBILE APPS
- Clean Architecture - VIPER at Redbooth by @sergigracia
- VIPER to be or not to be
- Clean Architecture - VIPER by Redbooth
- 250 Days Shipping With Swift and VIPER
- IOS ARCHITECTURE: REAL LIFE VIPER
- Humble Object Pattern in Swift
- VIPER-S: WRITING YOUR OWN ARCHITECTURE AND UNDERSTAND ITS IMPORTANCE (PART 3)
- Facing the VIPER
- Building a Framework with VIPER
- Should I use Viper architecture for my next iOS application, or it is still very new to use?
- VIPER to be or not to be?
- Brigade’s Experience Using an MVC Alternative
- First Observations on TDD with VIPER
- Building Modular iOS Apps
- iPhreaks Show – VIPER with Conrad Stoll and Jeff Gilbert
- Building iOS App With VIPER Architecture
- Viper Framework for iOS using Swift v3
- Architecting iOS Apps with VIPER
- iOS Project Architecture: Using VIPER
- Mastering the VIPER architecture
- VIPER best practices for iOS developers
Unidirectional Data Flow