Hi Sven,
I am still a little confused about the terminologies so please give one
last kick into the right direction.
I have loaded the Calculator and try to map thingssaid to the
implementation.
Am 13.02.2015 um 11:04 schrieb Sven Van Caekenberghe:
In the talk at 15:35 min Johan mentions the need of a interpreter and this
method is mentionded several times during the talk.
Browse your Pharo image,.... there is none!
The class is called SpecInterpreter. But this is an implementation detail, not
related to application logic.
Well, no he did not mean the SpecInterpreter he ment the
receiver/interpreter of an action like a mouse click here. And exactly
this link is missing through out the examples.... and makes SPEC so hrad
to understand.
And last but not least, the all examples have no interpreter/control or real
model layer....
But you are looking too far: your domain model is just an object, its behaviour
is the control layer, it uses announcements to signal changes.
Looking at the HP35CalculatorModel implementation I think that is what
you mean. But I honestly would have expected a class naming like
HP35CalculatorApplicationFunction, HP35CalculatorController, or
HP35CalculatorComponent or just HP35Calculator instead of
HP35CalculatorModel...
For me a model is a stupid structure. Somehting that knows what it
contains and how to describe itself,... but has no real functionality or
mechnisms in it.
Extreem example is a DataModel,....
Now since Spec is more a MVVM framework, I assumed that I have to make
the distinction between Control/Businesslogic and Model on my own.
I prefer this distinction because once a project grows it is much eaiser
to navigate, maintian and even port to different architectures like
webclient, server app, desktop app....
ing like the HPCalculator!
I understand the need. I did my part with the HP35, with a clear model and 2
UI's sharing 1 specification as well as unit tests on 2 levels.
But like I said, there are lots of real world examples inside and outside the
image.
How can one find them? I was not aware of the fact that the spec example
HP53 was on smaltlakhub. Somehow it is very difficult to find projects
on Smalltakhub.... all the projects have tags, but somehow I can't find
a search or tool that allows me to search smalltalkhub for certain tags.
You could just start a new repo on smalltalkhub.com or even github.com
Well, I would love, too once I know that I have somehow understood the
basics ;-)
I simply do not want to run into the wrong direction and realize that
all my efforts where for nothing.
And I, and that is even more importatn, do not want to tell newcomers
how to do it and send them into the wrong direction...
Give me some time and I'll try to come up with a little application that
we could use to discuss on.
sebastian