Pomocnicze funkcje walidacji modeli
Dodawanie wielokrotnego użytku walidacji bezpośrednio we współdzielonym kodzie
Pomocnicze funkcje walidacji modeli to bezpłatna lekcja Kotlin Multiplatform Academy na CoddyKit. To lekcja 4 z 4. 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 Kotlin Multiplatform Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Kotlin Multiplatform Academy zawiera 4 lekcji w sumie.
Modele mogą sprawdzać się same
Model powinien wiedzieć, jak wygląda poprawna wartość. Dodanie walidacji do współdzielonego kodu oznacza, że obie aplikacje stosują te same reguły.
Właściwość obliczana
Właściwość obliczana wyprowadza wartość z pól modelu. Jest obliczana przy każdym odczycie i nie przechowuje stanu.
data class User(val name: String) {
val isNamed: Boolean get() = name.isNotBlank()
}Udostępnij flagę isValid
Dodaj do modelu właściwość isValid, która połączy wszystkie reguły w jedną wartość logiczną, której obie aplikacje mogą zaufać.
val isValid: Boolean
get() = name.length in 2..30Dodaj metodę walidacji
Funkcja modelu może wykonać sprawdzenie i zwrócić wynik, utrzymując logikę tuż obok danych.
fun hasValidEmail(): Boolean =
email.contains("@")Zwracaj konkretne błędy
Zamiast zwykłej wartości logicznej zwracaj listę komunikatów, aby interfejs mógł dokładnie wskazać użytkownikowi, co należy poprawić.
fun errors(): List<String> =
if (name.isBlank()) listOf("Name required") else emptyList()Współużywaj między polami
Wydziel niewielki helper, aby kilka modeli mogło korzystać z tej samej reguły, na przykład wielokrotnie używanego sprawdzenia adresu e-mail lub długości.
fun String.isEmail(): Boolean = contains("@") && contains(".")Waliduj w commonMain
Umieść każdą regułę w commonMain, aby Android i iOS przeprowadzały identyczną walidację i aby formularze nigdy się nie różniły.
Chroń przy tworzeniu za pomocą init
Blok init z require może odrzucić nieprawidłowe dane w chwili budowania modelu, zatrzymując niepoprawne obiekty odpowiednio wcześnie.
init { require(name.isNotBlank()) { "Name required" } }Zachowaj czystość walidacji
Walidacja powinna tylko odczytywać pola i zwracać wyniki, nigdy dotykać interfejsu ani sieci. Czyste reguły pozostają przenośne i łatwe do testowania.
Łatwe testy jednostkowe
Ponieważ logika jest napisana w zwykłym Kotlinie, możesz przetestować ją raz w commonTest i zaufać jej na każdej platformie.
Dlaczego to ma znaczenie
Współdzielona walidacja oznacza, że regułę zmieniasz dokładnie w jednym miejscu, a zmiana natychmiast obowiązuje w obu aplikacjach. 🙂
Szybkie sprawdzenie
Gdzie powinna znajdować się wielokrotnie używana walidacja modelu?
Podsumowanie
Dodaj walidację jako właściwości obliczane, metody lub sprawdzenia init w commonMain, zachowaj jej czystość, a obie aplikacje będą stosować identyczne reguły.
Często zadawane pytania
Czy lekcja „Pomocnicze funkcje walidacji modeli” jest bezpłatna?
Tak — pełny tekst „Pomocnicze funkcje walidacji modeli” 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 Kotlin Multiplatform Academy, przejdź na CoddyKit PRO. Kurs Kotlin Multiplatform Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Pomocnicze funkcje walidacji modeli”?
Dodawanie wielokrotnego użytku walidacji bezpośrednio we współdzielonym kodzie Ćwiczysz Kotlin Multiplatform 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ąć Kotlin Multiplatform Academy?
Nie wymagamy żadnego doświadczenia. Kotlin Multiplatform 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 4 z 4.
Ile czasu zajmuje lekcja „Pomocnicze funkcje walidacji modeli”?
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 Kotlin Multiplatform Academy?
Tak. Każda lekcja Kotlin Multiplatform 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.
Wszystkie lekcje w tym kursie
- Klasy danych dla domeny
- Enumy i klasy sealed do obsługi stanu
- Bezpieczeństwo wartości null we współdzielonych modelach
- Pomocnicze funkcje walidacji modeli