★★ロードマップ 2020/07



2020/06の分

noel-ingenieur.hateblo.jp



1ヶ月半経ったので見直し。

目的

サービス開発で自走でき、 コードを書いて設計できること

そのために行うことを (番号). (項目)
=> (具体的な行動) - (注力項目)



優先度A

(1) OOPのベストプラクティスを身につける
=> Tweetクローン系Appを素早く、構造を意識して書き直す。

  • 単一責任とSkinnyController
  • Unit, Featureテストを書く

(2) AWSに慣れる
=> CI/CD系AppとTDD構成Appのデプロイ、削除を繰り返す。

  • 反復で作成/破壊の反復
  • EC2, RDS, S3, EBS


(3) Laravel
=> Tweetクローン系Appを素早く、構造を意識して書き直す。

  • Github読み込み
  • デザインパターン (Repositoryパターン, DIコンテナパターン)
  • ビジネスロジック
    • Eloquent使用 (Models)
    • DBクエリビルダ (Repositories)
    • それ以外 (Services) API call, mail
  • Requestクラス
  • 抽象化 (Contract)
  • mockery
  • Factory, Faker
  • Custom Exception

=> Eloquent, クエリビルダの棲み分けは以下のURL参照

https://github.com/alexeymezenin/laravel-best-practices/blob/master/japanese.md


www.nyamucoro.com



(4) ER図作成 (基本設計, 詳細設計)
=> 自社サービスのモックで。 => VSCode上で、draw.ioを用いて。

  • 第2正規化、第3正規化



注目教材

Laravel x Vue



www.techpit.jp

弱点
  • メールテストツールであるMailHogの使い方
  • メールサービスであるSendgridを使った実際のメール送信方法
  • Googleアカウントを使ったログインを可能にするLaravel Socialiteの使い方
  • デバッグツールであるLaravel Debugbarを使ったSQLの改善方法
  • Laravel Mix
  • クロージャ(無名関数)
  • トレイト



Nuxt x Firebase

www.techpit.jp



React x Ruby

www.techpit.jp



(5) GithubでPR出す
READMEの日本語訳から慣れていく



優先度B

(*) Docker

  • docker-compose.ymlの構成


(*) CI/CD

  • GUIコンパネでの設定
  • config.yml


(*) PHP基礎 (オブジェクト指向基礎)
- 所持書物 [abstract, interface]
- trait


(*) Ngrok&Guzzle


(*) 基本情報の復習

  • ネットワーク基礎 (これが大きな弱点)


(*) Linux
- 所持書物で手を動かす
- VirtualBoxマシン内 or Dockerコンテナ内


(*) git の苦手操作
- git-flow, github-flow
- rebase -i - resolve conflict,


(*) JavaScript (ES6)
- 所持書物
- Github読み込み
- Vue(Nuxt)でSPA


(*) 得意言語の環境構築をどこでもできるように。 - プライベートリポジトリ作成 (PHP, rails, Vue.js)

(*) 基本情報の復習



優先度C

  • HTTPリクエスト/レスポンス

noel-ingenieur.hateblo.jp