授業計画 |
| 回数 |
学習目標 |
学習項目 |
| 1 |
AIと人間の責任境界を説明できる(理解・同定)
モバイルアプリの体験価値を言語化できる(総合)
AI駆動開発の基本概念を説明できる(記憶・理解) |
AI駆動開発の本質
モバイルUXの特性
アイディアの発想 |
| 【理解度確認】アプリ企画案の提出 |
| 2 |
Expo環境を構築し実機で動作確認できる(適用)
Expoプロジェクトの基本構造を説明できる(理解)
開発環境の準備ができる(総合) |
Expo初期設定
AI駆動開発の準備
プロジェクト構造理解 |
| 【理解度確認】課題 |
| 3 |
AIを用いてアプリ骨格を生成できる(適用)
Stack / Tabナビゲーションの設計意図を説明できる(理解)
アプリ全体構造を設計できる(総合) |
Antigravityによる生成
Stack構造
Tab構造
全体構造の指示方法 |
| 【理解度確認】プロジェクトの提出 |
| 4 |
SDK不整合の原因を特定できる(同定)
エラーメッセージを読み取り問題を分析できる(理解・評価)
バージョン不整合を修正できる(適用) |
バージョン確認
非推奨API判定
エラー読解 |
| 【理解度確認】課題 |
| 5 |
APIからデータ取得を実装できる(適用)
ローディング状態を設計できる(総合)
データ取得と画面遷移を統合できる(総合) |
fetch実装
ローディング設計
一覧→詳細遷移 |
| 【理解度確認】課題 |
| 6 |
UI状態とサーバー状態を分類できる(同定)
グローバル状態管理を設計できる(総合)
状態設計のアンチパターンを説明できる(評価) |
UI状態/サーバー状態
Zustandストア作成
画面間共有
設計アンチパターン |
| 【理解度確認】課題 |
| 7 |
AsyncStorageを用いた手動永続化を実装できる(適用)
persistミドルウェアの仕組みを説明できる(理解)
手動実装とミドルウェアの設計差を評価できる(評価) |
AsyncStorageで手動保存(getItem / setItem)
問題点整理(重複コード・同期タイミング)
Zustand persistミドルウェア導入
設計比較と責任分離 |
| 【理解度確認】手動版とpersist版の差分レポート提出 |
| 8 |
保存方式を選定できる(評価)
Optimistic UIを設計できる(総合)
オフライン時のデータ整合性を設計できる(総合) |
SQLiteの役割
キャッシュ戦略
Optimistic UI
ロールバック設計 |
| 【理解度確認】課題:オフライン対応機能追加 |
| 9 |
Firebaseとアプリを接続できる(適用)
APIキーを安全に管理できる(適用)
環境変数管理の重要性を説明できる(理解) |
Firestore接続
Google認証
.env管理
キー露出リスク |
| 【理解度確認】課題:認証実装+環境変数確認 |
| 10 |
バグの再現条件を特定できる(同定)
ログを分析して原因を推定できる(評価)
状態管理バグを修正できる(適用) |
ナビデバッグ
ログ解析
状態破壊バグ追跡 |
| 【理解度確認】模擬バグ修正 |
| 11 |
端末機能(カメラ・位置情報)を安全に実装できる(適用)
アプリUIアセットを設計できる(総合)
公開前に必要な設定を説明できる(理解) |
カメラ/位置情報
パーミッション設計
アイコン差し替え
スプラッシュ画面設定
公開時の最低限注意
|
| 【理解度確認】課題:アイコン&スプラッシュ差し替え提出 |
| 12 |
AIの提案を批判的に検討できる(評価)
ライブラリの健全性を評価できる(評価)
OSSの継続性リスクを判断できる(評価) |
著作権
API規約
Deprecatedライブラリの見抜き方
GitHub更新履歴の確認方法
メンテ終了リスク |
| 【理解度確認】AI提案アーキテクチャおよび、ライブラリの健全性分析レポート |
| 13 |
アプリMVPを定義できる(総合)
状態管理構成を論理的に設計できる(総合)
データ構造を設計できる(総合) |
MVP定義
Zustand構成図
データ設計 |
| 【理解度確認】設計書提出 |
| 14 |
AIツールを活用してアプリを実装できる(適用)
実用レベルまで機能を完成させることができる(適用)
UX改善を行える(評価) |
AI活用実装
デバッグ
UX改善 |
| 【理解度確認】課題 |
| 15 |
技術選定理由を説明できる(理解・評価)
状態管理設計の妥当性を論証できる(評価)
開発プロセスを振り返り統合的に説明できる(総合) |
プレゼン
相互評価
技術振り返り |
| 【理解度確認】発表+総括レポート |