smeghead

ドメインを純粋に保つ (レガシープロジェクトの改善活動について) (2) ドメインを純粋に保つ

ドメインを純粋に保つ (レガシープロジェクトの改善活動について) (2)

先日、フレームワークの機能を利用する処理に染み込んでいるビジネス概念を抽出して、ドメインに移動して単体テストによって保護された状態にするという「ドメインを純粋に保つ」活動について説明してみました。 ドメインを純粋に保つ (レガシープロジェクトの改善活動について) 上の記事で使ったサンプルプロジェクト…
ドメインを純粋に保つ (レガシープロジェクトの改善活動について) (1) ドメインを純粋に保つ

ドメインを純粋に保つ (レガシープロジェクトの改善活動について) (1)

機能追加や修正を継続的に行なっているPHPの小規模レガシープロジェクトを、独りで運用しながら改善に取り組んでいます。何処を目指して、どうゆう方針で改善を行なっているかを纏めてみようと思いました。継続して運用していくプロジェクトであれば、新規プロジェクトでも応用できる考え方として参考になるのではないか…
結合度と凝集度 free

結合度と凝集度

結合度と凝集度って難しくて理解がぶれてくるので何度か調べている。 結合度というのは、ある機能のまとまり(モジュールだったりクラスだったりライブラリだったり)と、それを外部から利用する際の関連の指標。 凝集度というのは、ある機能のまとまりの実装内部の純粋具合の指標。 — smeghead (@smeg…
PHPで「テスト駆動開発」の写経をしました php

PHPで「テスト駆動開発」の写経をしました

PHP勉強会を観ていたら、「テスト駆動開発」の写経する話があり、学びが多そうだったので、自分でも写経してみました。 テスト駆動開発(amazon) ## 第1部 多国通貨 php-class-diagramを使って各章完了時のソースコードからクラス図を出力してみました。機能追加やリファクタリングの経…