概要:
本格的にSwiftUIを学べる無料アプリ、iPadのSwift Playgrounds。
4つのお薦めポイントをお伝えします。
SwiftUIを学び始めるならPlaygroundsがおすすめ
iPhoneやiPadのアプリを作りたいと思ったらSwiftというプログラミング言語を学ぶ必要があります。その言語の表示や入出力などのUI(ユーザー・インターフェース)部分をフレームワークとして簡単に構築できるようにしたものがSwiftUIです。
大抵のアプリは画面表示と入出力操作が中心ですので、SwiftUIの理解は色んなアプリが作れるようになる早道と思います。
「でも、、Macも持ってないし、開発ツールXcodeとか難しそうだし、、」
と思っている方、ぜひiPadの無料アプリPlaygroundsで学び始めてみてください!
なにしろApple社自身がデベロッパとして出しているアプリです。
私もSwift言語を学び始めた当初に相当お世話になりました!
そのコンセプトと学べるダイナミックレンジの広さに感動したものです。
PlaygroundsでSwiftUIを学ぶことを推奨する大きな理由をいくつか書いておきます。
Swiftソースコードが見れる!(おすすめ理由1)
Playgroundsではガイドに従って課題をクリアしていくのが基本ですが、実は多くのアプリではソースコードを全て見ることができます。
Appleが自ら用意したアプリのソースコードがそのまま見えるのです!
SwiftUIを学ぶ上でこんな上質の情報は利用しないと勿体無いです!
今後、いくつかのソースコードを分かり易く解説してみたいと思います。
以下に現時点(2022年12月)でソースコードが見える主なアプリを紹介しておきますね。(参考として、理解する上での難易度(個人的主観)を★数で表現しておきます。)
アプリ名 | 難易度 | 行数 | ソースコード概要 |
プロフィール | ★★ | 450 | TabView、ScrollViewなど基本的な表示要素を学べる。 |
自分だけの物語を選択する | ★★★ | 880 | 難易度は中だが、ファイルが30近くあり校正が複雑。 |
予定表 | ★★★★ | 770 | Date中心。Binding、FucusStateなど特殊要素多い。 |
ミームーメーカー | ★★ | 240 | Netからファイルを獲得する。URLSessionなど。 |
水準器 | ★★★ | 340 | MotionManagerなどデバイスの取り扱い方。 |
地震計 | ★★★ | 550 | デバイス、タイマー。水準器の延長。 |
図形をアニメートする | ★★★ | 1020 | Viewの描画系。@ViewBuilder/@escapingも学べる。 |
グリッドを使った整理 | ★ | 90 | もっとも簡単。GridとForEachの基本をここで。 |
ジェスチャの認識 | ★★ | 360 | まさにジェスチャ系を一通り学ぶ。 |
写真を取り込む | ★★★★★ | 1400 | カメラ、画像、非同期処理など超難解要素が多数。 |
グリッドの編集 | ★★ | 280 | グリッドを使った整理の延長。 |
Swiftソースコードを編集し、すぐ確認できる(おすすめ理由2)
Playgroundsの2つ目のおすすめ理由は、Swiftソースコードの一部を変えてすぐに確認ができることです。
「この行は何をしているのだろう?」
「この数字はどれを指すのだろう?」
みたいな時に、その行だけ//でコメントアウトしてみたり、数字を変えてみたりするだけで、表示や実行結果をすぐに見れるメリットがあります。
始めて変更してみた時、感動を覚えたぐらいです。
アプリでここまでできるなんて!
ソースコードが表示している状態は簡単なエディターになっていますので、編集が可能です。
Swift言語の比較的新しいバージョンで書かれている(おすすめ理由3)
Swift言語はまだ発展途上にあり、毎年どんどん改定されているのが事実です。
コマンドや機能が追加されるだけなら良いのですが、実は、
旧文法が廃止になったり、大幅に改定されたり、は日常茶飯事
と思われた方が良いです(笑)
なので、ネット上の古い情報を参考にプログラム書いた場合、上手く動かなかったり、現行OSバージョンでは対応されていない、というようなことも起こります。
その点、Appleが最新情報として作ったPlaygroundsのアプリは、最も参考になるソースコードと言えると思います。
StoryboardよりSwiftUIの方が進化しそう(おすすめ理由4)
Swift言語をMacでまだ本格的に開発していない方には、いきなり”Storyboard”って何?と思うかもしれません。簡単に言うと、StoryboardとはMac上で動作するXcodeというアプリ開発環境ツールの中で、表示やUIを担当してきたフレームワークです。
SwiftUIが登場するまではStoryboardが主流でした。
未だにStoryboardでしかできないことが沢山ありますし、ネット上でも情報は豊富です。
しかし、最近はApple自身が主導的にSwiftUIを提唱しているように感じられますし、進化のスピードも速いです。
なので、
これから先にアプリ開発を本気でやるならSwiftUIはマスターするべきと思っています。
まとめ
本格的な開発を目指す方にも、以下の4つかおすすめ理由でした。
おすすめ理由1:Swiftソースコードが見れる。
おすすめ理由2:Swiftソースコードを編集し、すぐ確認できる。
おすすめ理由3:Swift言語の比較的新しいバージョンで書かれている。
おすすめ理由4:StoryboardよりSwiftUIの方が進化しそう。
SwiftUIは世界をリードするApple社が開発する次世代のプログラミング手法ではないでしょうか。
それがゲーム感覚で使えるようになったiPadのアプリPlaygrounds。
プログラミングを学ぶ者として、現時点で最高の環境の1つだと思います。
ぜひ、一度ソースコードを一通り見てみてはいかがでしょうか。
次回はコード解説1回目として「グリッドを使った整理」でLazyVGridを取り上げます。
ご意見、ご指摘がありましたら、ぜひコメント頂けると嬉しいです。
コメント