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...
Useful Hints To Build A Perfect Design For iPhone Xs
Apple presents new gadgets every year, and each of this device deserves the attention. But when iPhone X was presented to the public, rules of app designing were changed. With iPhone Xs announcement this year, UI/UX designers had...
Continuous Integration and Continuous Delivery with Jenkins and Fastlane
Testing has been an essential part of most medium-to-large projects, hence, it is important that every code change to our main branches triggers a full execution of test suite, so as to ensure that the change we made does not...
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 4: 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,...