Talk Information

Three years on Perl ~ The technology to developing cool web service ~ Accepted #yapcasiaE Vote!

このエントリーをはてなブックマークに追加

Abstract

発表者は,この三年間はてなブログというイケてるPerlのサービスの開発に携ってきました…

Perlの最新を追い求め続けた三年間でした…

なにも分からず,SQLをコピペし続けた数ヶ月…

つらいことも,たのしいことも,みんな分かちあったコードベース…

救いを求め,藁にもすがる思いで,朝も夜も読み続けたオブジェクト指向入門……

偶然発見して,これだと思ったドメイン駆動設計……

苦しみの軌跡と,現在最高の設計を紹介します………!!!!!!!

当時最強のフレームワーク

  • それまでの,社内フレームワーク
  • 鳴り物入りで登場した,当時最強のフレームワーク
  • 社内でも歓迎されたが……

最強のフレームワーク vs 最強の複数人開発

  • 一人でメンテナンスする限界,そして,増える開発メンバー
  • 崩壊するコピペ3回ルールの行方とは……

継続デリバリー派の登場

  • 毎週stagingブランチ作る派 vs stagingブランチはひとつでいいよ派
  • 続々出版される継続デリバリー,その全てがみんな知ってる内容であった……

ORMからの脱却,そして,ORMへの回帰

  • コピペされ続けるSQL
  • さすがにこれはないじゃん感,その先に見たCommon::ネームスペース

Service層の導入

  • コピペ解消層としてのService層と,その設計指針
  • これオブジェクト指向ではないんでは説

オブジェクト指向入門

  • 人類にはクラスは早すぎた
  • オブジェクト指向入門を読んだ人間だけがインスタンスを作れる
  • その実態は,ほぼ全てのメソッドをクラスメソッドで実装する暗黒時代であった

SQLからService層への変換

  • 新しく書くときにちまちまリファクタリング
  • 機械的に書き換えるため,静的解析や,動的解析を導入
  • 必要に迫られてリファクタリングツールを開発 App::PRT (YAPC 2014参照)

そして,ドメイン駆動設計への道

  • Service層の再発見
  • 我々のアーキテクチャは10年前にEric Evansが発見していた
  • 社内でのDDD普及期,勉強会で得た知見

銀の弾丸を拾い続けた3年間を振り返って

  • 現状に満足せず,常により良いアーキテクテクチャを考えることが重要
  • なかなかよいペースで拾い続けることができた
  • 今後もはてなブログは最高のアーキテクチャであり続けます!!!!!!!!

Talk Details

Venue トラックE (607-608)
Starts On 2015-08-21 14:20:00
Talk Category Applications
Language Japanese
Interpretation (En→Ja) NO
Slide Subtitles Japanese
Talk Duration 60 minutes
Material (Difficulty) Level Regular
May we take your photo? allow
May we record your talk? allow

Video

Slide