この記事ではSwiftUIにおいて、エントリーポイントとなるプログラムの作成方法について説明します。
エントリーポイントとは何か?
エントリーポイントは、アプリケーションが起動するときに最初に実行される部分のことを指します。SwiftUIでは、@main属性を持つAppプロトコルに準拠した構造体がエントリーポイントとなります。
SwiftUIでのエントリーポイントの作成
SwiftUIでエントリーポイントを作成するには、以下のとおりプログラムを作成します。
- Appプロトコルの適用:
Appプロトコルに準拠した新しい構造体を作成します。これにより、アプリケーションの内容と振る舞いが提供できます - エントリーポイントの指定:
@main属性を作成した構造体に適用することで、アプリケーションのエントリーポイントが示されます。エントリーポイントはアプリケーションの起動を担当します - bodyプロパティの実装: 作成した構造体はAppプロトコルの要件であるbodyプロパティを実装します。このプロパティは、Sceneとして記述されたアプリケーションの内容を返します。
Sceneはアプリケーションのユーザーインターフェースを定義するビュー階層を含みます - Sceneの定義: App構造体は、アプリケーションの主要なウィンドウを表す
WindowGroupなどのSceneを定義します
以下に、これらの手順を実行した例を示します:
import SwiftUI
@main
struct samplecodeApp: App {
var body: some Scene {
WindowGroup {
Text("Hello, World")
}
}
}
サンプルプログラムの説明
上記のサンプルプログラムは、”Hello, World”と表示するだけのプログラムです、一つずつ解説していきます
import SwiftUI
モジュールやライブラリを使用するための宣言
@main
プログラムのエントリーポイントを示す属性
struct samplecodeApp: App
作成するsamplecodeApp構造体にAppプロトコルを適用させています
プロトコルとは構造や振る舞いが定められているもので、構造体に適用することでプロトコルに準拠していることを示すことができます。初めはエントリーポイントとなるプログラムにAppプロトコルを適用することを覚えておくだけで良いです
var body: some Scene
bodyプロパティがSceneに準拠した値を返します。今回のプログラムではWindowGroup以下の”Hello World”というテキストを表示するViewです
作成する構造体にAppプロトコルを適用させています
プロトコルとは構造や振る舞いが定められているもので、構造体に適用することでプロトコルに準拠していることを示すことができます。初めはエントリーポイントとなるプログラムにAppプロトコルを適用することを覚えておくだけで良いです
WindowGroup
WindowGroupに関しては筆者は上手に活用できていませんが、iPadOSやMacのアプリなど複数のウインドウを管理する際に活用できるようです。
まとめ
以上が、SwiftUIでエントリーポイントを作成する基本的な方法です。この方法を使用すると、アプリケーションの起動と初期表示を簡単に制御することができます。
SwiftUIのエントリーポイントは、アプリケーションの全体的な構造と振る舞いを定義するための重要な要素であり、アプリケーション開発における中心的な役割を果たします。この記事が、あなたのSwiftUIでのアプリケーション開発に役立つことを願っています。

