Author: Felix Leipold
-
Dead Object Frameworks
I just came up with a new categorisation of application frameworks, which funnily enough places rails and most of the hibernate based java approaches in the same category: dead object framework. What do I mean with that? Well being all eagerly object orientated our domain is nicely modeled in classes, whatever language we choose. In…
-
Lessons learnt from using LaTeX
It has been a while since I last used LaTeX. And things have moved on. I wanted to write a paper as well as preparing some slides. I also had to include vector graphics and bitmaps as well as source code. So this is what I learnt: Use pdfLaTeX! It produces PDF straight away and…
-
Mockito to the Rescue
After all the abuse in my previous post, I feel a bit guilty. Luckily Mockito provides a way out of that problem by allowing hamcrest matchers being used to verify arguments. Here we go: verify(listener).propertyChange( (PropertyChangeEvent)argThat( new HasEqualState( new PropertyChangeEvent(holder, “value”, “Old”, “New”)))); It is not nice, but it works. Of course I also had…
-
Hallmark of the Stupid: PropertyChangeEvent
What troubles me with java is, that the implementors of its standard library utterly failed at setting an example. Java developers don’t know how to do proper christian oo, because every time they peek into the library sources they see C-ish hacks. Today I realised that PropertyChangeEvent is not implementing equals based on its value.…
-
Schöne Wörter
Muss gerade mal festhalten, dass “halbseiden”, “überspannt” und “altbacken” schöne deutsche Wörter sind, die sich so nicht ohne weiteres ins Englische übersetzen lassen.
-
Musings on Encapsulation vs. (De)composition
The standard dogma of OO-design is, that you should certainly not allow access to the internals of an object to the outside world. Instead you are to expose operations on that type. Generally there seems to be a consent in my current environment that getters and setters are evil, as they do indeed expose internal…
-
Embrace the Power of Unix
fortune | xargs cowsay
-
What Units to Test?
What to cover? In my previous post I dismissed the notion that it is necessary to test every class of your system in isolation. I argued that this is fixing the protocols at all layers of your application and thus making refactorings that shuffle responsibilities around more expensive. Perryn rightly pointed out that the refactoring…
-
Zimmergenosse
Das hier habe ich heute zwischen meiner Wäsche gefunden: Von unten sah es so aus:
-
Test Sclerosis – The Trouble with Unit Tests
Your typical system, written in a nice object-oriented way performs its task using a number of collaborating objects that send methods to each other. Ignoring some of the complexities like objects actually creating new objects in response to message, we can draw a diagram like the one below: Each arrow represents a method call. Now…