初学者が2ヶ月でポートフォリオを作ってみた 第2章

こんばんは!今回は、プログラムの学習が終わった人向けに、ポートフォリオを作成するには、どうやって進めればいいか記事にしたいと思います。

ポートフォリオをスムーズに作成するにはまず、準備が必要です。「え!また準備!?」と思うかもしれませんが、これから書くことをしっかりやっていれば、アプリ作成も効率的かつスピーディーに進められます。是非参考にしてみてください!

アプリ作成に取り掛かる前にやるべきこと

  1. どんなアプリを作成するか文書化する。

  2. アプリのデザインを作成する。

  3. テーブル設計を完成させる。

  4. 必須機能と追加したい機能を書き出す。

  5. タスクの洗い出し。(issueの作成)

  6. スケジュールを立てて、作成完了日を決める。

それぞれの項目について、なぜ必要なのか、取り掛かる時のポイントについてお話します。

1、 どんなアプリを作成するか文書化する

ポートフォリオを作成する前に、作成するアプリをはっきり文書化することが大切です。以下の項目について自分なりに書き出してみてください。

  • 一言でいうとどういうアプリか

  • サービス概要

  • 開発動機(どうして作成したいと思ったのか)

  • アプリの機能

  • ターゲット(アプリを利用する人)

  • 利用の流れ

これらをクリアにすると、
開発段階で迷いが生じない(ブレない)し、どのような機能が必要か想像しやすくなります。

👍ワンポイントアドバイス
ある程度アイデアが文書化したら人に説明してみましょう。友達や家族など、身近な人に説明してたくさんそのアイデアについて突っ込んでもらうのです。考慮しないといけない点だったり、新しいアイデアだったり、自分だけでは気づけなかったことが発見できるだけでなく、人に話すことでアイデアをクリアにすることができます。

2、 アプリのデザインを作成する。

前章でも少しお話しましたが、アプリ作成前にUIデザインを予め決めておくと、UI作成後の機能実装がとってもスムーズにできます!

デザインを最初に決めておけば、後は何も考えずに機械的にcssやtailwindなどでスタイルを当てるだけなので結果的に楽です。

アプリ作成中に、デザインを決めずにcssを編集しながらUIを決めることは、時間の無駄なので絶対にしないようにしましょう!

UIデザインは、Figmaがおすすめです。

3、 テーブル設計を完成させる

アプリではどのようなデータを取り扱って、どこにデータを格納するか最初に設計しておきましょう。

例えばユーザーごとにアカウントを持つTodoアプリの場合、以下のようにUserテーブルとTodo情報テーブルが必要になります。

Todoテーブル設計

開発の途中にテーブルの設計を変えると、コード全体も変更する必要がありかなり改修が面倒です。
また、機能作成する際にどこからデータを取得すればよいか、どこに格納すればよいかいちいち考えずに、表を都度確認すればよいので、頭を無駄に使わずに済みます。

4、 必須機能と追加したい機能を書き出す

アプリを利用する上で必須の機能と、追加したい機能に分けてリストアップしていきます。
このとき1番で明確にした利用の流れをイメージしながら、機能を考えていくと自ずとどんな機能が必要か思い浮かぶと思います。
(例えば、Todoアプリで新規作成する場合は、新規作成ボタン→新規作成フォームでデータ入力→保存ボタン→新規Todoの表示というように考える感じです!)

必須機能:ログイン機能、編集内容の更新機能など、アプリとして無いと成り立たない機能。

追加したい機能:その名の通りなくても困らないけど、アプリの機能として備えたいもの。(チャット機能や画像アップロード機能など)

5、 タスクの洗い出し(issueの作成)

次に全てのタスクを書き出してみましょう。
私がタスクを書き出した時は、以下をポイントに書き出しました。

  • 作成したデザインを元に、作成すべきUIコンポーネント(送信用ボタンUI、選択フォーム、入力フォームなど)

  • 機能ごとに作成するページ(Todoアプリの場合は、編集ページ、詳細ページ、Todo一覧ページなど)

ここで、2番で作成したデザインが大活躍します。デザインを書いてあれば、視覚的にどんなボタンを用意して、どういったページを作成すべきかわかります。

とにかく自分が思いつくタスクをすべて書き出してみましょう。もし漏れがありそうと思ってもとりあえず大丈夫。
一旦全て書き出したらGit hubのissueで、タスク管理しましょう。開発都度、漏れていたタスクがあったら都度issueに追加すれば、必ず見返すので忘れることはありません!

6、 スケジュールを立てて、作成完了日を決める。

タスクも全て洗い出してissueも作成できたら、いよいよスケジュールを立てましょう!
まず、4番で洗い出したタスクを並べて、それぞれどれくらいの工数で完了するか書き出してみます。

工数の立て方ですが、1日に自分が開発できる時間を1人日とします。
私の場合、1日4時間を目安としていたので、1人日4時間としていました。
例えば、新規登録画面のUIを作成するタスクに対して2時間で終わると想定して、0.5人日。というように、タスクごとに工数をつけていきます。ここは余裕を持った工数でOK!
最後に、それぞれの工数を全て合計すると、大体何日間で終わるか目安がわかります。

スケジュールを立てる目的としては、スケジュールどおりにやるというようりは、ゴールを明確にすることです。
終わりが見えずにがむしゃらにやるよりも、ゴールがわかっていたほうが断然モチベーションが保てるので、スケジュールを立てて自分の完成目処を把握しましょう!

私のスケジュール表抜粋

👍ワンポイントアドバイス
私は、タスク管理としてgitのKanbanを利用していました!4番で洗い出したタスクを全てissue化すると、それを利用してTodoリストのようにタスク管理ができるのです。

私の利用方法としては、”To do for this week”にその週完了したいissueを登録。開発し始めたもの、途中のものについては”In Progress”に登録。issueが解消できたら”Done”に登録していました。
In ProgressからDoneに移すときの気持ちよさといったら!
これだと可視化しやすくモチベーションも保ちやすいので、ぜひ皆さんもgitのKanbanを利用してみてください😊

私のKanban


この記事が気に入ったらサポートをしてみませんか?