This article intends to give the testable start-off point for ios-devs trying to ship their very first app to App Store.

How : I have used MVVM for structuring the code paired with unit tests written via XCTest.

High Level Design Code:

“HLD”
  1. HomeViewController : Class consisting of UI part of the app.


Standard LeetCode problems with solutions written in Swift using Dynamic Programming.

4. Unique Paths : https://leetcode.com/problems/unique-paths/

“Unique Paths”

5. Best Time to Buy and Sell Stock : https://leetcode.com/problems/best-time-to-buy-and-sell-stock/


Part of Quick ramp up Data Structure series to understand standard operations implemented using Swift.

45. Letter Combinations of a Phone Number : https://leetcode.com/problems/letter-combinations-of-a-phone-number/

“Letter Combinations of a Phone Number”

46. Check If Two String Arrays are Equivalent : https://leetcode.com/problems/check-if-two-string-arrays-are-equivalent/


Part of series covering Swift Implementations for standard leetCode design problems.

Do check out Part-1, Part -2, Part-3, Part-4 before proceeding further.

8. Design Parking System : https://leetcode.com/problems/design-parking-system/

“Parking System”

9. Design Browser History : https://leetcode.com/problems/design-browser-history/


Part of Quick ramp up Data Structure series to understand standard operations implemented using Swift.

18. Reverse Only Letters : https://leetcode.com/problems/reverse-only-letters/

“Reverse only Letters”

19. Count the Number of Consistent Strings : https://leetcode.com/problems/count-the-number-of-consistent-strings/


Series aiming to cover as many Q&A’s as possible from iOS interview perspective.

Q26. Higher order functions in swift?

Higher order functions are functions that takes another function/closure as argument and returns it

1. map


Part of Quick ramp up Data Structure series to understand standard operations implemented using Swift.

45. Final Prices With a Special Discount in a Shop: https://leetcode.com/problems/final-prices-with-a-special-discount-in-a-shop/

“Final Prices With a Special Discount in a Shop”

46. Richest Customer Wealth: https://leetcode.com/problems/richest-customer-wealth/


Series aiming to cover as many Q&A’s as possible from iOS interview perspective.

“iOS Interview Preparation Series”

Q1. What is type-safety in swift?

It means you need to be clear with type of value you want, If its String you can not pass Int by mistake, Swift performs type check at compilation and flags if there is any error.

Q2 : UIButton class Hierarchy?

NSObject → UIResponder → UIView → UIControl → UIButton

Q3. Super class of UIViewController and UIWindow ?

UIResponder → UIViewController

UIView → UIWindow

Q4. List all access specifiers in swift?


Part of series covering Swift Implementations for standard leetCode design problems.

Do check out Part-1, Part -2, Part-3 before proceeding further.

7. Design Deque Using Circular Array : https://leetcode.com/problems/design-circular-deque/

“Design Deque Using Circular Array Part -1”

Covers XCode 12 arm64 arch issue on simulator and with third party libraries added via cocoapods.

Apple Silicon :

Apple has come up with its own ARM instruction set based processor M1 aka “Apple Silicon” same used as in iPhones, instead of the intel’s x86–64 instructions based processor used in existing Macs and Windows.

Arm64 Simulator Issue on Xcode 12:

When I tried building for simulator on Xcode 12.2, I encountered compilation error :

It seems obvious as arm64…

Rahul Goel

Computer Science Enthusiast | 8+ Year of Software Evolution | @Groupon, Paytm, Myntra-Jabong https://www.linkedin.com/in/rahul-goel-28735154/

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store