Swift: Swift入門:初心者のためのスタートガイド

SwiftはAppleが開発したモダンなプログラミング言語です。CとObjective-Cの長所を組み合わせながら、より安全で高速、そして読みやすくなっています。このレッスンでは、開発環境をゼロからセットアップし、最初のSwiftコードを書く方法を学びます。

1. 学習目標


2. 実話:ゼロからのキャリアチェンジ

(1) 課題:アプリを作りたいが、どこから始めればいいかわからない

Aliceは5年の経験を持つ市場アナリストでした。彼女はiOS開発に転身したいと考えていました。3日間ネットで検索した結果、リソースは豊富に見つかりましたが、明確な出発点がありませんでした:

「Objective-Cを学べという人もいれば、Swiftを学べという人もいて、Cから始めろという人もいました。Xcodeをダウンロードしましたが——4.7GB——開いてみてもどこをクリックすればいいのかさっぱりわかりませんでした。インターフェースがあまりにも複雑すぎました。」

Aliceのジレンマは典型��です:情報過多による決断麻痺です。

(2) Playgroundsによる解決策

友人がXcodeプロジェクトを完全にスキップして、代わりにSwift Playgrounds(軽量でインタラクティブなSwiftコーディング環境)から始めることを勧めました。

SWIFT
// Your first line of code in Swift Playgrounds
print("Hello, world!")

Playgroundsはプロジェクトのセットアップも、コード署名も、Storyboardの知識も必要ありません。コードを1行書けば、結果が即座に表示されます。 Aliceは15分以内に最初のプログラムを書き上げました。

(3) 結果:15分でゼロからイチへ

観点 Before After
心理的ハードル 「プログラミングなんて無理」 「コードを書くのは意外と簡単」
セットアップ時間 3日間の迷い Playgroundsのダウンロード10分
最初のプログラム 一度も書いたことがない 15分でHello World
自信レベル 0/10 7/10

3. Swiftとは

Swiftは、AppleがWWDC 2014で発表したモダンなプログ��ミング言語で、iOS、macOS、watchOS、tvOSアプリケーションの開発に使用されます。複数の言語から優れた設計概念を取り入れています。

100%
graph LR
    A[Swift] --> B[安全]
    A --> C[高速]
    A --> D[モダン]
    A --> E[オープンソース]
    B --> B1[オプショナル型がnullクラッシュを防止]
    B --> B2[型安全性が型エラーを防止]
    C --> C1[LLVMコンパイル最適化]
    C --> C2[C/Obj-Cに匹敵するパフォーマンス]
    D --> D1[クロージャ/ジェネリック/パターンマッチング]
    D --> D2[簡潔な構文、高い可読性]
    E --> E1[GitHubでオープンソース]
    E --> E2[Linuxでも動作]

(1) Swiftの主要な特徴

特徴 説明 Objective-Cとの比較
型安全性 コンパイル時に型エラーをチェック Obj-Cはidを任意に渡せる
オプショナル型 ?!でnull値を明示的に扱う Obj-Cのnilは任意のオブジェクトにメッセージ送信可能
自動メモリ管理 ARCが参照カウントを自動管理 Obj-Cは手動でretain/releaseが必要
クロージャ 関数が第一級オブジェクトで、クロージャ式も利用可能 Obj-Cのブロック構文は煩雑
ジェネリック 型パラメータ化による汎用コードの記述 Obj-Cはジェネリックをサポートしない
プロトコル拡張 プロトコルにデフォルト実装を持たせられる Obj-Cのプロトコルは宣言のみ
オープンソース クロスプラットフォーム、Linux対応 Obj-Cはオープンソースではない

(2) Swiftで何ができるか

分野 フレームワーク/ツール 説明
iOSアプリ UIKit / SwiftUI iPhone・iPadアプリケーション開発
macOSアプリ AppKit / SwiftUI Macデスクトップアプリケーション開発
watchOS WatchKit Apple Watchアプリケーション
tvOS tvOS SDK Apple TVアプリケーション
サーバーサイド Vapor / Kitura SwiftでバックエンドAPIを構築
スクリプト Swift Script Shell/Pythonの代わりに日常ツールを作成

▶ サンプル: PlaygroundsでSwiftを体験

SWIFT
// ============================================
// Experience Swift interactively in Playgrounds
// No Xcode project needed — just open and code
// ============================================

let greeting = "Hello, Swift!"
print(greeting)

// Display calculation results directly
let result = 42 + 10
print("42 + 10 = \(result)")

出力:

TEXT 📖 参照専用
Hello, Swift!
42 + 10 = 52

4. 開発環境のセットアップ

(1) 環境の選択

選択肢 最適な用途 インストール方法 サイズ
Xcode プロ向けiOS/macOS開発 Mac App Storeからダウンロード ~7GB
Playgrounds Swift構文学習の初心者 Mac App Store / iPad App Store ~150MB
Swift on Linux サーバーサイド開発 / クロスプラットフォーム apt install swift ~500MB
オンラインPlayground クイックテスト、インストール不要 ブラウザベース 0

(2) Playgroundsのインストール(初心者におすすめ)

MacまたはiPadをお持ちの場合、Swift Playgroundsをインストールするのが最も早い始め方です:

  1. Mac App Store(またはiPad App Store)を開く
  2. 「Swift Playgrounds」を検索
  3. 「入手」をクリックしてインストール

インストール後、開いてすぐにコーディングを始められます。Apple Developerアカウント不要、証明書の署名も必要ありません。

(3) Xcodeのインストール(本格開発向け)

XcodeはAppleの公式統合開発環境で、iOS開発ツールチェイン全体を含みます:

