Тех собес на middle-senior IOS Developer в ****

Доступно с премиум-подпиской

Оформите премиум-подписку, чтобы получить доступ к:

  • Фильтрации по компаниям
  • Названиям компаний в интервью
  • Видеозаписям собеседований в категории IOS Developer

Посмотреть видео в категории

(2024-07-27)

— Технические вопросы:

1. С какими архитектурными подходами и паттернами вы сталкивались? Я вижу, вы упомянули MVVM. 2. Вы использовали MVVM без ReactiveX на всех проектах? 3. Сталкивались ли вы с SwiftUI? Делали ли на нем какие-то небольшие подпроекты? 4. Какие порождающие и поведенческие паттерны вы чаще всего используете? 5. Был ли у вас опыт настройки CI/CD? Например, доработка pipeline или что-то подобное? 6. Сталкивались ли вы с автотестами? Может быть, писали юнит-тесты или UI-тесты?нит-тестыилиUI-тесты`?

— Задача 1: Что выведет программа и почему?

import UIKit
var names = Set()names.insert(“Boris”)names.insert(“Andrey”)names.insert(“Boris”)names.insert(“Arthur”)names.insert(“Boris”)print(names.count)

— Задача 2: Что выведет программа и почему?

    import UIKit

class Resolution {    var width = 1920    var height = 1080}

var hd = Resolution()var cinema = hdcinema.width = 1800print(hd.width)

— Задача 3: Что выведет программа и почему?

import UIKit

let items = [-2, 3, 1, -4, -6, 5]let result = items.sorted().filter{ $0 > 0 }.map{ String($0) }.reduce(“”){ $1 + $0 }print(result)

— Задача 4: Что выведет программа и почему?

   import UIKit

func addScore(_ point: Int) -> Int {    var score = 11    let calculate = { $0 + score }    score = calculate(point)    return calculate(score)}
print (addScore(10))
 

— Задача 5: Что выведет программа и почему?

    import UIKit

class A {    deinit {        print(“A”)    }}
class B {    let a = A()
text📋deinit {
    print("B")
}

}
class C: A {    let b = B()
text📋deinit {
    print("C")
}

}
var c: C? = C()c = nil

— Задача 6: Что выведет программа и почему?

import UIKit

class A {    var bReference: B? = nil
text📋deinit {
    print("A deinitialized")
}

}
class B {    var aReference = A()
text📋deinit {
    print("B deinitialized")
}

}

var b: B? = B()b?.aReference.bReference = bb = nil

— Задача 6: Что выведет программа и почему?

import UIKit

func dispatchPrint() {    print(“1”)
text📋DispatchQueue.main.sync {
    print("2")
    
    DispatchQueue.main.async {
        print("3")
    }
    
    print("4")
}

print("5")

}
let queue = DispatchQueue(label: “Queue”, qos: .userInteractive, attributes: [], autoreleaseFrequency: .never, target: nil)

queue.async {    dispatchPrint()}

— Задача 6: Что выведет программа и почему?

import UIKit
import Foundation
import PlaygroundSupport

let queue = DispatchQueue.global()
var employees = [“Bill”, “Bob”, “Joe”]
queue.async {    let count = employees.count    for index in 0 ..< count {        print(“(employees[index])”)        Thread.sleep(forTimeInterval: 1)    }}

queue.async {    Thread.sleep(forTimeInterval: 0.5)    print(“remove”)    employees.remove(at: 0)}

— Задача 6: Напишите функцию, которая должна сравнивать две строки на совпадение набора символов.

import UIKit
import Foundation

dog dgo -> truedog dfo -> falsedoog odog -> truedoog dog -> false