本文へスキップ
BecomeCoder
ブログ一覧Wikiコース一覧

Swiftは何ができる?使い道と作れるものを初心者向けに解説

#Swift#初心者#使い道#iOSアプリ

結論:Swift は Apple が作った「安全で速い」プログラミング言語で、iPhone・iPad・Mac・Apple Watch のアプリ開発が主な使い道です。 SwiftUI という仕組みで画面を宣言的に書け、副業でよく狙われる「自分のアプリを App Store に出す」ことに一番近い言語です。加えてサーバーサイド(バックエンド)にも使えます。まず「Swift のコードがどんなものか」は、Mac や Xcode がなくてもSwift(iOSアプリ)コースでブラウザからそのまま試せます(無料・登録不要・環境構築なし)。

Swift は結局「何が作れる」言語なのか

Swift の使い道は、ひとことで言えば 「Apple のデバイスで動くアプリ」 です。iPhone だけと思われがちですが、実際は Apple のほぼ全製品が対象です。

副業で「自分のアプリを作って公開したい」という人にとって、App Store に出すアプリを作る一番素直な道が Swift です。まずどんな言語か1分で体感したい人は、iOSアプリはどう作られる? ― 全体像はじめてのSwift ― print で出力するをブラウザで開いてみてください。

なぜ「Apple のアプリ」が主用途なのか(3つの特徴)

使い道は Swift の性格から素直に決まっています。3つの特徴で見ていきます。

1. Apple が「アプリを作るための公式言語」として作った

Swift は 2014 年に Apple が発表した比較的新しい言語で、それまで使われていた Objective-C を置き換えるために生まれました。つまり Apple 純正のツール(Xcode)と最初から相性がいいように設計されています。iPhone・iPad・Mac のアプリを作るなら、いま最も標準的な選択肢が Swift です。

言語としての基本は、他のモダンな言語と大きくは変わりません。まずは基礎をブラウザで動かしてみてください(いずれも実行できる回です)。

2. 「安全」― nil(値がない)をうっかり使わせない

Swift の設計思想の中心が 安全性 です。中でも有名なのが Optional(オプショナル)という仕組みで、「値がないかもしれない」ことを型で明示させます。これによって、多くの言語でアプリが落ちる原因になる「値が空なのに使ってしまった」バグを、書いている時点で防げます。

Swift のコードでよく見る ?!guard let の正体はこれです。実際に動かして押さえておくと、後々のアプリのコードがすんなり読めます。

3. 速い ― コンパイル型で機械語に翻訳して動く

Swift はコンパイル型(機械語に翻訳してから動く)の言語で、動作が速いのも特徴です。スマホや時計のように電池と性能が限られたデバイスで、なめらかに動くアプリを作るのに向いています。コンパイル型とインタプリタ型の違いが気になる人は コンパイラとインタプリタの違い も参考にしてください。

主用途をもう少し具体的に

iPhone / iPad / Mac のアプリ(SwiftUI で画面を作る)

Swift でアプリの画面を作る、いま主流の方法が SwiftUI です。「こういう画面にしたい」という完成形を宣言的に書くと、その通りに表示され、状態が変わると自動で画面が更新されます。

このサイトの Swift コースの強みは、その SwiftUI の画面をブラウザ上の iPhone 風プレビューでそのまま動かせることです。: Viewvar body を書くと右側に画面が描画され、ボタンのタップやテキスト入力にも反応します。Mac も Xcode も要りません。

自分が書いたボタンが本当に動く体験は、副業でアプリを作りたい人にとって最初の手応えになります。Swift コースは第1章から第7章までのほぼすべてのレッスンがブラウザで実行できます。

サーバーサイド(バックエンド)

意外に知られていませんが、Swift はサーバー側(Web サーバーや API)にも使えます。Vapor というフレームワークが代表的で、iPhone アプリと同じ言語でその裏側のサーバーまで書ける、という選択肢があります。バックエンドとフロントエンドの役割分担があいまいな人は、先に フロントエンドとバックエンドの違い を読むと、どこで Swift が使えるのかが整理できます。

なお、実際にサーバーと通信する部分は Mac・Xcode が前提のため、コースでは URLSession ― サーバーと通信する として読み物で解説しています。

つまずきやすいところ(使う前に知っておく)

Swift でアプリを作るとき、初心者が最初に詰まりやすいのが先ほどの Optional(nil の扱い) です。「値がないかもしれない」を毎回意識させられるので最初はくどく感じますが、if let と guard let ― 安全な取り出し を動かすと「アプリが落ちにくくなる」という狙いが腑に落ちます。

もう一つは環境の壁です。本格的な開発には Mac と Xcode(数GB) が必要で、iPhone 実機や Apple Developer への登録も App Store 公開時には要ります。ここは正直なところ、独学のつまずきポイントです。だからこそ、まずはブラウザで文法と SwiftUI を体験し、「自分はアプリ開発を続けられそうか」を確かめてから Mac を用意するのが、遠回りに見えて挫折しにくい進め方です。この環境まわりは 実機テストとApp Store公開 に読み物としてまとめています。

まず何をすればいい?

「Swift で何が作れるか」が分かったら、次は 手を動かして向き不向きを自分で確かめる のがいちばんです。Swift コースは文法から SwiftUI で画面が動くところまで、多くの回をブラウザ内で実行しながら進められます。無料・登録不要・環境構築なしです。

← ブログ一覧に戻る