研修内容を振り返る 2020.04~2020.05
まえがき
みなさんこんにちは、サーバサイドエンジニアの大川です。自分は2020/03/09からアンテクで働かせていただいています。前回の記事に引き続き4月から5月にかけての自分が研修内容と実際に実施した内容・振り返りなどを一か月毎に区切って記事にしたいと思います。(前回の記事はこちら→https://anteku.jp/blog/develop/%e7%a0%94%e4%bf%ae%e5%86%85%e5%ae%b9%e3%82%92%e6%8c%af%e3%82%8a%e8%bf%94%e3%82%8b-2020-04/)
ご注意
- 本内容は研修を受けた自分が感じた主観であり、弊社の意向と異なる可能性があります。
- ご入社いただいたみなさんに必ず本研修を受けていただくということではありません。
- 研修内容に関してはメモを取っていましたが実際の内容と異なる可能性があります。
- 情報セキュリティの観点から一部実名を伏せて記載することがあります。
2020.04の自分のレベル
前提情報として2020.04時点での自分の知識レベルを簡単に書いてみます。
- Laravelの環境構築を自力ですることができる。
- LaravelのMVC構造を経験している。
- SQL文を実行したことがある。
研修のサポート
2020.04の記事と同じですが、毎日上司の方とzoomを用いて10分~30分程度のミーティングを行いました。また、弊社のSlackにある技術的な内容を質問できるチャンネルで詰まった部分の相談に乗ってもらったりしました。
2020.05までの主な研修内容
- DBとLaravelの関係性を理解しよう。
- 前回から作成している「計算ドリルアプリ」にユーザ認証機能を追加してみよう。
- 既存Webサービスのテーブル設計とSQLを考えてみよう。
研修内容をちょっとだけ深堀り
DBとLaravelの関係性を理解しよう。
マイグレーションの経験やDBに格納されているデータの取得、表示などの基礎部分を経験しました。Laravelの公式ドキュメントを確認しながら実際にマイグレーションを実行しとにかく慣れることを目標としました。
前回から作成している「計算ドリルアプリ」にユーザ認証機能を追加してみよう。
先月から作成している研修用Laravelアプリにユーザ認証機能を付与します。Authを用いた認証機能を付与し、Authの振る舞いを経験します。
既存Webサービスのテーブル設計とSQLを考えてみよう。
現在すでに世の中で利用されているWebサービスの一つの機能を上司の方と選び、当該の機能全体や個々のページを表示するにはどの様なテーブルが必要か、どの様なSQLを実行すれば必要なデータを取得することができるかを考えます。
得た知識
- LaravelアプリとMySQLのDBとの紐付け方
- マイグレート方法
- テーブルのレコード削除を物理削除から論理削除にする方法
- 認証機能の付与方法
- セッションの利用方法
- 実運用されているDBの設計時の流れ
苦労した点
- マイグレーションファイルの記載方法
苦労した点をちょっとだけ深堀り
マイグレーションファイルの記載方法
技術書やLaravelの公式ドキュメント通りに実施するなら問題なくマイグレートできるが、少し応用するとエラーが連発してしまいました。特にdown側の記載を忘れたり、記載されていても完全に元に戻せる様に記載されていなかったりでロールバックをしてもエラー、マイグレートをしてもエラーとなってしまいました。検証用にLaravelアプリを作成しスクラップアンドビルドを繰り返す毎にミスは減っていきました。
さいごに
入社から一ヶ月経過し、超基礎部分は着々と積み重なってきている感じはしますが、逆に習得することが多すぎて焦っていたことも思い出しました。次の記事は2020.06までの研修内容をまとめたいと思います。