A weekly Swift Blog on Xcode and iOS Development

See all

Recent Posts

Development Assets in Xcode to enrich SwiftUI Previews

Development Assets in Xcode allow you to provide test data to use within SwiftUI previews and other code during development ...
Read More
/ Xcode

Dependency Injection in Swift using latest Swift features

Dependency Injection is a software design pattern in which an object receives other instances that it depends on. It's a ...
Read More
/ Swift

Async await in Swift explained with code examples

Async await is part of the new structured concurrency changes that arrived in Swift 5.5 during WWDC 2021. Concurrency in ...
Read More
/ Swift

See all

Learn more about Swift

Dependency Injection in Swift using latest Swift features

Dependency Injection is a software design pattern in which an object receives other instances that it depends on. It's a ...
/ Swift

Async await in Swift explained with code examples

Async await is part of the new structured concurrency changes that arrived in Swift 5.5 during WWDC 2021. Concurrency in ...
/ Swift

MainActor usage in Swift explained to dispatch to the main thread

MainActor is a new attribute introduced in Swift 5.5 as a global actor providing an executor which performs its tasks ...
/ Swift

See all

Learn SwiftUI

How to create a Conditional View Modifier in SwiftUI

Conditional View Modifier creation in SwiftUI allows you only to apply modifiers if a certain condition is true. Whether it's ...
/ SwiftUI

How to create a Dynamic Pager View for onboardings

A pager view in SwiftUI like we know UIPageViewController in UIKit didn't exist until iOS 14 and macOS 11.0. Using ...
/ SwiftUI

Getting started with UIKit in SwiftUI and vice versa

SwiftUI can work together with UIKit by making it easier to add SwiftUI views to UIKit and visa versa using ...
/ SwiftUI

See all

Combine all the things

How to observe NSManagedObject changes in Core Data using Combine

Observing changes in Core Data NSManagedObject instances with Combine publishers can be a great solution to keep your user interface ...
/ CombineCore Data

Getting started with the Combine framework in Swift

Combine was introduced as a new framework by Apple at WWDC 2019. The framework provides a declarative Swift API for ...
/ CombineSwift

Error handling in Combine explained with code examples

Once you get started with Combine you'll quickly run into error handling issues. Each Combine stream receives either a value ...
/ CombineSwift

See all

Dive into Core Data

How to observe NSManagedObject changes in Core Data using Combine

Observing changes in Core Data NSManagedObject instances with Combine publishers can be a great solution to keep your user interface ...
/ CombineCore Data

Data validation on insertion, update, and deletion in Core Data

Data validation in apps is important to make sure we save data conforming to the business rules. A name should ...
/ Core Data

Derived Attributes to improve Core Data Fetch Performance

Derived attributes are available since iOS 13 and aim to improve fetch performance in many different scenarios. Although we have ...
/ Core Data

See all

Be an expert on Xcode

Development Assets in Xcode to enrich SwiftUI Previews

Development Assets in Xcode allow you to provide test data to use within SwiftUI previews and other code during development ...
/ Xcode

Xcode Mark Line to improve readability using // Mark: comments

Xcode Mark Lines allows us to create a better overview of sections within our classes or structs. A so-called mark ...
/ Xcode

Build performance analysis for speeding up Xcode builds

Build performance can be analysed in Xcode to speed up Xcode builds. This can easily speed up your workflow and ...
/ OptimizationXcode

See all

Get better at debugging

Flaky tests resolving using Test Repetitions in Xcode

Flaky tests can be frustrating to deal with. You're ready to open your PR until you realize your tests fail ...
/ Debugging

OSLog and Unified logging as recommended by Apple

OSLog as a replacement of print and NSLog is the recommended way of logging by Apple. It's a bit harder ...
/ DebuggingWorkflow

Using Custom debug descriptions to improve debugging

Custom debug descriptions can help you debug your own custom objects, structs, errors, and other types. Whenever you print out ...
/ DebuggingSwift

See all

Improve your workflow

RocketSim 4.0: Compare designs & record the Simulator with Touches

RocketSim 4.0 is available as of today and comes with a few major new features. Designs from Sketch and Figma ...
/ Workflow

OSLog and Unified logging as recommended by Apple

OSLog as a replacement of print and NSLog is the recommended way of logging by Apple. It's a bit harder ...
/ DebuggingWorkflow

Full-screen development with Xcode and the Simulator

While developing apps it's important to create focus to get in your flow and speed up development. Full-screen mode can ...
/ Workflow

See all

Optimize yourself and improve

App Launch Time: 7 tips to increase performance

App Launch Time is the time it takes before your app becomes responsive after startup. As the first experience of ...
/ Optimization

Build performance analysis for speeding up Xcode builds

Build performance can be analysed in Xcode to speed up Xcode builds. This can easily speed up your workflow and ...
/ OptimizationXcode

WWDC 2020: 7 Tips to prepare yourself

In less than a week we will know what WWDC 2020 has brought to us. Apple has been working hard ...
/ Optimization
Explore categories Swift Combine SwiftUI Core Data Xcode Debugging Workflow Optimization

SwiftLee Jobs

Post your job positions for free

Most Popular Posts

  1. Dependency Injection in Swift using latest Swift features
  2. JSON Parsing in Swift explained with code examples
  3. Development Assets in Xcode to enrich SwiftUI Previews
  4. SF Symbols: The benefits and how to use them guide
  5. Getting started with the Combine framework in Swift