作成アプリ

Swift初めて半年で、『Twitter』のクローンアプリを作った!

 

てふまる
てふまる
『Twitter』のクローンアプリを作ったよ!!
中の人
中の人
今までは『TableView』だったり『API』『XML』『チャット』『クイズ』『カメラ』などのスキルを習得することに重点をおいて簡易的なアプリを作っていたんだけど、初めて一通りちゃんとしたアプリを作ったから記念の意味でも記事にしておくよ。 

 

その他のクローンアプリはこちら

Swiftで『Tinder』のクローンアプリを作った! その他のクローンアプリはこちら https://tefumaru.com/twitter_clone https:/...
Swiftで『Uber』のクローンアプリを作った! その他のクローンプリはこちら https://tefumaru.com/twitter_clone https://...

 

コードの超ざっくり全容

ファイルの一覧は下の通り!

今まではMVCモデルで『Model』『View』『Controller』の3つに分けていたんだけれど、

UI等の補助の役割を持つ 『ViewModel』 とFirebase(データベース・ストレージ)との処理をまとめた 『API』 の2つのディレクトリを用意することで、もんのすごく書きやすくなって可読性も上がって衝撃だった!!

  

 

実装内容

ログイン、新規登録画面

・画面下のボタンでログイン画面と新規登録画面を行き来できる

・新規登録画面で、画像を選択したら画面に表示させる

ツイート一覧画面

・フォローしているユーザーのツイートのみを表示

・左上に自分のプロフィール画像を表示

・ボタンから『お気に入り』『返信』できるように

ユーザー検索画面

 

・通常時は全ユーザーを表示

・ユーザー名、ユーザーIDの2つで検索ができるようにした

通知画面

・『フォロー』『お気に入り』『返信』『メンション』の4種類の通知を表示

・通知をタップした時、『フォロー』の場合相手のプロフィール画面、それ以外の場合該当するツイート画面に飛ばす

ツイート詳細画面

  

・お気に入り数の反映

・返信の表示 (返信先も明記)

・右上のボタンからアクションシートの表示(自分のツイートかその他かで表示内容を変える)

ツイート投稿画面

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

プロフィール画面

    

・フォロー数、フォロワー数の反映

・自分なら『プロフィール編集ボタン』、その他なら『フォローボタン』にする

・『自分のツイート一覧』『返信一覧』『お気に入りしたツイート』をカテゴリ分け

プロフィール編集画面

・プロフィール編集とログアウトボタン

 

振り返り

今回はリツイート機能だったりシェア機能、DM機能など省いた部分が多かったんだけれど、すごく学ぶ部分が多かった!

てふまる
てふまる
僕の中ではプロの書き方、開発の進め方を知れたのが何よりも大きかった!!
中の人
中の人
アプリの規模が大きくなってくると記述量が増えてきて、メンテナンスだったり機能拡張だったりの時にコードの可読性が下がってくるから、コードを見やすく管理する技術っていうのは本当に大事だなって。

新しいスキルや書き方や進め方を身に付けれた一方で、『まだここができない』『応用でこういうことができそう』っていう自分の欠点と伸び代に気づけたのがよかった

 

初めてしっかりしたアプリを最初から最後まで作れたのでこれを機に一気にステップアップできると思うし、ここからが本番だなって感じがしてます!

 

頑張るぞっ!!!!!