и посмотреть медиа
Swift | Вопросы собесов
и посмотреть медиа
Вопросы для собеседований по Swift, тесты и задачи для iOS-разработчиков в Telegram.
Вопросы для собеседований по Swift, тесты и задачи для iOS-разработчиков в Telegram.
AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.
Канал посвящен подготовке к собеседованиям по языку Swift. Здесь собраны актуальные вопросы, тесты, практические задачи и информация о вакансиях. Идеально для начинающих и опытных iOS-разработчиков, желающих освежить знания и успешно пройти интервью.
🤔 Что должны реализовывать переменные содержащиеся в протоколе? В Swift переменные (свойства), объявленные в протоколе, должны указывать: 🟠Только для чтения (`get`) Если свойство объявлено как { get }, класс или структура, реализующая протокол, должна предоставить как минимум геттер protocol Animal { var name: String { get } // Только чтение } struct Dog: Animal { let name = "Барсик" // Реализуем только get } let dog = Dog() print(dog.name) // "Барсик" Можно также использовать вычисляемое свойство: struct Cat: Animal { var name: String { return "Мурзик" } } 🟠Для чтения и записи (`get set`) Если свойство { get set }, класс или структура обязательно должны предоставить и get, и set. protocol Vehicle { var speed: Int { get set } // Чтение и запись } class Car: Vehicle { var speed: Int = 100 // Реализуем и get, и set } let car = Car() car.speed = 120 // Можно изменить значение print(car.speed) // 120 Вычисляемое свойство тоже подойдёт, если оно имеет get и set: class Bike: Vehicle { private var internalSpeed = 50 var speed: Int { get { return internalSpeed } set { internalSpeed = newValue } } } 🟠Статические свойства (`static`) Если свойство должно быть общим для всех экземпляров (не индивидуальным), то оно объявляется static. protocol Config { static var appVersion: String { get } } struct AppSettings: Config { static let appVersion = "1.0.0" } print(AppSettings.appVersion) // "1.0.0" Класс может использовать class var, если свойство можно переопределять в подклассах: class AppInfo: Config { class var appVersion: String { return "2.0.0" } } Ставь 👍 и забирай 📚 Базу знаний
Открыть канал и посмотреть медиаТолько зарегистрированные пользователи могут делиться своим мнением.
Станьте первым, кто поделится своим впечатлением об этом ресурсе!