S03E01: How SwiftUI fits in a Clean Architecture | Professional iOS Engineering Series

S03E01: How SwiftUI fits in a Clean Architecture | Professional iOS Engineering Series

Learn how to migrate to SwiftUI incrementally as we migrate away from UIKit UIViewControllers.

Read More

MVC, MVVM, MVP & iOS: Common UI Architectural Design Patterns Q&A | iOS Lead Essentials Podcast #012

MVC, MVVM, MVP & iOS: Common UI Architectural Design Patterns Q&A | iOS Lead Essentials Podcast #012

In this podcast, we explore the MVC, MVVM, and MVP UI Architectural Design Patterns.

Read More

Composable Code Can Be Simple – Intro to dependency diagrams and composition

Composable Code Can Be Simple – Intro to dependency diagrams and composition

In this episode, we continue exploring the dependency inversion principle and composition, while documenting our system's evolution in diagrams.

Read More

Careful With “Singleton” Lookalikes (WAY TOO COMMON)

Careful With “Singleton” Lookalikes (WAY TOO COMMON)

Have you ever been told that Singleton is an anti-pattern? Well, Singletons can be ok, but if you are not careful, they aren’t just an anti-pattern. THEY CAN BE DANGEROUS!

Read More

“How do you think when writing tests?” – It’s simpler than you may think

“How do you think when writing tests?” – It’s simpler than you may think

In this episode, we reply to an important question raised by a member of our community.

Read More

XCTest + Swift: SetUp/TearDown vs Factory Methods

XCTest + Swift: SetUp/TearDown vs Factory Methods

In this episode, we dive into `XCTestCase`’s lifecycle and show different ways for configuring your system under test.

Read More

Clean iOS Architecture pt.7: VIP (Clean Swift) – Design Pattern or Architecture?

Clean iOS Architecture pt.7: VIP (Clean Swift) – Design Pattern or Architecture?

Today we're going to analyze the VIP (Clean Swift) Architecture. And, as we did in previous videos with VIPER, MVC, MVVM, and MVP, we will decide if we can call VIP a Software Architecture or a Design Pattern.

Read More

Clean iOS Architecture pt.6: VIPER – Design Pattern or Architecture?

Clean iOS Architecture pt.6: VIPER – Design Pattern or Architecture?

Today we're going to analyze the VIPER iOS Architecture and decide if we can call it a Software Architecture or a Design Pattern like the MVC, MVVM and MVP design patterns we talked about in the previous video.

Read More

Clean iOS Architecture pt.4: Clean Memory Management in Swift with WeakRef

Clean iOS Architecture pt.4: Clean Memory Management in Swift with WeakRef

We must be careful with `weak` properties as they can sometimes damage the design of our systems, especially when crossing module boundaries. In this video, we’d like to share with you a way to avoid retain cycles by using a `WeakRef` type, so there's no need to make your class properties `weak`.

Read More

Composing View Controllers pt.4: Integration Tests vs. Contract Tests vs. UI Tests

Composing View Controllers pt.4: Integration Tests vs. Contract Tests vs. UI Tests

In this video, we're going to improve our `Swift View Controller Lifecycle Observers` by increasing the test confidence with Integration Tests.

Read More