It’s a New Year!
Perhaps you are looking for a new job, or are thinking about upgrading your developer self.
Why not use this quick list of Interview Questions and Answers?
Hand-picked and selected for 2021, these are the terms and questions that you need to know for your iOS dev role!
app ID / bundle ID App ID identifies one or more Apps from a development team. Bundle ID uniquely identifies each App. AppID is local, BundleID is on Apple’s side.
Access control open, public, internal, fileprivate and private.
App states Not running, inactive, active, background and suspended. Not running — not launched, inactive is foreground but not receiving events (transitioning states), active is normal, background is executing code, suspended is in the background not executing code. …
Difficulty: Beginner | Easy | Normal | Challenging
CGFloat: A floating point number used for graphics
CGPoint: A C struct containing two CGFloats
CGRect: A C struct with an origin and a size (both of which are representated as a CGSize). Can be initialised with CGRect(origin:, size:)
or CGRect(x: 0, y: , width: , height: )
. The origin is represented as a CGPoint.
CGSize: A C struct with a width and height.
The origin of any particular view is in the upper-left hand…
This article is going to show you how to make a snowy App using Swift.
It is going to look like the following:
Protocol extensions to the rescue!
This article contains a real example for you that is used in production Apps. Don’t say I don’t spoil you (because I don’t).
Difficulty: Beginner | Easy | Normal | Challenging
Extensions: Extensions add new functionality to a class, struct, enum or protocol
When you use a function, or initialise a class you might well use default arguments.
This is incredibly useful, and I’ve used just such a feature when I’ve created a Network Manager, and this gives a rather handy example for the rest of this article. …
Difficulty: Beginner | Easy | Normal | Challenging
This article has been developed using Xcode 12.2, and Swift 5.3
Requires iOS13 and above for the implementation used to lock the view. The Repo is avaliable for download.
* You will be expected to be aware how to make a Single View Application in Swift.
* I have taken a programmatic approach to the interface, although this is unlikely to trip you up the guide is here
* This article uses Behaviour View Controllers
* This article uses my Network Library implementation
Architecture: The base structure of a software development project UIViewController: A view controller is an intermediary between the views it manages and the data of your…
Difficulty: Beginner | Easy | Normal | Challenging
This article has been developed using Xcode 12.2, and Swift 5.3
Tuple: A way in Swift to allow you to store multiple values in a single variable Zip: Creates a sequence of pairs created from two underlying sequences
You may have needed to join two different Arrays into one (same ordered) collection like in the LeetCode 211 constant.
This article explains what is going on! …
There are number of prefix sum problems on LeetCode, and they tend to either be Medium or Hard problems. Is there a way this can be reasonably explained and coded?
Let us have a go!
Given aan array of Int nums
, and an integer k
calculate the number of continuous subarrays whose sum equals the integer k
.
Continuous means that there cannot be a gap in the subarray.
It is possible to create a memo using a dictionary to make our answer as efficient as possible (since a dictionary can be accessed in O(n)).
The interaction between user and App is extremely important. This extends from the look and feel of the application right to the touch gestures that make the user’s interactions delightful.
In order to make the application respond to these gestures you will need UIGestureRecognizer, and this tutorial should help you out in doing so.
Difficulty: Beginner | Easy | Normal | Challenging
UIGestureRecogniser: The base class for gesture recognisers, which include tap and pinch recognisers
This isn’t going to be pretty. You’re going to see some squares moving around an App according to whether the user drags, drops, pinches or rotates. Thomas Was Alone doesn’t have anything on this stuff! …
This is a project that will help us to create a list of names as an iOS application, without the use of Storyboards. This article has been developed using Xcode 12.2, and Swift 5.3
If you would rather have a video tutorial of this please do see the following rather natty embedded video: if not you can read on!
Use Xcode’s menu to create a new project, making sure to choose Swift as the language and using UIKit. Here is a detailed guide covering the same ground
Select Main.storyboard and delete it from the project inspector Remove Main from the Main Interface part of the general tab (this can be selected by selecting the project name at the top-left of the Project Inspector) and then select and delete Main there. …
This article is about the 4 challenges in the LeetCode Weekly Contest 217. That is it!
1672 Richest Customer Wealth
1673 Find the Most Competitive Subsequence
1674 Minimum Moves to Mkae Array Complementary
1675 Minimize Deviation in Array
The solutions may assume some knowledge of Big O notation
Each problem will be approached in turn, with a solution and also with articles explaining the tools, techniques and theory that will help you solve these problems yourself.
Let us get started!
Accounts are given as a two-dimensional grid accounts[i][j]
where the row represents the customer: