いっきのblog

技術とか色々

Laravel Meetup Tokyo Vol.10で「Laravelを始めてからDDDを実践するまで」について発表してきた

どうも、くずき(@kzkohashi)です。
先日「Laravel Meetup Tokyo Vol.10」で発表してきたのでその内容と他の方の発表について書いていこうと思う。

laravel-meetup-tokyo.connpass.com

発表資料

Laravelを始めてからDDDを実践するまでの過程について書いた内容。
なぜこの内容にしたかというと、そもそも自分はコードの書き方とか設計思想をぼんやりしか持っていなく、以下のようなことで悩んでいた。

  • 設計する際に毎回設計内容がブレてしまう
  • フレームワークに依存する設計にしてしまっている(FWの恩恵を受けないのは論外だけども)
  • 設計について他の人と深い議論ができてない

ようは自分がいいなって思う設計を考えられてないってので悩んでいて、設計(今回だとDDD)について「理論」だけではなく、「実践」することで学習のイテレーションを回したいなって考えていた。

補足

  • EmailValue Objectに外部も関係しそうな振る舞いを使っている例はそもそも設計的にいいのか怪しい
  • クリーンアーキテクチャ気味に書いてたつもりだけど、色々混同してるっぽいのでそこらへんは参考にしないほうがいい

と、恥ずかしながら怪しいところばかりで・・。

逆に質問した内容

「実際、DDDを実践してどうでした?」とLaravel Meetupの主催者であるytake氏に聞いてみた。
ザックリ書くと(若干忘れたので間違ってたら補足くだせい)、

  • 要件に対して実装みれば大体わかる
  • パフォーマンス問題についてはクリーンアーキテクチャを実践していて、そもそもEloquentを使っていないのもあるけど困ったことがない

DDDを本格的に実践している方が言っていたので、もっと深くやりたいなと思いました。

反省点

  • DDD全くわからない人向けには不親切な資料になってしまった
  • わかる人にも中途半端なないようになってしまった
  • つまり、タイトルをとりあえず実践してみようぜ!!!的な実践することに特化した感じにすればよかった
  • 直前にスライド増やしたのもあって、練習通りの時間じゃなかった(19分で終わるはずが4分オーバー・・すいません)

Laravel環境で取り入れているテストTips4選

SCOUTERでCTOやってられる、@kotamats氏の発表。
E2Eのテストする際に便利なAPIspecや、 Golang界で人気なTable Driven Testなどの内容。
資料もみやすいし、Table Driven Testはなかなか熱そうなテストで面白そう。

[ GitPitch ] kotamat/pitch-20180308-laravel-meetup/master

そのあと、今回使用した資料作成ツールについてのブログも書いてた。
ソースコード書くときは使いたい!!

techblog.scouter.co.jp

Eloquentの使い方を考え直してみた(LT枠)

いわずとしれた、zuckey_17氏の発表。
すごくわかる。最初の方とか自分もwithとか便利なのあるの知らず、まじつらだった。

LumenでのAPI E2Eテストの実装例 (LT枠)

若干競合会社(書いてて気づいたw)で働いていられる、@shaka0maru氏の発表。
apidocはよさそう!最近swaggerで疲弊してきたし。

Laravelから学びレガシーと闘いはじめた(LT枠)

同じ苗字の大橋さんである,@blue_goheimochi氏の発表。
途中に差し込まれるphperkaigiネタが面白すぎて、それしか覚えてないけど・・、どうやってレガシーなコードをチームごとに落とせるかっていうことがよかった。後から気づいたことだけど、phperkaigi2018のスタッフだから差し込んでたのか・・。

全体的な感想

  • 会場提供者であるistyleさんが技術的におもしろいことばかりしてる会社だった
  • クラフトビールよかった(提供: 転職ドラフト)
  • 初めてLaravelのコミュニティに参加してみたけど、みんないいひとでよかった
  • 20分は長いようで短い