鳩ブログ

サラリーマンが綴るブログ

SwiftUIの勉強 1日目

f:id:hato36:20200717094050p:plain

出社してたら飲みに行ってそうな金曜日...。
仕事も落ち着いてるから今日も勉強!!

 

昨日のブログで書いた通り、本日からはこの本を使ってSwiftUIについてお勉強。

StoryboardとSwiftUIって何が違うの?

結構衝撃だった。何せSwiftUIって何だべ?って知らなかったので。
もちろんiOS13から利用できるようになった新しいUIの実装方法というのは理解していたけど何が新しいのかなと。

まだまだ本を読み始めたところなので理解は薄いとは思うが下記が現段階の理解。

  • StoryboardはGUIでViewを設定
  • SwiftUIはコードでViewを設定

大きくはこの違い。※Viewは画面ね
SwiftUIでもパーツの配置とかにGUIを使うことは可能だし、一部のプロパティはインスペクターズ(XCode画面右側のプロパティ設定みたいなやつね)で設定することも可能。ただ、SwiftUIでプロジェクトを作ってインスペークターズをいじると、その内容がサクッとコードに反映される。

もちろんコードをいじるとView画面の方にサクッと反映される。
Windowsの開発をやってた頃でもオブジェクトをコードで生成して配置みたいなことはあったからわかるけど、コードを書いている最中に画面にそれが反映されるのは結構衝撃かなと。

しかも、UIパーツの追加時の画面からEffect Modifiresライブラリを選択して、そこから設定変更も出来ちゃう...何というかこれが出来るということよりも、むしろ覚えなくてもコードが書けちゃうのよね。

f:id:hato36:20200717105810p:plain

正直言って結構びっくり。

f:id:hato36:20200717110121j:plain

これは覚えたらStoryboardよりもSwiftUIの方が制御しやすいし開発もやりやすいと思う。慣れてきたらどっちが早いかわからないけど、現時点の素人目にはSwiftUIの方が都合良いように思う。でも、これもStoryboardの方を先に学んだから言えること。

インスペクターズもカスタマイズ可能だった...

まさかと思ったが、インスペクターズのモディファイアもカスタマイズ出来たのだった。

f:id:hato36:20200717115658j:plain

要は設定したい項目がインスペクターズになかった場合には、Add Modifierから項目を追加し、コードを書かずに設定できるということなのだ。
XCodeにちょっと関心。AppleはiPhoneでいろいろな便利なUIを提供しているので発想自体が素晴らしいよなとか思っていたけど、ちゃんとXCodeにもその意識はあるようだ。インスペクターズって中途半端な項目しか無いよなぁ...基本的なところだけしか表示しないとか変だよなと思っていたけど回避策がちゃんと用意されていたことに感動。
VBみたいに全プロパティが表示されていれば尚よかったけど回避策があるなら良しとしよう。

f:id:hato36:20200717181238p:plain

本の最初の方はちょっとつまらない感じ(失礼!)だったけど、P125ぐらいまでサクサク練習コードを書いてきたらSwiftUIでアプリ作ってる感出てきたw(コード自体は全く大したことないけどw)
SwiftUIって面白いわって思えてきたので週末も勉強しようと思った金曜日。

Apple Mac mini (3.0GHz 6コアIntel Core i5プロセッサ, 256GB)

Apple Mac mini (3.0GHz 6コアIntel Core i5プロセッサ, 256GB)

  • 発売日: 2018/11/07
  • メディア: Personal Computers