Swift

SwiftUI入門:宣言型UIとXcode15で始める初心者ガイド

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
AI時代のキャリア構築

プログラミング学習、今日から動き出す

「何から始めるか」で止まっている人こそ、無料説明会や本で自分に合うルートを30分で確定できます。

Enjoy Tech!|月額制でWeb系に強い▶ (Kindle本)ITエンジニアの転職学|後悔しないキャリア戦略▶

▶ AIコーディング環境なら  実践Claude Code入門(Amazon)が実務で即使える入門書です。Amazonベストセラーにも選ばれていますよ。


スポンサードリンク

1. SwiftUI とは何か

SwiftUI は Apple が 2019 年に公開した 宣言型 UI フレームワークです。
従来の UIKit が「どのように描画するか」をコードで指示する手続き的アプローチだったのに対し、SwiftUI では 「何を表示したいか」(What)だけを書けば、フレームワークが自動でレイアウト・描画・状態管理を行います。

上記コードは「VStack に Text と Image を縦に並べ、フォントや色を修飾子(Modifier)で指定する」だけのシンプルな UI です。

1‑1. 宣言型 UI の主な概念

用語 説明
View 画面に表示される最小単位。Text, Image, Button などはすべて View プロトコルに準拠しています。
Modifier View に対して外観・レイアウトを付与する関数チェーン。例:.padding(), .background(Color.gray).
Layout Container 複数の子ビューを配置するコンテナ。VStack, HStack, ZStack, LazyVGrid などがあります。
State 系プロパティラッパー @State, @Binding, @ObservedObject, @EnvironmentObject でデータの双方向バインディングや外部依存を管理します。

2. Xcode 15 と macOS Ventura/Sonoma での開発環境

2‑1. 必要なツールと公式情報

項目 バージョン 参照先(公式)
Xcode 15 以上 https://developer.apple.com/documentation/xcode-release-notes
macOS Ventura (13) または Sonoma (14) https://developer.apple.com/support/macos/
Command Line Tools Xcode に同梱 Xcode → Settings → Locations で確認

Apple の公式リリースノートと macOS 対応表を必ず参照し、使用している macOS が Xcode 15 と互換性があるか事前にチェックしてください。

2‑2. インストール手順(画像付きでも可)

  1. Mac App Store を開き「Xcode」で検索 → 「取得」→「インストール」。
  2. 初回起動時に表示される Additional required components のインストールを完了。
  3. メニューバー Xcode > Settings > LocationsCommand Line Tools が “Xcode 15” に設定されていることを確認。

※ポイント:App Store 経由のインストールは自動的に最新版が取得でき、サンドボックスや署名の問題が起きにくい安全な方法です。


3. 初めての SwiftUI アプリを作る手順

3‑1. プロジェクトの作成

手順 操作内容
1 File > New > Project を選択。
2 テンプレート画面で iOSApp(SwiftUI)を選び Next
3 Product NameFirstSwiftUIAppInterfaceLife Cycle はともに SwiftUI, 言語は Swift を指定して Create

これだけで App プロトコルに準拠したエントリポイントと、デフォルトの ContentView.swift が自動生成されます。

3‑2. ContentView の編集と Canvas(プレビュー)活用

  • エディタ右上の Resume ボタンで Canvas を起動。
  • コードを保存するたびにリアルタイムで UI が更新され、実機やシミュレータにビルドせずにデザイン確認が可能です。

3‑3. よく使うビューとモディファイア(一覧)

ビュー / モディファイア 主な用途 サンプルコード
Text 静的文字列表示 Text("Hello").font(.title).foregroundColor(.red)
Image アイコン・写真表示 Image(systemName: "star.fill").foregroundColor(.yellow)
VStack / HStack 縦・横レイアウト VStack { … }, HStack { … }
Spacer 可変空白で配置調整 Spacer()
.padding() 内側余白追加 .padding(.horizontal, 16)
.background() 背景色・ビュー設定 .background(Color.gray.opacity(0.2))

