Best Practices for Building Swift Classes
In this tutorial, I’m going to give you some best practices that will help you safely and effectively use classes (reference types) and reference semantics in Swift. Protocol-oriented programming (POP) and value semantics...
Protocol-oriented Data Structures in Swift: A Generic Doubly Linked List
Let’s talk about creating a list on steroids, i.e., a generic doubly linked list in Swift. For our purposes here, a list is a software receptacle that contains related data that we’re interested in inspecting,...
Design Patterns in Swift #3: Facade and Adapter
This tutorial is the third installment in our series on design patterns. I started this series with a tutorial examining two examples of patterns in the “creational” category: factory method and singleton. I then...
Design Patterns in Swift #2: Observer and Memento
This tutorial is the second installment in an AppCoda series on design patterns started last week. There are 23 classic software development design patterns probably first identified, collected, and explained all in one place by...
Design Patterns in Swift #1: Factory Method and Singleton
There are 23 classic software development design patterns probably first identified, collected, and explained all in one place by the “Gang of Four” (“GoF”), Erich Gamma, Richard Helm, Ralph Johnson, and...
New in iOS 12: Adding a Custom UI and Interactivity in Local and Push Notifications
If you look at Apple’s “What’s New in iOS” 12 page, you’ll find a section entitled “Interactive Controls in Notifications,” which exclaims: Notification content app extensions now support user...
How to Integrate Your App with Files App in iOS 11
In this tutorial, I’ll show you how to embrace iOS 11’s Files app. First, I’ll walk you through configuration of an app so that any files stored in its iOS file system-based “Documents” folder are...
Introduction to MVVM: Refactoring a MVC App Using the MVVM Design Pattern
Design patterns are very important tools for iOS developers to keep in their software engineering arsenals. These patterns, along with several other best practices I’ll mention below, help developers to create reliable and...
Introduction to HealthKit with Core Bluetooth
In my last Core Bluetooth tutorial, I discussed the technology, applications, and benefits of Apple’s Core Bluetooth framework. I showed you how to build an app that wirelessly connected to a Bluetooth® heart rate monitor...
Working with Core Bluetooth in iOS 11
As iOS developers, we’re very aware that humans love connectivity. Obviously, we love to communicate with each other using wireless devices. More recently, we’ve come expect that we can communicate with what once were...