Skip to content

Личный список того что я готовил, повторял, освежал, узнавал в процессе подготовки к интервью.

Notifications You must be signed in to change notification settings

alex-ost/iOS-Interview-Preparing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 

Repository files navigation

Preparation for the interview of the iOS developer

Личный список того что я готовил, повторял, освежал, узнавал в процессе подготовки к интервью. В каждом топике виден канал на youtube, можно еще там посмотреть интересные видео. Но вот список лично мне интересных каналов в случайном порядке:

Читаем:

  1. Читаем вопросы и разбираем что не знаем: https://dou.ua/lenta/articles/interview-questions-ios-developer/
  2. SSL-pinning: https://medium.com/@grifer163/что-такое-безопасность-соединения-или-включите-ssl-pinning-в-вашем-мобильном-приложении-прямо-cea9de2b96b7
  3. В той же статье смотрим видео: https://vimeo.com/139918244
  4. Actors: https://www.avanderlee.com/swift/actors/
  5. Property Wrappers: https://www.swiftbysundell.com/articles/property-wrappers-in-swift/
  6. Futures/Promises: https://www.swiftbysundell.com/articles/under-the-hood-of-futures-and-promises-in-swift/

Смотрим основы:

  1. RSSchool, повторяем все основы, советую посмотреть даже то что знаете на скорости x1.5-x1.75, что бы освежить знания, ну кроме там Таблицы и Коллекшн вью, я пересмотрел всё. https://youtube.com/playlist?list=PLzLiprpVuH8dAC4CUxmxNTpDydO1lzN32
  2. Тут парень рассказывает структуру собеса, смотрим дерево технической части, разбираем что не знаем/забыли: https://youtu.be/zWqbzpJzPXA

Открытые собеседования и тд:

  1. Очень сильное публичное собеседование, разбираем ВСЕ что не знаем: https://youtu.be/z-27o6bJh8A
  2. Собеседование по многопоточности: https://youtu.be/ZDzLqQELe3s
  3. Публичное собеседование: https://youtu.be/ZIiwsgNpMo4
  4. Публичное собеседование: https://youtu.be/3Wu_G9bIxVw
  5. Каверзные вопросы и задачи с собеседований iOS: https://youtu.be/gRuE8aS8DHY
  6. GCD - Каверзные вопросы и задачи на iOS-Собеседование: https://youtu.be/uEeFqIUXJcE

Расширяем сознание:

  1. MUST HAVE: Swift Memory Layout / Сергей Турсунов: https://youtu.be/y4qM_6fCeTY
  2. MUST HAVE: { _ in ? } / Замыкания в ObjC и Swift: https://youtu.be/GVpduu6BUsE
  3. MUST HAVE: Асинхронный интерфейс: https://youtu.be/eX1jSktP_oo
  4. Good to know: Сложные вопросы по iOS и простые ответы: https://youtu.be/pWXgH-GbRSU
  5. Good to know: Крутим Runloop. Как устроена лента ВКонтакте: https://youtu.be/fXCfvYZIrrE
  6. Good to know: Александр Красиков — Аудиосессия в iOS: https://youtu.be/9xpW_nzH8aQ
  7. Good to know: Improve your knowledge of Swift!: https://youtube.com/playlist?list=PLdXMqVQnoFleH3GSuTUpr3Fjzp1JMy-je
  8. Nice to have: ObjC и никакого мошенничества: https://youtu.be/TniyEULwDjg

Диспетчеризация:

  1. MUST HAVE: Swift Method Dispatch: https://youtu.be/kolL8r7Tz2w
  2. Method Dispatch в Swift (и не только): https://youtu.be/KoCjIv0moEE

Всякое:

  1. Swift: Result Builders Introduction https://youtu.be/PKPTSsp0ZMQ
  2. Swift Result Builders deep dive for Swift 5.3: https://youtu.be/LKFVcc_uC60
  3. Основы многопоточности в iOS: https://youtu.be/JgUBBoRydoE
  4. async/await в Swift: https://youtu.be/F02-k1X_Rok
  5. Архитектура окна iOS приложения. Жизненный цикл ViewController: https://youtu.be/Jz_neQAfZaQ
  6. Custom Operators: https://youtu.be/wbIwhv98ALg
  7. Responder Chain: https://youtu.be/le7tzeqN908
  8. Responder Chain: https://youtu.be/i01OwhToIrk

Рекомендации:

  1. Принцип хорошего кода KISS: https://youtu.be/rix-fkrloq4
  2. Принцип хорошего кода DRY: https://youtu.be/NWemqNMCesQ
  3. Принцип хорошего кода YAGNI: https://youtu.be/Ot2eB07rjcI
  4. SOLID: S: https://youtu.be/O4uhPCEDzSo
  5. SOLID: O: https://youtu.be/x5OtQiKOG-Q
  6. SOLID: L: https://youtu.be/NqvwYcjrwdw
  7. SOLID: I: https://youtu.be/d9RJqf2o_Sw
  8. SOLID: D: https://youtu.be/Bw6RvCSsETI
  9. Еще SOLID: https://youtu.be/fWdBH0TkQtU
  10. Еще SOLID: https://youtu.be/A6wEkG4B38E

