※ 現在は『Swift』から『SwiftUI』に移行しています。
その他のクローンアプリはこちら



コードの超ざっくり全容
ファイルの一覧は下の通り!
今まではMVCモデルで『Model』『View』『Controller』の3つに分けていたんだけれど、
UI等の補助の役割を持つ 『ViewModel』 とFirebase(データベース・ストレージ)との処理をまとめた 『API』 の2つのディレクトリを用意することで、もんのすごく書きやすくなって可読性も上がって衝撃だった!!


実装内容
ログイン、新規登録画面



・画面下のボタンでログイン画面と新規登録画面を行き来できる
・新規登録画面で、画像を選択したら画面に表示させる
ツイート一覧画面

・フォローしているユーザーのツイートのみを表示
・左上に自分のプロフィール画像を表示
・ボタンから『お気に入り』『返信』できるように
ユーザー検索画面



・通常時は全ユーザーを表示
・ユーザー名、ユーザーIDの2つで検索ができるようにした
通知画面

・『フォロー』『お気に入り』『返信』『メンション』の4種類の通知を表示
・通知をタップした時、『フォロー』の場合相手のプロフィール画面、それ以外の場合該当するツイート画面に飛ばす
ツイート詳細画面



・お気に入り数の反映
・返信の表示 (返信先も明記)
・右上のボタンからアクションシートの表示(自分のツイートかその他かで表示内容を変える)
ツイート投稿画面


・新規ツイートか返信かで、プレイスホルダー・返信先の表示・ボタンを変える
プロフィール画面





・フォロー数、フォロワー数の反映
・自分なら『プロフィール編集ボタン』、その他なら『フォローボタン』にする
・『自分のツイート一覧』『返信一覧』『お気に入りしたツイート』をカテゴリ分け
プロフィール編集画面

・プロフィール編集とログアウトボタン
振り返り
今回はリツイート機能だったりシェア機能、DM機能など省いた部分が多かったんだけれど、すごく学ぶ部分が多かった!
新しいスキルや書き方や進め方を身に付けれた一方で、『まだここができない』『応用でこういうことができそう』っていう自分の欠点と伸び代に気づけたのがよかった。
初めてしっかりしたアプリを最初から最後まで作れたのでこれを機に一気にステップアップできると思うし、ここからが本番だなって感じがしてます!
頑張るぞっ!!!!!