BASH
# Xcodeのインストール方法は2通り
# 1. Mac App Storeで「Xcode」を検索してダウンロード(推奨)
# 2. Apple Developerサイトから.xipパッケージをダウンロード
⚠️ 注意: Xcodeは約7GBあり、インストールに15〜30分かかります(ネットワーク速度によります)。Swiftの構文を学びたいだけなら、まずPlaygroundsから始めましょう。

▶ サンプル: XcodeでPlaygroundを作成

SWIFT
// ============================================
// Create a Playground file in Xcode
// File → New → Playground → Blank
// ============================================

import UIKit

var number = 42
number += 10

// The Playground sidebar shows variable values in real time
print(number)

出力:

TEXT 📖 参照専用
52

5. 最初のSwiftプログラムの構造

すべてのSwiftプログラムはエントリファイルから実行を開始します。Playgroundsでは、コードは上から下へ1行ずつ実行されます。

(1) 基本構造

100%
graph TB
    A[Swiftソースファイル .swift] --> B[フレームワークのインポート]
    A --> C[変数/定数の宣言]
    A --> D[関数の定義]
    A --> E[式と文]
    B --> F["import Foundation"]
    B --> G["import UIKit"]
    C --> H["let name = \"Alice\""]
    C --> I["var age = 28"]
    D --> J["func sayHello() { ... }"]
    E --> K["print(\"Hello\")"]

(2) print関数の理解

printはSwiftで最もよく使われる出力関数で、コンソールに内容を表示します。

SWIFT
// ============================================
// Basic usage of the print function
// ============================================

// 1. Output a string
print("Hello, Swift!")

// 2. Output multiple values (auto space-separated)
print("Hello", "Swift", "World")

// 3. String interpolation
let name = "Alice"
print("My name is \(name)")

// 4. Specify separator and terminator
print("One", "Two", "Three", separator: ", ", terminator: ".\n")

出力:

TEXT 📖 参照専用
Hello, Swift!
Hello Swift World
My name is Alice
One, Two, Three.

▶ サンプル: 完全なSwiftプログラムの構造

SWIFT
// ============================================
// Complete Swift program: Personal Info Card
// Demonstrates import, constants, variables, print
// ============================================

import Foundation

// Constants (immutable)
let appName = "Swift Starter"
let author = "Alice"

// Variables (mutable)
var year = 2026
var version = 1.0

// Output
print("Welcome to \(appName)")
print("Author: \(author), Year: \(year)")
print("Version: v\(version)")

// Update version number
version = 1.1
year = 2026

print("Updated: v\(version) (\(year))")

出力:

TEXT 📖 参照専用
Welcome to Swift Starter
Author: Alice, Year: 2026
Version: v1.0
Updated: v1.1 (2026)

6. 完全な例:Playgroundsで簡単な電卓を作る

SWIFT
// ============================================
// Full example: Playground Calculator
// Demonstrates basic arithmetic operations
// ============================================

import Foundation

// 1. Define inputs
let a = 25
let b = 7

// 2. Calculate
let sum = a + b
let difference = a - b
let product = a * b
let quotient = a / b
let remainder = a % b

// 3. Format and output results
print("a = \(a), b = \(b)")
print("=== Results ===")
print("Addition: \(a) + \(b) = \(sum)")
print("Subtraction: \(a) - \(b) = \(difference)")
print("Multiplication: \(a) × \(b) = \(product)")
print("Division: \(a) ÷ \(b) = \(quotient) remainder \(remainder)")

出力:

TEXT 📖 参照専用
a = 25, b = 7
=== Results ===
Addition: 25 + 7 = 32
Subtraction: 25 - 7 = 18
Multiplication: 25 × 7 = 175
Division: 25 ÷ 7 = 3 remainder 4

❓ よくある質問

Q Swiftの前に他の言語を学ぶ必要がありますか?
A いいえ。Swiftは初心者向けに設計されており、ゼロから始めることは十分可能です。このチュートリアルではプログラミング経験を前提としていません。
Q MacなしでSwiftを学べますか?
A はい。WebベースのSwift Playgrounds、SwiftFiddleなどのオンラインエディタ、またはLinuxにSwiftツールチェインをインストールして使用できます。ただし、App Storeにアプリを公開するには最終的にMacが必要です。
Q SwiftとSwiftUIの関係は?
A Swiftはプログラミング言語で、SwiftUIはSwiftの上に構築されたUIフレームワークです。まずSwiftの基礎を学び(このチュートリアル)、それからSwiftUIでインターフェース構築に取り組みましょう。文法を学んでから文章を書くようなものです。
Q Xcodeは巨大ですが、Playgroundsだけでこのチュートリアル全体を完了できますか?
A もちろん可能です。このチュートリアルのすべてのコード例はPlaygroundsで実��できます。Xcodeのインストールを考える前に、28のレッスンすべてを完了できます。
Q SwiftはWindowsで動作しますか?
A Windowsは公式にはサポートされていません。ただし、SwiftFiddleなどのオンラインエディタを使用するか、WSLをインストールしてUbuntu上でSwiftを実行できます。

📖 まとめ


📝 練習問題

  1. 初級: Swift Playgroundsをインストールし(またはXcodeを開いてPlaygroundを作成し)、printコマンドを使用して自分の名前と現在の年を出力してください。

  2. 中級: セクション6の完全な電卓の例を修正し、掛け算の詳細なデモンストレーションを追加してください(少なくとも3組の異なる数字を使用)。また、separatorパラメータを使用して出力形式を整えてください。

  3. 上級: セクション6のコードスタイルに従い、摂氏と華氏を変換する「単位変換器」プログラムを作成してください(計算式: °F = °C × 9/5 + 32)。両方の単位で結果を表示してください。

Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%