Właściwości leniwe i obliczane
Właściwości leniwe i obliczane
Właściwości leniwe i obliczane to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 1 z 1. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 1 lekcji w sumie.
Wprowadzenie
Dzień dobry,
W poprzedniej lekcji poznali Państwo właściwości przechowywane. Można również definiować właściwości leniwe i obliczane.
W poprzedniej części właściwości przechowywane służyły do przechowywania danych.
Oprócz tego możemy definiować właściwości obliczane i leniwe.
Właściwości leniwe
Właściwości leniwe
Jeśli wartość właściwości nie musi być tworzona przed jej pierwszym użyciem, można zastosować leniwą właściwość przechowywaną.
Gdy wartość właściwości nie jest potrzebna aż do pierwszego użycia, możemy zastosować ją jako leniwą właściwość przechowywaną. Jeśli utworzenie obiektu jest kosztowne i nie jest on potrzebny od razu, jego utworzenie zostanie odroczone do pierwszego użycia, co pozwoli uniknąć niepotrzebnego zużycia zasobów i spadku wydajności. Aby właściwość przechowywana stała się leniwą właściwością przechowywaną, należy użyć modyfikatora lazy.
class Person {
lazy var name: String = "Name"
var age:Int = 0
private var _lastName:String = ""
func profile() -> String {
return "I'm \(self.name) and I'm \(self.age) years old."
}
}
var p = Person()
p.name = "Coddy"
p.age = 10
print(p.profile())
Właściwości obliczane
Właściwości obliczane
Właściwości obliczane pobierają dane wejściowe i zwracają nowy wynik. Na pierwszy rzut oka mogą przypominać działaniem funkcje. Jednak właściwości obliczanych używa się z notacją kropkową, tak jak zwykłych właściwości.
W poniższym przykładzie lepiej zrozumiemy różnicę między metodą a właściwością obliczaną.
Ciąg dalszy
Oprócz właściwości przechowywanych klasy, struktury i wyliczenia mogą definiować właściwości obliczane, które w rzeczywistości nie przechowują wartości.
Zamiast tego udostępniają getter i opcjonalny setter, aby pośrednio pobierać i ustawiać inne właściwości oraz wartości.
Przykład
Jeśli wewnątrz deklaracji właściwości zdefiniujemy get { }, właściwość stanie się właściwością obliczaną. Nie może mieć wartości początkowej, ponieważ przy każdym odwołaniu do właściwości będzie wywoływana zadeklarowana w niej funkcja get{}.
class Person {
lazy var name: String = "Name"
var age:Int = 0
private var _lastName:String = ""
var lastName:String{
get {
return _lastName
}
set {
_lastName = newValue
}
}
var profile:String{
get{
return "I'm \(self.name) and I'm \(self.age) years old."
}
}
}
var p = Person()
p.name = "Matt"
p.age = 40
/*
Normally, if it was a method, we would call it with the p.profile () method.
However, since it is propery, it was enough to call it with .profile.
*/
p.profileGratulacje
Gratulacje 🎉
W tej lekcji poznali Państwo właściwości leniwe i obliczane w Swift.
Do zobaczenia w następnej lekcji.

Często zadawane pytania
Czy lekcja „Właściwości leniwe i obliczane” jest bezpłatna?
Tak — pełny tekst „Właściwości leniwe i obliczane” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 1 lekcji w sumie.
Co nauczysz się w „Właściwości leniwe i obliczane”?
Właściwości leniwe i obliczane Ćwiczysz Swift Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Swift Academy?
Nie wymagamy żadnego doświadczenia. Swift Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 1.
Ile czasu zajmuje lekcja „Właściwości leniwe i obliczane”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Swift Academy?
Tak. Każda lekcja Swift Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.