はじめに
プログラミングの勉強を始めて、WEBサービス?を作り一段絡したので、ここまでやってきたことを整理しておく。
あえてQiitaに載せるのは、自分だけ見れる場所だとメモ程度しか残さないと思うので。
作ってみたもの:own-places
作成期間:30時間〜35時間
どんなWEBサービスを作ったか
お勧めの場所を写真と文と地図で投稿して共有できるサービス。
投稿するにはユーザ登録が必要で、他の機能として投稿にタグを付けることができたり、他の人の投稿にお気に入り(サイト上では”行ってみたい”)をすることが可能。
どうしてサービスを作成したのか
WEBエンジニアとして転職する為に、ポートフォリオを作る為作成した。
どうして場所投稿のサービスにしたのか
実際に作る前から以下は決めていて、
- 学習したことを復習しながら作れるもの
- 自分の作りたいもの
- 作りたいものが既にあるかは考えない
場所投稿にした理由は、ネットや雑誌でカフェなどを調べた時、有名な場所に目が行きがちになるが、他にも”こんな場所があるよ!”と個人が紹介する媒体があったら面白いと思ったのが動機。
”SNSでいいのでは?”となるが、自分の中でTwiiterやInstagramでの場所についての投稿は、紹介というより”ここに行ってきました!”という活動のニュアンスのものが多いと思い、場所を紹介する専門の投稿サービス作成にたどり着いた。
どの様にして作ったのか
自分の為にも残しておきたいのでここは順番に箇条書きにする。
今回Laravelを用いて作成し、作成段階で、簡単なHTML/CSS/Bootstarp/PHP、Laravelについては基本的なCRUD操作やユーザ登録の機能について学習ずみ。
- 必要な機能、ページの洗い出し
- 機能として必要となる画像の保存やマップの表示についてどの様に行うか調査
- ER図、ワイヤーフレームを作成
- トップページを作成
- ユーザ登録・ログイン機能、ユーザページを作成
- 投稿・編集機能、投稿・投稿内容のページを作成
※この時点では投稿タイトル、文章、画像のみ - お気に入り機能を作成
- 地図表示のためにGoogleMap APIについて学習
- 投稿内容にマップ(緯度・経度)を追加
- 表示の修正(画像の位置等)
- 追加でタグ機能を付けることにしたので調査
- 投稿内容にタグを追加、タグ検索機能を追加
- パスワード変更機能を追加
- 退会機能を追加
- ドメイン取得などし、EC2で公開
振り返り
反省点:最初の洗い出しが不十分だったこと
これは、最初の洗い出しでユーザ登録ができる、投稿ができるというサービス上の機能面ばかりに目がいってしまい、結果一通り作って操作確認したところ、パスワードを忘れた時や、退会する時の機能がないことに気付き後から追加した。
サービスはユーザ目線でみることが大事とよく言われているが、実際に自分で作ってみて実感した。
良かったこと:0から何かを作ったこと
WEBエンジニアとして転職して会社に入ったとしてもそこには既にサービスがあるので、自分で何を作りたいか考る→作る→サーバに載せて公開、と0から行うことはあまりないと思う。簡単なサービスではあるものの、何もないところから作ったのは良い経験になった。
サービスの今後
タイトルにサービス?と"?"を付けたのは、サービスとして作ったからには実際に使われいることで完成だと思ったから。動機となった”個人のお勧めの場所を知れる”というのも色々な投稿がなければ成り立たないので、今後も改善していき使いやすいサービスにしていく必要がある。
今後の改善点としては、画像が1枚しか投稿できない状態なので複数枚投稿する様にしたり、マップ表示のための緯度・経度は検索の為のマップを用意しているものの、投稿の際には調べた緯度と経度をコピペしてもらう必要があるのでそこを自動入力にする必要があったりと、色々ある。
ただ、HTML/CSS/PHP/Bootsrap/Laravelについては2、3週間で詰め込んだのでまずはそちらの復習をしつつJavascriptのちしきも必要とわかったので、学ぶことはたくさんあるが、学びつつ改善していこうと思う。
最後に
もしここまで読んでくださった方がいたら、長い文章に付き合っていただきありがとうございます。
これがQiita最初の投稿となりますが、今後は技術面での気づきなどあれば投稿していきたいと思います。