Swift interview preparation, with questions and answers, cheat sheets, examples...

Overview

Swift-Interview

Hello every one, in this repo I'm preparing for my swift thecnical question, so you'll find examples and frequently asked questions about :

Unwrapping optional

Classes & structures

Bounds vs. Frame

Error handling, do, try, catch

Concurrency and Threading

Filter, Map, Reduce

Observer & Notification Pattern

Delegate Protocol

Gesture Recognizer

Retain Cycle, Automatic Reference Counting, Memory Leak

and more will be added as soon as I learn, This repo is public so if It's helpfull don't foget to star and follow me.

You might also like...
AuroraEditor is a IDE built by the community, for the community, and written in Swift for the best native performance and feel for macOS.
AuroraEditor is a IDE built by the community, for the community, and written in Swift for the best native performance and feel for macOS.

AuroraEditor AuroraEditor is a IDE built by the community, for the community, and written in Swift for the best native performance and feel for macOS.

A Swift package for encoding and decoding Swift Symbol Graph files.
A Swift package for encoding and decoding Swift Symbol Graph files.

SymbolKit The specification and reference model for the Symbol Graph File Format. A Symbol Graph models a module, also known in various programming la

WebDomHandling - A Swift Package for handling JavaScript code between WebKit and Swift implemented by WebKit

WebDomHandling A Swift Package for handling JavaScript code between WebKit and S

A Swift SPM framework for running and managing Lua code from Swift

LuaKit A Swift Package for running and managing Lua code from Swift. Documentation For documentation, add this package as Swift Package Dependency, an

BioViewer - Protein (.pdb, .cif and .fasta) viewer for iPhone, iPad and Mac, using SwiftUI + SceneKit
BioViewer - Protein (.pdb, .cif and .fasta) viewer for iPhone, iPad and Mac, using SwiftUI + SceneKit

BioViewer - Protein (.pdb, .cif and .fasta) viewer for iPhone, iPad and Mac, using SwiftUI + SceneKit

Custom MacBook login screen and pam modules using multipeer connectivity and usb hardware checks with iOS app for sign in.

Custom MacBook login screen and pam modules using multipeer connectivity and usb hardware checks with iOS app for sign in.

A simple, reliable and scalable delivery API for transactional push notifications for websites and applications
A simple, reliable and scalable delivery API for transactional push notifications for websites and applications

Catapush is a simple, reliable and scalable delivery API for transactional push notifications for websites and applications. Ideal for sending data-dr

Kotlin Multiplatform sample with SwiftUI and Compose (Desktop and Android) clients. Heavily inspired by Wordle game.
Kotlin Multiplatform sample with SwiftUI and Compose (Desktop and Android) clients. Heavily inspired by Wordle game.

WordMasterKMP Kotlin Multiplatform sample heavily inspired by Wordle game and also Word Master and wordle-solver samples. The main game logic/state is

Joplin - an open source note taking and to-do application with synchronization capabilities for Windows, macOS, Linux, Android and iOS. Forum: https://discourse.joplinapp.org/
Joplin - an open source note taking and to-do application with synchronization capabilities for Windows, macOS, Linux, Android and iOS. Forum: https://discourse.joplinapp.org/

Joplin® is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are sea

Comments
  • Proposals for interview questions

    Proposals for interview questions

    Bounds vs. Frame

    • When the bounds origin is not equal to (0, 0)? Which UI elements in standard library deal with the bounds origin? Check out this answer on stackoverflow for reference.

    Classes & structures

    • Where are stored instances of classes and structures (heap, stack)?
    • What is copy-on-write, copy-on-assignment?
    • What are other examples of reference types (besides classes) and value types (besides structures)?

    Concurrency and Threading

    • Can we create more threads than amount of cores on the device?
    • What are .sync, .async and the difference between them?
    • What is the difference between threads and queues?
    • How many default queues we have, which of them are serial, which of them are concurrent?
    • Common problems of concurrency (race condition, priority inversion, deadlock, thread explosion)?
    • Synchronization Primitives (I think it is important to know at least NSLock, NSRecursiveLock, Dispatch Semaphores, using queues, Barrier)
    • How to create custom GCD queue?

    Unwrapping optional

    • consider adding some info about what optional is in the first place
    • for guard let topic your example is wrong, there is no guard let statement at all
    • there is another one way of unwrapping optional - nil coalescing operator
    • consider adding info about implicitly unwrapped optionals
    opened by ruslangazizov 0
Owner
JoJo
Ready to do anything to learn everything about mobile app development
JoJo
FrolovSowingo - IOS DEV Interview With Swift

Sowingo Technical Interview How to Install? 1) Before downloading the project pl

Mikhail Frolov 0 Jan 3, 2022
Underdog Devs Technical Interview Prep

Underdog Devs Technical Interview Prep The purpose of this repo is to provide a structured approach to preparing for entry-level software developer in

Dan Morse 9 Jun 9, 2022
It can help you to prepare yourself for interview 🚀

Note I will keep updating the content table as I am going through, keep connected to stay updated ! Contribution You can contribute here as well, crea

Mohammad Yasir 4 Mar 21, 2022
Take home assignment for an iOS developer role interview process.

Cocktails My solution to a take home assignment I was given as a step of an interview process for an iOS developer role. The task I was asked to write

Johan Forsell 14 Dec 31, 2022
All my React Native examples

ReactNativeExamples All my React Native examples and experiements can be found here. This repo is divided into two sub folders, Instructions git clone

Joseph Khan 93 Oct 2, 2022
React Native utility library around image and video files for getting metadata like MIME type, timestamp, duration, and dimensions. Works on iOS and Android using Java and Obj-C, instead of Node 🚀.

Qeepsake React Native File Utils Extracts information from image and video files including MIME type, duration (video), dimensions, and timestamp. The

Qeepsake 12 Oct 19, 2022
LinkedLog is a Xcode plugin that includes a Xcode PCH header file template that adds the macros `LLog` and `LLogF` and parses their output to link from the console to the corresponding file and line.

LinkedLog Xcode Plugin LinkedLog is a Xcode plugin that includes a Xcode PCH file template that adds the macros LLog and LLogF. The LLog macro will wo

Julian F. Weinert 22 Nov 14, 2022
KnockToReact is an iOS library written in Swift and Objective-C that brings an exclusive feature to interact with users just by receiving and recognizing "knocks" in the device.

KnockToReact is an iOS library written in Swift and Objective-C that brings an exclusive feature to interact with users just by receiving and recognizing "knocks" in the device.

Matheus Cavalca 25 Feb 10, 2022
XCSnippetsApp - macOS application to explore code snippets from the Swift and iOS community, view and edit the snippets before adding them conveniently to Xcode

XCSnippetsApp macOS application to explore code snippets from the Swift and iOS community, view and edit the snippets before adding them conveniently

Marco Eidinger 119 Dec 27, 2022
A Swift package that provides convenient Lorem Ipsum text, images, colors and other placeholders for rapidly prototyping, building and testing your iOS applications.

Lorem Introducing Lorem, a placeholder generator library for iOS to help you rapidly prototype, build and test your iOS applications. By leveraging Sw

Thirdfort Limited 10 Dec 5, 2022