Category Archives: Swift

json2swift: a peek under the hood

This article presents a high-level overview of how my json2swift tool works. Several people have expressed interest in using my code as the foundation for a similar tool, or just want to change the Swift code it generates, and have asked … Continue reading

Posted in Swift | 1 Comment

Swift JSON library vs. code generation

Ever since Swift was first released there has been an endless stream of new libraries to simplify writing Swift code that consumes JSON data. Since this is such a common and tedious aspect of developing apps, it’s an important topic … Continue reading

Posted in Swift | 6 Comments

Create Swift data models from JSON

I published a tool that analyzes JSON data and generates Swift data model code, named json2swift. This tool helps eliminate most of the error-prone grunt work involved with consuming JSON data in a Swift app. The repository’s README has more … Continue reading

Posted in Swift | 1 Comment

Concealment design pattern in Swift

This article introduces a design pattern that I call Concealment, and demonstrates how to use the pattern in Swift code. Purpose The Concealment pattern enables types to support novel, related functionality without adding nonessential members to their interface. Motivation User-defined types can easily be overused in a codebase, giving more prominence to … Continue reading

Posted in Swift | Tagged | 1 Comment

Analyzing a dependency graph in Swift

I published my solution to Dave Thomas’s Transitive Dependencies programming exercise, known as a kata, to GitHub: https://github.com/ijoshsmith/transitive-dependencies-kata The Challenge This exercise involves analyzing a graph data structure which contains nodes that “depend on” other nodes. A graph is represented as direct dependencies between nodes: The objective is to find all … Continue reading

Posted in Swift | Tagged , | 1 Comment

DRY Fusion data munging kata in Swift

I worked through one of Dave Thomas’s programming exercises, called a kata, and pushed my Swift 2.2 code to GitHub. The code shows how to apply the Don’t Repeat Yourself (DRY) principle to two similar but different data processing programs. The end result of … Continue reading

Posted in Swift | Tagged , | 1 Comment

Creating an iOS Wizard UI in Swift

I published a reusable framework, written in Swift, for implementing the Wizard UI design pattern, named Wizardry. It simplifies creating a user interface composed of multiple view controllers that enables the user to complete a task. This is a particularly important UI design pattern for mobile apps … Continue reading

Posted in Swift | Tagged ,