Ik zit me een beetje in te lezen als ik JUnit wil gebruiken bije en GUI applicatie. Ik ging er natuurlijk vanuit dat je zo veel mogelijk logica uit je GUI wil houden dus het verrast me ook niet dat ik dat veel zie.
Ik kwam uiteindelijk op het volgende artikel:
The Humble Dialog Box
De bottomline van het artikel vat het als volgt samen:
Hoe is jullie mening hierover en zijn er pro's/con's die ik over het hoofd zie?
Ik kwam uiteindelijk op het volgende artikel:
The Humble Dialog Box
De bottomline van het artikel vat het als volgt samen:
Ik zie in dat je hier goede testable code mee kan krijgen. Maar een ding druist hier in tegen mijn gevoel. Je hebt dus een object/model waar alle logica in plaats vind, en die pass je dus een Interface van de view. Maar voor mijn gevoel wil je de model-objecten helemaal geen referentie naar hun view meegeven. Het kan zo maar zijn dat ik een console applicatie wil maken en helemaal geen view wil hebben. Dan zou ik dus een view moeten implementeren die helemaal niks doet. Voor mijn gevoel zou het toch andersom zijn, namelijk een View welke een Interface van het model met zich mee draagt. Het is namelijk die View welke het object manipuleert en het resultaat wil tonen.1. Create a class for the smart object, and an interface class for the view. Pass the
view to the smart object
2. Develop commands against the smart object, test first. Write your tests against a
mock view.
3. Create your dialog class and implement the view interface on it. Gestures on the
dialog should delegate to commands on the smart object. Calls from the smart
object to the dialog should resolve to simple setter methods.
When you follow these steps, you end up with tested code and a great interface for
driving acceptance tests programmatically.
Hoe is jullie mening hierover en zijn er pro's/con's die ik over het hoofd zie?
Engineering is like Tetris. Succes disappears and errors accumulate.