SwiftUI
いつもStoryBoardばかり使っていたので、SwiftUIを使ってみた。
※使っていたと言っても7年前くらいに数本、プライベート仕様のアプリ程度だが。
結果…
使い物にならねぇ!!!!
いやマジで使い物にならない。
どうして使い物にならないと言うと、例えばassetというModelからurl: Stringという項目があったとして
Link(destination: URL(string: asset!.url as String))
普通なら上記の様に書けば良い。プログラマなら当然だろと思うはず。
が、実際には
let finalURL: URL? = URL(string: asset!.url as String)
Link(destination: finalURL)
こうしなければダメとかなる。
これだけなら正直許せる。
しかしこれでは終わらない。
こういうコードを積み重ねていくと、上記でも通らなくなる。
どんどん回避コードが増えていく。
論理的には正解。一切間違ってない。型もガチガチにして、nilならそのコードは回避させるところまで書いても通らなくなる。
プログラマが定義した型を信頼せず、勝手に型推論を振り回す仕様のためだ。
だから全く使い物にならない。
通常のアプリを見ていると『これUIはWebViewだろ?』と思うことがすごく多い。
Androidとかと見た目を合わせるためには、それが最短だからと思ってはいたが…
違うと認識できた。
要は全然使い物にならないからだ。だから箱(大元のView)だけSwiftUIで作って、中身はWebViewになるんだろうな。
どなたか回避策があったら教えてください。