SwiftUI Academy · Урок

Выделение переиспользуемых представлений

Разделяйте пользовательский интерфейс на составные вложенные представления.

Урок 1 из 413 шагов

«Выделение переиспользуемых представлений» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.

Зачем выделять представления?

Когда тело представления становится длинным и повторяющимся, его трудно читать. Выделение частей в отдельные представления делает код понятнее благодаря выделению. 🧩

Представление — это просто структура

Каждое представление SwiftUI — небольшая структура, соответствующая протоколу View. Создать новое повторно используемое представление так же просто, как написать ещё одну структуру.

struct AvatarView: View {
    var body: some View { Image("me") }
}

Вынесите фрагмент

Найдите самостоятельный блок в body и вынесите его в отдельное представление. Тело родительского элемента станет короче, а назначение будет сразу понятно.

Передавайте данные через свойства

Повторно используемое представление принимает входные данные в виде обычных сохранённых свойств. Родительский элемент передаёт значения при создании дочернего.

struct Badge: View {
    let count: Int
    var body: some View { Text("\(count)") }
}

Используйте его повсюду

После выделения одно и то же представление можно добавлять в разные места с разными данными. Одно определение — множество применений.

Badge(count: 3)
Badge(count: 12)

Значения по умолчанию помогают

Задайте для свойства значение по умолчанию, чтобы вызывающий код мог его не указывать. Обычные случаи останутся краткими, а особые по-прежнему можно настроить.

struct Tag: View {
    var color: Color = .blue
    var body: some View { Capsule().fill(color) }
}

Сохраняйте назначение представлений

Хорошее повторно используемое представление делает одно дело. Если оно выполняет несколько задач, снова разделите его на небольшие и понятные части.

Называйте представления по роли

Называйте представление по тому, что оно представляет, например ProfileHeader или PriceTag. Понятное имя точно подсказывает читателям, когда его использовать.

Предпросмотр для каждого представления

У каждого выделенного представления может быть собственный предпросмотр. Вы видите его отдельно и можете изменять, не запуская всё приложение.

#Preview {
    Badge(count: 5)
}

Меньше кода — быстрее изменения

Короткие тела проще и для компилятора, и для Вас. Выделение превращает огромные тела в аккуратную композицию именованных частей.

Составляйте, а не повторяйте

Вместо копирования интерфейса создавайте небольшие представления и составляйте их. Исправьте ошибку один раз — и все экраны, которые используют этот элемент, улучшатся.

Быстрая проверка

Быстрая проверка по выделению представлений.

Итоги: выносите и используйте повторно

Выносите повторяющиеся элементы интерфейса в небольшие целенаправленные структуры со свойствами для данных. Вы получите более короткие тела, понятные имена и интерфейс, который можно исправить в одном месте. 🧠

Можно начать бесплатно

Изучай Swift с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Выделение переиспользуемых представлений» бесплатный?

Да — полный текст урока «Выделение переиспользуемых представлений» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.

Чему я научусь в уроке «Выделение переиспользуемых представлений»?

Разделяйте пользовательский интерфейс на составные вложенные представления. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать SwiftUI Academy?

Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Выделение переиспользуемых представлений»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке SwiftUI Academy?

Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Выделение переиспользуемых представлений
  2. Пользовательские ViewModifiers
  3. ButtonStyle и LabelStyle
  4. ViewBuilder и обобщённые контейнеры
← Назад к SwiftUI Academy