tezvyn:

iOS & Swift

SwiftUI, UIKit, Xcode, Swift language, Apple platforms

309 bites

More in iOS & Swift — page 14

The Singleton Pattern: One Instance to Rule Them All
iOS & Swift2 min read

The Singleton Pattern: One Instance to Rule Them All

A singleton ensures a class has only one instance and provides a global access point to it. It's used for shared resources like a network manager or logger. The main footgun is that overuse creates tight coupling and makes testing difficult.

iOS Background Modes: A Hall Pass for Your App
iOS & Swift2 min read

iOS Background Modes: A Hall Pass for Your App

iOS background modes are like hall passes, letting your app perform specific tasks like playing audio or tracking location after the user switches away. They're used for music players or navigation apps.

Dependency Injection in Swift: Stop Creating, Start Receiving
iOS & Swift2 min read

Dependency Injection in Swift: Stop Creating, Start Receiving

Dependency Injection means objects receive their dependencies from the outside rather than creating them internally. It's used to give a view model a network client or data source, making it testable.

MVVM: Separate SwiftUI Logic from Layout
iOS & Swift2 min read

MVVM: Separate SwiftUI Logic from Layout

MVVM separates logic from layout by moving state and business logic out of your SwiftUI View into a dedicated ViewModel class. This makes your code cleaner, more organized, and easier to test.

UISceneDelegate: Managing Your App's UI Instances
iOS & Swift2 min read

UISceneDelegate: Managing Your App's UI Instances

Think of SceneDelegate as the lifecycle manager for a single window of your app's UI. It's essential for multi-window iPad apps, handling when a scene connects, disconnects, or changes state.

Model-View-Controller (MVC): Separating App Logic from UI
iOS & Swift2 min read

Model-View-Controller (MVC): Separating App Logic from UI

MVC organizes code by separating data (Model) from the user interface (View), using a Controller as the go-between. This is the foundational pattern for many UI frameworks, like Cocoa and UIKit. The main footgun is the "Massive View Controller."

The AppDelegate: Your App's Central Command
iOS & Swift2 min read

The AppDelegate: Your App's Central Command

Think of the AppDelegate as your app's command center, receiving critical notifications from the OS. It handles core events like launch, termination, or receiving a push notification. The footgun is bloating it with logic that belongs elsewhere.

iOS App States: From Launch to Suspension
iOS & Swift2 min read

iOS App States: From Launch to Suspension

An iOS app is like a person with different states of alertness: focused (Active), distracted (Inactive), or napping (Background/Suspended). This lifecycle dictates how your app behaves during interruptions.

UIViewRepresentable: Bridging UIKit and SwiftUI
iOS & Swift2 min read

UIViewRepresentable: Bridging UIKit and SwiftUI

UIViewRepresentable is an adapter that lets you use battle-tested UIKit views inside your modern SwiftUI code. Use it for components like WKWebView that lack a native SwiftUI equivalent.

ObservableObject: Making Data Drive SwiftUI Views
iOS & Swift2 min read

ObservableObject: Making Data Drive SwiftUI Views

ObservableObject lets your custom data classes signal SwiftUI views to refresh when data changes. Use it for reference types like a user profile or settings manager. Changes are ignored unless you mark properties with `@Published`, leaving your UI stale.

The Responder Chain: Who Handles That Tap?
iOS & Swift2 min read

The Responder Chain: Who Handles That Tap?

The Responder Chain is iOS's chain of command for events. When a user taps the screen, the event travels up a view hierarchy, asking each object, "Can you handle this?" until one accepts. Accidentally breaking this chain can silently kill event handling.

UIHostingController: Bridge SwiftUI into UIKit Apps
iOS & Swift81 sec read

UIHostingController: Bridge SwiftUI into UIKit Apps

UIHostingController is an adapter that lets you use modern SwiftUI views inside a UIKit app by wrapping them in a UIViewController. This is key for migrating apps to SwiftUI or embedding new components.

SwiftUI List: More Than Just a Table View
iOS & Swift2 min read

SwiftUI List: More Than Just a Table View

A SwiftUI List is a declarative container for scrollable rows of data, like a modern UITableView. Use it for settings, feeds, or contact lists. The footgun: never nest a List inside a ScrollView, as it breaks scrolling behavior.

SwiftUI Modifiers: Stacking Changes on Views
iOS & Swift2 min read

SwiftUI Modifiers: Stacking Changes on Views

Think of SwiftUI modifiers as non-destructive filters you apply to a view, creating a new, wrapped version with the change applied. You use them to add padding, set fonts, or handle taps. The footgun: modifier order matters immensely.

SwiftUI State and Binding: Owning vs. Sharing Data
iOS & Swift2 min read

SwiftUI State and Binding: Owning vs. Sharing Data

In SwiftUI, `@State` is owning the data, while `@Binding` is borrowing a key. A view uses `@State` for its private source of truth, like a toggle's status, and passes a `@Binding` to child views so they can modify the original source.

UICollectionView: Grids, Stacks, and Custom Layouts
iOS & Swift89 sec read

UICollectionView: Grids, Stacks, and Custom Layouts

UICollectionView is a powerful tool for displaying items in customizable layouts, going far beyond a simple vertical list. Use it for photo galleries or App Store-style interfaces.

UITableView: The Backbone of iOS Lists
iOS & Swift2 min read

UITableView: The Backbone of iOS Lists

UITableView is the workhorse for displaying scrolling lists in iOS. It's used everywhere from Settings to Contacts. The footgun is forgetting to reuse cells, which causes massive memory usage and choppy scrolling, so always dequeue a reusable cell.

SwiftUI Stacks: Arrange Views Vertically, Horizontally, and in Layers
iOS & Swift2 min read

SwiftUI Stacks: Arrange Views Vertically, Horizontally, and in Layers

SwiftUI stacks are your core layout tools for arranging views. Use VStack for vertical columns, HStack for horizontal rows, and ZStack for layering. They're essential for any UI, from simple rows to complex overlays.

SwiftUI's View: A Blueprint, Not a Building
iOS & Swift2 min read

SwiftUI's View: A Blueprint, Not a Building

A SwiftUI View is a lightweight blueprint for a piece of your UI, not the UI element itself. It's used to compose everything from a single button to an entire screen. The common mistake is treating it like a heavy `UIView` class; it's a cheap.

UIStackView: Layouts Without Manual Constraints
iOS & Swift2 min read

UIStackView: Layouts Without Manual Constraints

A UIStackView is an invisible container that arranges views in a single column or row, saving you from writing manual layout constraints. It's ideal for toolbars or forms. The main footgun is forgetting it's non-rendering—you can't set its background color.