Какие особенности Objective-C могут показаться необычными для разработчика, использующего другие языки программирования?
Для разработчика, привыкшего к другим языкам, в Objective-C могут показаться необычными следующие особенности:
Читать ответПодготовка к интервью
147 вопросов по Objective-C с технических собеседований
Что проверяют на интервью
На странице собраны вопросы по Objective-C — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: mobile, ios, performance.
Каталог
Для разработчика, привыкшего к другим языкам, в Objective-C могут показаться необычными следующие особенности:
Читать ответКласс, помеченный атрибутом @objc, становится доступным из Objective-C кода. Это обеспечивает интероперабельность между Swift и Objective-C.
Читать ответДа, в некоторых проектах я работал с кодовой базой, где одновременно использовались Swift и Objective-C. Обычно это происходит при постепенном переходе с Objective-C на Swift или при интеграции новых модулей.
Читать ответSwift Package Manager (SPM) изначально ориентирован на работу с кодом на Swift и C/C++.
Читать ответВ Objective-C функция alloc используется для выделения памяти под новый объект класса. Она создает экземпляр класса, выделяя необходимую память, но не инициализирует его — для этого обычно вызывается метод init.
Читать ответNSInteger — это примитивный тип данных (typedef для int или long в зависимости от архитектуры), используемый для хранения целочисленных значений. Он не является объектом и работает на уровне стека.
Читать ответObjective-C — это объектно-ориентированный язык программирования, который долгое время был основным для разработки iOS и macOS приложений. Он основан на C и добавляет динамическую систему сообщений, похожую на Smalltalk.
Читать ответВ Objective-C прямой доступ к переменным экземпляра класса (instance variables) возможен, но не всегда безопасен, особенно если переменная не предназначена для внешнего использования.
Читать ответВ Objective-C и Swift используются разные подходы к управлению памятью, хотя оба языка поддерживают автоматическое управление памятью.
Читать ответUIKit, жизненный цикл UIViewController Точные frame становятся доступны в методе viewDidLayoutSubviews К этому моменту завершён автоматический расчёт компоновки и ограничений В viewDidLoad размеры ещё НЕ…
Читать ответЧем отличаются frame и bounds Оба свойства относятся к UIView в iOS (UIKit) frame определяет положение и размер представления в системе координат его супер-вью bounds задаёт размер и положение внутренней области…
Читать ответЧем отличаются weak и unowned в Swift и в каких случаях выбирают unowned? weak — ссылка, которая при уничтожении объекта может стать nil; поэтому она всегда Optional unowned — слабая ссылка без Optional,…
Читать ответ