📆

Laravel+MUI+React+TypeScriptに入門する[1]

2022/12/01に公開

※エンジニア各位。基本情報すら持ってないから、僕の記事を参考にするのはおすすめしない
※この記事は読み飛ばして大丈夫

著者の環境

  • Windows 10
  • Chrome
  • WSL2
  • Docker

まえがき

なぜこれらの技術が必要なの?

転職して、業務で必要になった。
今まで生PHP、生JSは結構書いてきた(爆弾発言)が
LaravelとReactを現案件で初めて業務で使うことになった。
結構便利だけど、わからないことも少なくない。ボクハポンコツ

この記事で何をやるの?

環境を構築し、一般的なCRUDだけを実装することで、理解度の向上とコピペで利用可能なアレコレを作成したい。
(基本ひとりごとのアドベントカレンダー&自分用のメモとしてやっていくが、あわよくばツッコミコメントとか頂けたらありがたい)

一応、この記事の内容はフレームワークについて、なんとなく知っている人向け。

つまり、【初心者さんでもフレームワークひとつ知っていれば読める記事】を目指す。

やること

  • ふわっとつくるものを決める
  • 最低限のドキュメント作成
  • 環境構築
  • DBマイグレーション
  • 実装
  • テスト
  • 並行して記事を書く

やらないこと

  • 環境構築外のインフラ関連(AWSなど)
  • セキュリティのアレコレ
  • 血眼になるレベルのチューニングとかリファクタリング

やるかどうか決めてないこと

  • テストコードの作成、自動テスト
  • どっかにデプロイ

ふわーっとつくるものを決める

思いつくまま機能について考える

社会人1年目の終わりくらいに作ったものをもう一度、クォリティアップして作ろう。

昔、カラオケ行ったときに歌う曲に困ることが多かった。
そこで、自分が歌える曲一覧があれば便利だなって思って作ったことがある。

それを再び作っていく。

  • ユーザがログインできる機能が欲しい
  • 楽曲の一覧が欲しい
  • 楽曲のジャンルもわかるといいな
  • 例えばアニメの曲ならアニメのタイトルがわかるといいな
  • マイブーム曲(最近はまってるかどうか)がわかるといいな
  • 他人に見せる用のページも欲しいな

他にも、つけたら面白そうな機能(フォルダ分けみたいな)が思いついたけど、あんまり機能膨らませるつもりはないのでここまで。

………気のせいかもしれないが、多対多がない…?
んー……まあ、いっか…?

必要な情報を考える

ユーザ

  • 名前
  • 性別
  • 都道府県
  • 誕生日
  • パスワード
  • メールアドレス
  • 電話番号
  • 自己紹介文

ここまでの個人情報がいるのかって?
いや、「まったく要らない」けど、フォーム作成の練習にしたいかなって。

楽曲

  • 曲名
  • アーティスト名
  • コンテンツ名
  • ジャンル名
  • マイブームかどうか
  • 登録したユーザが誰か
  • 歌詞のURL
  • 動画のURL

都道府県

  • 都道府県名

コンテンツ

  • コンテンツ名

ジャンル

  • ジャンル名

※都道府県とジャンルについてはテーブルとレコードだけを作成し、管理画面は作成しない。全ユーザー共有とする。
(……したい人がいたら、そのうち掲載するであろうGitHubのリポジトリをフォークして、改造すればいいと思うよ)

次回、環境構築をしていく

以上。

Discussion