Junior — Middle
Czy możesz wyjaśnić, czym jest łatwa wygoda w języku Swift?
sobes.tech AI
Odpowiedź od AI
W Swift nie ma pojęcia "fácil convenience". Możliwe, że chodziło o "convenience initializer" — wygodny inicjalizator.
Convenience initializers to pomocnicze inicjalizatory, które upraszczają tworzenie obiektu, wywołując inne designated (główne) inicjalizatory w klasie. Są deklarowane słowem kluczowym convenience i nie mogą bezpośrednio inicjalizować wszystkich właściwości klasy, a jedynie wywoływać inne inicjalizatory.
Przykład:
class Person {
var name: String
var age: Int
// Główny inicjalizator
init(name: String, age: Int) {
self.name = name
self.age = age
}
// Convenience inicjalizator
convenience init(name: String) {
self.init(name: name, age: 0) // wywołuje główny inicjalizator
}
}
W ten sposób, convenience inicjalizatory pomagają tworzyć obiekty z różnymi zestawami parametrów, ponownie wykorzystując logikę inicjalizacji.