How senior iOS devs eliminate nested closures (arrow anti-pattern) in Swift | Live Dev Mentoring

How senior iOS devs eliminate nested closures (arrow anti-pattern) in Swift | Live Dev Mentoring

Have you ever seen nested Swift closures shaped like an arrowhead (aka Pyramid of Doom)? 😱

Read More

Swift fundamentals: Equality & Identity for protocol, class, struct, enum | iOS Dev Live Mentoring

Swift fundamentals: Equality & Identity for protocol, class, struct, enum | iOS Dev Live Mentoring

To become a complete senior iOS developer, you need to master the fundamentals. Including how to make Swift structs with protocol dependencies Equatable.

Read More

Multithreading and Concurrency in iOS apps | iOS Dev Live Mentoring

Multithreading and Concurrency in iOS apps | iOS Dev Live Mentoring

Learn why and how to handle concurrency in iOS apps. Also, how to decide between delegates or closure callbacks.

Read More

Understanding Swift closures and pros/cons over protocols & delegates | iOS Dev Live Mentoring

Understanding Swift closures and pros/cons over protocols & delegates | iOS Dev Live Mentoring

Learn how to fully grasp closures in Swift, how and when to replace Swift protocols with closures, tuples, structs, or classes. And pros/cons of using delegates vs. closures for async operations.

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

The Minimum You Should Do To Prevent Memory Leaks in Swift

The Minimum You Should Do To Prevent Memory Leaks in Swift

In this episode, we continue the Clean Swift Tests discussion, and we demonstrate a way for preventing memory leaks through automated testing.

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.3: Lifecycle Observers in Swift

Composing View Controllers pt.3: Lifecycle Observers in Swift

In this video, you'll learn how to create your own `Swift View Controller Lifecycle Observers`. Those observers are very useful when composing and creating reusable view controllers. The solution is based on the `UIViewController Containers API` so there's no need for external frameworks, swizzling or subclassing!

Read More

Back to Basics pt.1: Objects

Back to Basics pt.1: Objects

Today we'd like to discuss the importance of the "basics" for beginners and advanced programmers. In this first video, we'll stress the concept of "Objects."

While teaching we noticed that many developers like to rush to the "cool stuff" and end up getting too attached to the semantics of acronyms or language features, and they forget the basic concepts behind them. We believe that if we don't get the basics right, we can't use our skills optimally.

Read More