4. データバインディングと画面遷移の基本

4‑1. @State@Binding の実装例

  • @State の変更は自動的にビュー全体の再描画をトリガーします。
  • 子ビューへ $isOn(バインディング)を渡すことで、双方向データフローが実現します。

4‑2. ナビゲーションと遷移

  • NavigationStack(iOS 16 以上)または従来の NavigationView を使用し、NavigationLink が遷移先ビューを宣言的に指定します。
  • 画面構成がシンプルになるだけでなく、プレビュー上でも階層構造を確認できます。

5. トラブルシューティングと学習リソース

5‑1. よくあるエラーと対処法

症状 原因例 解決策
Canvas が真っ白になる ビルドエラーやシンタックスエラーが残っている ⌘ + B で手動ビルドし、エラーメッセージを解消。
プレビューだけクラッシュする 使用している iOS シミュレータが古いバージョン Xcode → Settings → Components から最新シミュレータをインストール。
実機でアプリ起動時にクラッシュ @State の初期化が不正(nil) プロパティに安全なデフォルト値か、オプショナルバインディング (if let) を使用。
画像が表示されない SF Symbols 名が誤っている Apple が提供する SF Symbols カタログを確認(https://developer.apple.com/sf-symbols/)。

5‑2. 学習に役立つ公式リソース

5‑3. コミュニティ記事(参考・非公式)

サイト 内容 注釈
Qiita Xcode 設定や SwiftUI 入門のハンズオンが多数掲載。実装例が豊富です。 非公式ですが、執筆者が実際に試した手順が多く参考になります。
Zenn 宣言的 UI の概念解説とデバッグテクニックの記事が充実しています。 同上(非公式)。最新の SwiftUI バージョンに合わせて更新されているものを選びましょう。
Udemy(ベネッセ) 入門コースが有料で提供されていますが、無料プレビュー部分は概念整理に役立ちます。 商用プロモーション色が強いため、本記事ではリンクだけ掲載し「参考情報」と明示しています。

注意:非公式サイトの情報は執筆時点の環境に依存することがあります。必ず公式ドキュメントと照らし合わせて最新性を確認してください。


6. まとめ

  • SwiftUI は「View + Modifier」だけで UI を構築できる宣言型フレームワークです。コード量が減り、保守性・可読性が向上します。
  • 開発は macOS Ventura/Sonoma 上の Xcode 15 以上を使用すれば、プレビューやシミュレータが最適化された環境で快適に行えます(公式リリースノート参照)。
  • 「SwiftUI App」テンプレートからプロジェクトを作成し、ContentView.swift と Canvas で 即時フィードバックしながら学習できます。
  • @State@Binding によるデータバインディングと NavigationStack + NavigationLink の組み合わせで、インタラクティブかつ階層的な UI がシンプルに実装可能です。
  • トラブル時は ビルドエラーの有無・Canvas の再開・最新シミュレータの導入 をまず試し、公式ドキュメントや信頼できるコミュニティ記事で追加情報を取得してください。

これらの手順と概念を押さえれば、SwiftUI で iOS アプリだけでなく macOS や watchOS、tvOS の UI も統一的に構築できるようになります。さあ、実際にコードを書いて 「宣言した通り」 の画面を体感してみましょう!

スポンサードリンク

お得なお知らせ

スポンサードリンク
AI時代のキャリア構築

プログラミング学習、今日から動き出す

「何から始めるか」で止まっている人こそ、無料説明会や本で自分に合うルートを30分で確定できます。

Enjoy Tech!|月額制でWeb系に強い▶ (Kindle本)ITエンジニアの転職学|後悔しないキャリア戦略▶

▶ AIコーディング環境なら  実践Claude Code入門(Amazon)が実務で即使える入門書です。Amazonベストセラーにも選ばれていますよ。


-Swift