s平面の左側

左側なので安定してます(制御工学の話は出てきません)

2018 年 4 月からやってきたことトピック洗い出し

今年度になってから、ありがたいことにいろいろと挑戦できる機会をもらい、技術的にも様々な(主に Laravel に関する)知見がたまってきた。

いずれ何らかの形でアウトプットしたいので、まずはトピックを洗い出してみた。

トピック

Laravel ~戦略編~*1

  • 2度の新規プロジェクト(Laravel)実装方針策定
  • Laravel 未経験のチームに知見を伝搬していった話
  • ログ出力ポリシーの策定と Laravel 5.6 における設定手順
  • レイヤードアーキテクチャの採用
  • API サーバ実装向けの Laravel カスタマイズ
  • 独自例外の定義・活用

Laravel ~戦術編~

  • Laravel におけるエラーの slack 通知
  • 上記を実現するための Laravel の Exeption Handler カスタマイズ
  • ログフォーマットに LTSV を採用(+設定手順)
  • レイヤードアーキテクチャ採用に伴う Laravel が提供する認証機構のカスタマイズ
  • Laravel で複数の認証を行う(一般/管理画面みたいな分離を 1 つの Laravel アプリケーションでやる)
  • Laravel 向けのJWT 認証(Guard)の実装
  • Laravel / 機能テスト(HTTP テスト)の書き方
  • Eloquent の $dates プロパティで指定する Carbon インスタンスへのミューテートを「使わない」話
  • Laravel で API バージョニングの仕組みを実装

設計に関すること一般

  • API バージョニングについて考えた・議論したこと
  • SPA を作る際の「認可」の設計について考えた・議論したこと
  • API サーバを実装するときにセキュリティで考慮する点

言語など

ツールなど

  • Docker Compose を利用した開発環境構築の自動化
  • Docker Compose で構築したアプリケーションで cron を使う
  • コード静的解析ツールの導入(PHP_CodeSniffer, PHP Mess Detector, PHPStan, Phan)
  • Bitbucket Pipelines で テストカバレッジを出力 → S3にアップロード→ slack 通知
  • Go製のマイグレーションツール導入

すでにいくつかはブログ記事だったり、Qiita 記事だったり、LT だったりの形でアウトプットしているものもあるが。

しばらくはこれをネタ帳として記事を書いていこうと思う。

*1:戦略/戦術の分類は感覚に基づく