0Pricing
Swift Academy · Lekcja

Kontrola dostępu

Kontrola dostępu

Kontrola dostępu 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,

Kontrola dostępu ogranicza dostęp do części kodu z poziomu kodu w innych plikach źródłowych lub modułach.

Moduł: Moduł to jednostka dystrybucji kodu frameworka lub aplikacji.

Moduł zawiera kilka plików kodu źródłowego.

Plik źródłowy:

Plik źródłowy to pojedynczy plik kodu źródłowego w module.

Poziom dostępu

Jeśli poziom dostępu (AL, Access Level) typu zdefiniowano jako private, poziom dostępu wszystkich elementów należących do tego typu będzie private.

Ciąg dalszy

Modyfikator dostępu private, umieszczony przed zdefiniowaną zmienną, metodą itd., sprawia, że element jest dostępny wyłącznie w danym zakresie.

Celem modyfikatora dostępu fileprivate jest umożliwienie dostępu z poziomu innej klasy (class) lub rozszerzenia (extension) zdefiniowanych w tym samym pliku, także poza zakresem, w którym zdefiniowano zmienną.

Zwłaszcza gdy rozszerzenie jest zdefiniowane w tym samym pliku źródłowym, nie można uzyskać dostępu do obiektów zdefiniowanych jako private. W takiej sytuacji dobrym rozwiązaniem jest użycie fileprivate.

public

Modyfikator dostępu public zapewnia dostęp w całym module, ale przy korzystaniu z dwóch modułów może ograniczać dostęp w podklasach i zakresach.

Możliwe, że nie będzie można uzyskać dostępu do zmiennych i metod zdefiniowanych z użyciem modyfikatora public.

open

Klasa zdefiniowana jako public nie może być klasą bazową (superclass) w innym module, czyli nie można jej rozszerzać, a zawartych w niej metod nie można przesłaniać.

Potrzebujemy więc modyfikatora dostępu bardziej elastycznego niż public.

Krótko mówiąc, open można określić jako modyfikator dostępu „bardziej publiczny niż public”.

Ciąg dalszy

Jeśli korzystają Państwo z dwóch modułów i chcą uzyskać dostęp do zmiennych oraz metod jednego modułu z poziomu drugiego, rozwiązanie jest proste: na początku klasy ustawionej jako klasa bazowa należy umieścić modyfikator dostępu open.

Podobnie wystarczy zdefiniować metodę, którą chcą Państwo przesłonić.

internal

W typach innych niż enum, jeśli typ zdefiniowano jako public, elementy są automatycznie oznaczane jako internal. Jeśli jednak typ enum zdefiniowano jako public, jego elementy będą public.

public enum Direction { case North, South, East, West } 
//each case is also has public access level.

Tworzenie podklas

Tworzenie podklas

Możemy utworzyć podklasę dowolnej klasy. Wystarczy, że klasa jest dostępna w odpowiednim kontekście.

Podklasa nie może mieć wyższego poziomu dostępu niż jej klasa nadrzędna, ponieważ klasa nadrzędna obejmuje klasę podrzędną.

Przesłonięta metoda może mieć wyższy poziom dostępu niż przesłaniana metoda w klasie nadrzędnej.

public class ClassA {

//method private tanimlanmis
private func aPrivateMethod() {}

internal func anInternalMethod() {}

}

internal class ClassB: ClassA {

// The overridden method is defined internally. Access level has increased even more.
override internal func anInternalMethod() {}

}

Ciąg dalszy

Poziom dostępu stałych, zmiennych, właściwości i subskryptów

Stała, zmienna lub właściwość nie może mieć mniej restrykcyjnego poziomu dostępu niż typ, z którym jest powiązana. Właściwość public działa analogicznie do klasy public.

Gettery i settery stałych, zmiennych, właściwości oraz subskryptów również mają taki sam poziom dostępu jak typ, do którego należą, podobnie jak stałe i zmienne.

Gratulacje

Gratulacje 🎉

W tej lekcji poznali Państwo kontrolę dostępu w Swift.

Ukończyli Państwo kurs Swift dla początkujących.

Rozpocznijmy egzamin i zdobądźmy certyfikat. 🌟

Kontrola dostępu — ilustracja 10

Często zadawane pytania

Czy lekcja „Kontrola dostępu” jest bezpłatna?

Tak — pełny tekst „Kontrola dostępu” 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 „Kontrola dostępu”?

Kontrola dostępu Ć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 „Kontrola dostępu”?

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.

← Powrót do Swift Academy