Debugging Out of Memory Issues: Catching Layout Feedback Loop with the Runtime Magic
Let’s imagine this scenario: you’ve got a successful app with a great number of daily users and 100% crash-free rate. You are happy and your life is amazing. But at some point you start seeing negative reviews coming to the App...
Implementing a Heap Based Priority Queue Using Swift
There is a wealth of problems in computer science where using a priority queue as your underlying data structure can greatly improve the time complexity of your algorithm. One example is Dijkstra’s Shortest Path Algorithm, where...
Avoiding Massive View Controller using Containment & Child View Controller
View Controller is the component that provides basic building block that we use as a foundation to build application in iOS development. In Apple MVC world, it sits as a middle man between the View and Model, acting as an...
Building an Interactive Voice App Using Custom Siri Shortcuts in iOS 12
Siri Shortcut is a new API that Apple introduced in iOS 12 built on top of SiriKit framework. It provides ways for developer to create custom shortcut to the activities that the user often used within the app. User invokes the...
Function Naming in Swift
In this article, we will face a question that we should always ask ourselves when writing a function: How should I name this function? Although this question looks simple, getting it answered properly determines a crucial aspect...
Advanced Unit Testing in Swift Using Swinject, Quick and Nimble
Do you want to build a car (Testable Architecture) that can run fast (less compile time), save petrol (repeated code) and can be easily learnt (readable) & driven (picked up) by any licensed driver? Then you have come to the...
How to Use Xcode Instrument to Optimize Your Swift Code
I still run across curmudgeons who flat out reject techniques like object-oriented programming (especially inheritance and polymorphism), protocols and protocol-oriented programming (especially composition), generics, and...
Dividing and Conquering Your Xcode Projects with Targets
In this tutorial, I’ll show you how to leverage Xcode targets to control the massive complexity involved in building iOS (and macOS, watchOS, and tvOS) apps. A lot of time can be saved when developers realize that not...
Realistic Rendering of 3D Photogrammetry Model in ARKit
In this tutorial, I will go through the entire process of importing a 3D photogrammetry model into ARKit, and make it look as realistic as possible, using the tools that ARKit and SceneKit provide. The finished product:...
Creating an Interactive Dominoes Game Using ARKit and Swift
In the following tutorial, I will show you how to make a fun Dominoes game using Swift and ARKit. This is what we’ll be making: Prerequisites This is an intermediate tutorial and requires you to have a good understanding of Swift...