筆者のスペック
- 業務内容は主にJavaでバックエンド
- フロントエンド自体、あまり経験なし
- 他にもC++, Node.jsを少し触った
- 趣味は麻雀とかポーカー
やったこと
SwiftUIを使ってポーカー支援アプリを作る
想定状況 (結構ニッチ)
残りチップが少ない時、少しずつベットするのではなくオールイン戦略が有効となる
このような場面での正しい判断を提供するアプリ
公開について
App storeへの公開に必要なライセンス料や審査がネックなので、手元の実機でのみ楽しんでいます
アプリ内容
ロジック

パワーナンバー表といい、今回のアプリで行なっている計算はここから算出している
有効M値<パワーナンバー表であればオールイン
有効M値>パワーナンバー表であればフォールド
(M値=スタック/ポット額
ポット額=SB+BB+全員のアンティ)
参考:https://note.com/croizz/n/n2a87e73f3482
感想
- MVCとMVVMモデルの違い
- XcodeのPreview機能の便利さ
- SwiftUIのデフォルトモジュールの有能さ
MVCとMVVMモデルの違い
当初MVCモデルをイメージして実装を行っていたが、
各種サンプルコードがMVVMで実装されていたためハマった
MVC

MVVM

参考
XcodeのPreview機能の便利さ

- 作成したソースをリアルタイムでPreview側で動かすことができる
- Preview側を修正することができ、リアルタイムでソースに反映される
⇨いちいちデプロイして、修正を確認する必要がなく、効率◎
SwiftUIのデフォルトモジュールの有能さ

- 機能的でシンプルでおしゃれ
- Apple製品のあらゆるデバイスに対応
- Xcodeから文字通りモジュールとして挿入することができる
まとめ
・モデルや文法など、Javaとは結構勝手が違う
(Swiftの関数定義は慣れないが、デフォルトでnilを許容しない機構は非常に良い)
・提供元が一元化されていることにより、各開発フェーズでの連携が非常にスムーズ
(eclipseみたいに色んなプラグインやソフトに惑わされることがない)
・App storeへの登録料($99)を値下げしてください。。。