I dunno, I always thought objects were about managing state. If an object does nothing except provide a method, why can't the method just be a free function instead?
InvoiceFetcher.FetchInvoice()
PaymentApplier.ApplyPayment()
just seems terrible.
Re:The Failures of “Intro to TDD”
by lowbloodsugar on Thursday June 18, 2015 @08:58PM
(#9742508)
Because Java. At least I can use an interface to define the function's specification, and then use that in mocks. On the one hand, it seems very different to what I learned about OOP twenty odd years ago, but on the other, it makes for extremely well designed and easy to understand code.
you're not alone. http://steve-yegge.blogspot.cz/2006/03/execution-in-kingdom-...
Re:The Failures of “Intro to TDD”
by marcosdumay on Thursday June 18, 2015 @12:04PM
(#9739468)
On Java and Java-like languages, objects are also a good option for providing namespaces.
[1] http://c2.com/cgi/wiki?PrinciplesOfObjectOrientedDesign