Предикаты и описатели сортировки
Фильтруйте и упорядочивайте полученные результаты.
«Предикаты и описатели сортировки» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Shaping Your Results
As data grows you rarely want every row. Predicates and sort descriptors let you fetch just the right slice.
What a Predicate Is
An NSPredicate is a rule that decides which records match, written in a compact query-like format string.
NSPredicate(format: "isDone == true")Comparing Values
Use operators like ==, >, and < in the format string to match numbers, dates, and other fields.
NSPredicate(format: "priority > 2")Safe Arguments
Insert dynamic values with %@ placeholders instead of string-building, which is safer and clearer.
NSPredicate(format: "title == %@", searchText)Text Matching
Match partial text with CONTAINS, and add [c] to ignore case for friendly search.
NSPredicate(format: "title CONTAINS[c] %@", query)Combining Conditions
Join rules with AND and OR to express more specific filters in one predicate.
NSPredicate(format: "isDone == false AND priority > 1")What a Sort Descriptor Is
A SortDescriptor tells Core Data which attribute orders the rows, and in which direction.
SortDescriptor(\.title, order: .forward)Multiple Sort Keys
Pass an array of descriptors to break ties, like sorting by priority first, then by name.
[SortDescriptor(\.priority), SortDescriptor(\.title)]Using Them in @FetchRequest
Combine both in a @FetchRequest to fetch a filtered, ordered set right inside your view.
@FetchRequest(sortDescriptors: [SortDescriptor(\.title)], predicate: NSPredicate(format: "isDone == false")) var tasks: FetchedResults<Task>Filtering Beats Looping
Letting the store filter and sort is faster than fetching everything and trimming it in Swift. ⚡
Update Filters Live
You can rebuild a predicate from a search field and reassign it, so results refine as the user types.
Quick Check
You can now filter and order data. Quick check on the tools.
Recap
You used predicates to filter records and sort descriptors to order them, fetching exactly the data each screen needs. ✨
Часто задаваемые вопросы
Урок «Предикаты и описатели сортировки» бесплатный?
Да — полный текст урока «Предикаты и описатели сортировки» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.
Чему я научусь в уроке «Предикаты и описатели сортировки»?
Фильтруйте и упорядочивайте полученные результаты. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SwiftUI Academy?
Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Предикаты и описатели сортировки»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SwiftUI Academy?
Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Стек Core Data
- Получение данных с @FetchRequest
- Создание и сохранение сущностей
- Предикаты и описатели сортировки