【3日目】七夕のアプリを作ってみたいけど七夕に間に合うかわからないので不安です

七夕大好き

今日は設計フェーズです

平日よりも時間取れてないかもしれない

前回はこちら

なにが不安なのか?

  • どの機能を最初に作るのか?
  • どんな画面なのか?
  • どこにどんなデータを保存するのか?

どの機能を最初に作るのか?

全部詰め込むと間に合わない気がしてきたので、

最小限の機能を洗い出しします

初回登録画面(初回)

  • 名前を入力する(初回)
  • 10文字以内(初回)
  • アイコンも選べたらいいかも(4回目)
  • 大人か子供かの選択(初回)

フリーワードで願い事をする画面(初回)

  • 大人モードのときに表示
  • 願い事をフリーワードでかける
  • 30文字以内
  • 縦書きで入力
  • 送信ボタンで投稿
  • 子供モードに切り替えできる

定型文で願い事をする画面(初回)

  • 子供モードのときに表示
  • 願い事を選べる
  • 選択すると投稿確認ボタンが出る
  • はいを押すと投稿できる
  • 大人モードに切り替えできる

書いた願い事を見れる画面(初回)

  • 一覧で書いた願い事が見れる
  • 選択すると願い事が詳細画面に飛ぶ
  • 応援してくれた人の数が見れる

書いた願い事の詳細が見れる画面(2回目?)

  • 書いた願い事が縦書きで見れる
  • 応援してくれた人の数が見れる?
  • 応援してくれた人の名前が見れる?
  • 応援してくれた人のコメントが見れる?
  • おしゃれな出し方ができるとなお良い
  • 書いた願い事を消せる(あと)

願い事を応援する画面(初回)

  • 応援ボタン
  • フリーコメント(ネガティブワードは避けたいのでやめておく?)
  • 定型文のコメント
  • 同じ人の応援でもいい

ユーザ情報確認画面(3回目)

  • 名前を変更できる
  • アイコンを変更できる
  • 子供モードと大人モードの変更

どんな画面なのか?

初回登録画面(初回)

  1. 未登録(データ連携)
    1. アカウント作成(データ連携)
      1. 登録までwait
    2. 入力
      1. 名前(ニックネーム)、10文字まで
      2. アイコン
      3. 大人か子供
    3. 送信(データ連携)
      1. 入力不備の場合はエラー表示
  2. 登録済み(データ連携)
    1. 大人の場合
      1. フリーワード画面に遷移
    2. 子供の場合
      1. 定型文画面に遷移

フリーワードで願い事をする画面(初回)

  • 入力
    • 願い事、30文字まで
  • 登録ボタンを押下
    • 入力不備の場合はエラー表示
    • 成功時は登録と成功表示(データ連携)
  • 切り替えボタンを押下
    • 子供画面に遷移
    • スタックはつまない
  • ボトムビューを表示

定型文で願い事をする画面(初回)

  • 初回
    • 定型文を取得(データ連携)
  • 定型文をカードで表示
  • 定型文を押下
    • 投稿確認のポップアップ
      • はいを選択すると投稿と成功表示(データ連携)
      • 投稿失敗時はエラー表示
  • 切り替えボタンを押下
    • 大人画面に遷移
    • スタックはつまない
  • ボトムビューを表示

書いた願い事を見れる画面(初回)

  • 初回
    • 願い事の一覧を取得(データ連携)
      • 願い事の一覧
      • 願い事に紐づく応援した人の数
  • 願い事の一覧をカードで表示
  • 願い事を押下
    • 願い事詳細画面に遷移
    • 願い事オブジェクトを連携
  • ボトムビューの表示

書いた願い事の詳細が見れる画面(2回目)

  • 初回
    • 願い事オブジェクトを遷移元から受け取り
    • 願い事に紐づく応援データを取得(データ連携)
  • 応援データを表示
    • コメント
    • 名前
  • 願い事を表示
    • コメント
    • 応援した人の数

願い事を応援する画面(初回)

  • 初回
    • 願い事データをランダムで1件取得(データ連携)
      • できる?
    • 定型文を取得(データ連携)
  • 願い事を表示
    • 内容
    • 名前
  • カード形式で定型文を表示
  • 応援メッセージを選択
    • 登録処理(データ連携)
    • 成功時は成功のメッセージとリロード
    • エラーの場合はエラー表示
  • ボトムビューを表示

ユーザ情報確認画面(3回目)

  • 入力画面
    • 名前
    • アイコン
    • モード
  • 変更ボタン
    • 登録処理(データ連携)
  • ボトムビューを表示

どこにどんなデータを保存するのか?

FireStore

FireBaseのFireStoreに保存することにします

  • ユーザデータのリスト
    • ユーザID(自身のユーザは参照/更新可、他のユーザは参照不可?)
      • 名前
      • アイコン
      • 大人か子供か
  • 願い事リスト
    • ユーザID(自身のユーザは参照可/更新可、他のユーザは参照可)
      • 願い事のリスト
        • 願い事のID
          • 願い事の内容
  • 応援リスト
    • ユーザID(自身のユーザは参照可/更新可、他のユーザは参照可)
      • 応援のリスト
        • 願い事のID
          • 応援内容
  • 願い事の定型文(ユーザは参照可)
  • 応援の定型文(ユーザは参照可)

内部データ

Providerで状態管理

  • ユーザデータ
    • 名前
    • アイコン
    • 大人か子供
  • ログイン状態
    • ログイン
    • 未ログイン
  • 願い事リスト
    • 願い事
      • ID
      • 内容
  • 応援リスト
    • 応援
      • ID
      • 内容
  • 願い事の定型文のリスト
    • 願い事の定型文
      • 内容
  • 応援の定型文のリスト
    • 応援の定型文
      • 内容

不安は解消した?

FireStoreのデータの持ち方が難しい

次回はこちら

コメント

  1. 匿名 より:

    アプリを楽しみにしています!
    七夕だけではなく、日常的に使えそうで面白そうですね!

タイトルとURLをコピーしました