Структура файла приложения SwiftUI
Разберитесь с @main, App, WindowGroup и ContentView.
«Структура файла приложения SwiftUI» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
The App File
В каждом проекте SwiftUI есть файл, названный в честь вашего приложения, например MyFirstApp.swift. Этот файл приложения является настоящей точкой входа, с которой начинается вся работа вашего приложения. 📱
The @main Marker
Атрибут @main указывает Swift, где именно начинается ваша программа. iOS запускает ваше приложение, выполняя тип, отмеченный этим атрибутом.
@main
struct MyFirstApp: App {
}Conforming to App
Your main struct conforms to the App protocol. This is the SwiftUI blueprint for an application, describing what scenes it shows.
The body Property
Inside the App struct, a body property describes your app's scenes. SwiftUI reads it to know what to display when the app launches.
var body: some Scene {
WindowGroup {
ContentView()
}
}Scenes, Not Views
The app's body returns a Scene, not a View. A scene is a container for a window or screen that holds your actual views inside it.
WindowGroup
WindowGroup is the most common scene. It manages your app's main window and, on iPhone, simply fills the whole screen.
Your Root View
Inside WindowGroup you place your root view, usually ContentView(). It is the first screen the user sees when the app opens.
ContentView Lives Apart
ContentView sits in its own file, separate from the app file. Keeping the entry point and the UI apart keeps your project tidy and clear.
How It Flows
The chain is simple: @main starts the App, the App shows a WindowGroup, and the WindowGroup displays your ContentView. ✨
One @main Only
An app can have just one @main entry point. The template already provides it, so you rarely add or change this part yourself.
Where You Work
You will spend most of your time editing views like ContentView, not the app file. The app file mostly just wires everything together.
Quick Check
What is the job of the WindowGroup scene in the app file?
Recap
You learned the chain: @main on the App struct returns a WindowGroup scene that shows ContentView. That is how a SwiftUI app boots up. 🧩
Часто задаваемые вопросы
Урок «Структура файла приложения SwiftUI» бесплатный?
Да — полный текст урока «Структура файла приложения SwiftUI» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.
Чему я научусь в уроке «Структура файла приложения SwiftUI»?
Разберитесь с @main, App, WindowGroup и ContentView. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SwiftUI Academy?
Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Структура файла приложения SwiftUI»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SwiftUI Academy?
Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Установка Xcode и создание проекта
- Структура файла приложения SwiftUI
- Холст интерактивного предпросмотра
- Запуск в симуляторе и на устройстве