2006-08-03 Interface Oriented Design from Pragmatic Programmer(via babieさん) etc http://pragmaticprogrammer.com/titles/kpiod/index.html