Архитектуры:

  1. Зачем: https://youtu.be/ibQIejHrkJQ
  2. Model and view: https://youtu.be/kxba_PnBWps
  3. MVC: https://youtu.be/h-7jJYX_ots
  4. Координаторы: https://youtu.be/Zs3g42sVY_k
  5. MVP: https://youtu.be/09rgtQUxmBo
  6. MVVM: https://youtu.be/4q8wUB9TaSg
  7. VIPER: https://youtu.be/46w-To-Aofk
  8. Clean Architecture: https://youtu.be/FK-Br0_d3Og

Паттерны:

  1. MUST HAVE: Шаблоны проектирования Swift, паттерны: https://www.youtube.com/playlist?list=PLDYxpD3lDWsxWls2_-mwOHLGdtrpqapVJ
  2. Repository к первому видео: https://github.com/artkirillov/DesignPatterns
  3. Абстрактная Фабрика: https://youtu.be/1mVONOCxfLg
  4. Фабричный метод: https://youtu.be/5UqUDR6_2cY
  5. Nice to have: Еще не много по паттернам: https://youtu.be/Dghn6sXJnPY

Алгоритмы:

  1. Гарвард. Быстрая сортировка: https://youtu.be/4s-aG6yGGLU
  2. Гарвард. Деревья: https://youtu.be/ujRnhGc1GNw
  3. Красно-черные деревья: https://youtu.be/n7Y2karbxF4
  4. Гарвард. Рекурсивные деревья: https://youtu.be/sj7pKOjdM4U
  5. Гарвард. Хеш-таблица: https://youtu.be/9g3xte3Lf_M
  6. Гарвард. Хеш-таблица, еще: https://youtu.be/rVr1y32fDI0
  7. Гарвард. Бинарный поиск: https://youtu.be/aFoaeA2tsVQ
  8. Hashmaps explained with Swift and Dictionaries: https://youtu.be/iBXkhiiIE80
  9. Hashable. Big O notation. https://youtu.be/0EW8hzrVenA

Помимо этого себе делал список того что нужно прочитать/освежить лично мне, он не упорядочен, не понятен, но возможно будет полезен:

  • Функциональное, ООП, декларативное, императивное, протокол ориентированное программирование.
  • Динамический и статический полиморфизм.
  • Чем отличаются статические языки от динамических?
  • Overcommit and non-over commit очереди.
  • Reference type and value type.
  • Testing, TDD, Mocks, Stubs,
  • Patterns.
  • SOLID и на практике. SOLID in swift
  • Heap, stack, memory management
  • Runtime and compile time in swift
  • Диспетчеризация в Swift
  • Generics, generic protocol, generic constraints
  • Retain cycles
  • Функции высшего порядка reduce, map, compactMap, flatMap, zip
  • Modifications of properties: final, open, public, private, fileprivate, internal, private(set)
  • Structure in memory and in heap.
  • Objective C memory management. Properties attributes.
  • QoS priority.
  • Diff DispatchQueue to OperationQueue
  • Category diff and extension in Objective-C
  • hitTest and UIResponder
  • Пул потоков
  • Optional what is? Optional chaining, how to unwrap optional, optional switch in swift
  • Three types of blocks in Objective-C: Malloc, Stack and Global
  • Жизненые циклы: UIApplication, UIViewController, UIView
  • Архитектуры: MVP, MVC, VIPER, Clean Swift, RIBs etc
  • Protocol, extension что можно, что нельзя
  • Objective-C: ivar, isa, NSObject, NSProxy, NSObjectProtolc
  • Opaque types in swift
  • Throws and rethrows
  • Objective c class extension in swift
  • Typealias, associated type
  • Inline, Inlibable
  • Infix operators
  • Property wrappers
  • Function builders
  • Bridging in swift
  • Tuples.
  • Nonmutating and mutating structures
  • Выравнивание в структурах данных? struct{int, bool} Зачем нужно выравнивание?
  • Algorithms, what is the big o - О.
  • Data collections in swift
  • Collision in hash map.
  • Live lock, deadlock, race condition, data race, threads explosion, and how to find and fix.
  • Multithreading: lock, queue, mutex, semaphore, barrier.
  • Background tasks in app.
  • URL Session: types of tasks, multipart from data, how to builds. GraphQL, protobuf. SOAP, WebDav.
  • Side table for weak since Swift 4.3(?)
  • OperationQueue: Underlying queue.
  • DispatchQueue: target queue.
  • CoreData, Realm. Context, stack core data. Multi context in CD, versioning in core data.
  • Instruments. Memory leaks, zombie objects, memory graph
  • Dynamic array in swift.

About

Личный список того что я готовил, повторял, освежал, узнавал в процессе подготовки к интервью.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published