- Рассказать про принципы SOLID, YAGNI, KISS. Вот можно посмотреть так же последняя глава в этой книги отлично раскрывает эти принципы.
- Рассказать про принципы ООП: наследование, инкапсуляция, полиморфизм и абстракция.
- В чем разница между композицией и наследованием? Хорошая статья для изучения тут, пример с кодом тут и еще вот тут.
- Разница между
mock
иstub
для тестирования, изучить можно вот тут. - Проблемы ООП и зачем нам нужно POP, почитать тут
- DI, IoC и DIP, спасибо Jonfir'u за чтиво
- Рассказать про виды памяти.
- Разница между
heap
иstack
. - Разница между
value
иreference
типами. - Когда использовать
класс
для работы? Когда использоватьструктуру
для работы? - Как положить
value
типы в хип? - Как положить
reference
типы на стек? - Что такое
Экзистенциальный контейнер
? - Что такое
Inout аргумент
? - Вот здесь можно про всё, что выше, почитать.
- Что такое Copy on Write?
- Что такое
indirect enum
? - Разница между
== vs ===
? - Вопрос про отложенную деаллокацию, вот почитать
- Разница между
- Что такое
ARC
? - Что такое
MRC
? - Разница между
ARC и MRC
? - Разница между
ARC и GC
? - Что такое
retain cycle
? - На каком этапе
расставляются ссылки
в ARC? - Разница между
weak
иunowned
? - Что такое
side table
? - Как устроена и когда появляется
side table
? - Счетчик ссылок и жизненный цикл объекта, ссылка
- Что такое
autoreleasepool
?
- В чем разница sync и async?
- Потокобезопасность со static
- Что такое
generics
и для чего они нужны? - Отличие
отличие static методов от class
функций. - Что такое
responder chain
? - Рассказать про замыкания