聴講メモ:Mobile勉強会 #20 ウォンテッドリー × チームラボ × Sansan

コーディングエージェント(AI)による開発の話が3割で時代の流れを感じた。が、がっつりプロダクト開発現場におけるの知見というより、まだ個人利用でのノウハウが中心(開発現場での知見は、AI専門の勉強会の方で聞けるイメージ)。Animatable や Metal などUI開発系の話は作例も見れて楽しい。懇親会でも終始、各社/個人のAI活用について(Devin や Cursor の使い分けなど)情報交換ができて参考になった。Devin について各社どれくらいACUを消費しているのか気になったが、聞き出せなかった。

個人的に深く共感した点として、堤さん発表で言及されていた、0→1が苦手な人間の性質を逆手に取り、AIに任せてしまう、はまさに初手で年々腰が重くなる筆者が同じことを考えており、人間の元来もつ(負の)性質をAIでカバーすることで、いかにして人間の本質であるクリエイティビティを解放するか?そこに夢を見ていきたいと思った。

イベントページ:https://wantedly.connpass.com/event/350442/


SwiftUIにおけるPreferenceの基礎概念

ウォンテッドリー/湊 さん

  • Preference とは
    • 子→親 の情報伝達
    • Binding Environment との比較解説
  • 活用事例
    • 下スクロールでボタン非表示:子ビューで発生したスクロールイベントを親に伝達

入社初期に意識した3つの取り組み

@hikaengineer さん

<資料埋め込み>

  • うまく行った3つの行動 の紹介

DevinでFlutter開発してみた話 プライベート開発に導入して1ヶ月の呟き

チームラボ/池本菜々子 さん

  • Devin:Core プランが安い
  • Flutter x Devin
    • Devinとめちゃくちゃ相性いいわけではない
    • ネイティブビルドできない
    • SDK を Devin 環境内でインストールが必要
    • など
  • Google 認証機能追加を依頼してみた
    • できたが、できないこともあった:ネイティブ側の設定ファイルや、UIUX の提案
  • Tips
    • 日本語で指示することから
    • 軽いタスクから
    • タスク任せるうちに Devin Wiki を書いてくれる
    • ask フォームがあり、AIに質問できる
  • Cursor Copilot との比較:Cursor は小規模タスクに強い

Cursor × iOS開発 私はこうやってます2025年5月版

@shu223 さん

  • 前提:個人利用を想定、焼酎規模、開発歴長い
  • Cursor:Agentモードで利用してエディタはほぼ使わない
  • Xcode:自分でコード書く時 Copilot for Xcode も利用
  • 手順
    • Cursor:「とりあえずAIに書かせて人力修正」
      • AIにタスク依頼(Agent依頼)
      • 方針 → 実装→ とりあえずaccept(よほどのことない限りAccept Allしてる)
      • Xcodeでビルド確認、必要に応じて人力修正
  • 「はじめるのに2時間かかる人間のバグ」
  • Xcodeと併用する際のポイント:
    • Xcode 側での修正を同期するために定期的にインデックスを作り直す
    • アホ回答時は改善チャンス:会話履歴からルールを生成する機能がある / Generate Cursor Rules
    • うまくいかなかった時のログファイルを控えておく

Animatableって何者?アニメーションの落とし穴

@akidon0000 さん

<資料埋め込み>

  • SwiftUI アニメーションいついて
    • Animatable を実装:この値はアニメーションできることを SwiftUI に伝えるプロトコル
  • Pathを使ったアニメーションでは?
    • ShapeAnimatable 準拠、animatableData を実装すれば良さそう
    • Shape の他にも使える

SwiftUIとMetalで簡単に作るレアカード風UI

てぃー さん

  • colorEffect / distortionEffect / layerEffect
    • 今回は colorEffect を使う
  • Shader に決まった構成に対して実装する
  • 傾き:Core Motion で簡単に取得

iOSでスクリーンショットテストを導入した話

takuya_osawa さん

  • 背景
    • 予期せぬ変更でレイアウト崩れが発生してしまう
    • 生成 AI 活用により UI 開発スピードが加速し、目視確認が大変で自動化したい
  • スクリーンショットテストとは?
    • 「5層のテストピラミッド」
    • コンポーネントテストにあたる
  • 導入方法
    • GitHub Actionsをトリガーにして、スクショ生成、参照と比較、差分を通知
    • swift-snapshot-testing など使わずに、rootViewController に画面を配置してスクショを取得する方法を採用
    • 差分比較とレポート:reg-cliを使用
  • 工夫点
    • 1. スクロールの画面に対応:UIWindowframe 指定して縦長のスクショを取得できるようにした
    • 2. reg-cilを使ったレポート出力:actinos のアーティファクトに出力
    • 3. 非同期取得画像は placeholder 画像で差し替え
  • 効果と課題
    • 意図しないレイアウト変更を早期発見できた
    • 視覚的に理解できることで画面仕様の理解が進んだ
    • モックの差し替えするため疎結合な設計改善が進んだ
  • 課題
    • 一部不安定で失敗通知が来る
    • シングルトン実装があり、モック差し替え不可な画面あり

SwiftUI の .onSubmit modifier について知りたい

YutakaTajika さん

  • .onSubmit modifier について
  • これを使うとメモリリークする?再現コード
  • ワークアラウンド

Gemini2.5proにswiftUIの小説を書いてもらった。

shou_glass さん

  • 難しすぎてなにがわからないかわからないので、小説をもとに教材化
  • 「技術の習得を目標にしている」が肝(そうしないと闇組織に堕ちる展開になる)
  • NotebookLM で HIG を Podcastにしてもらっている

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です