[Squeak-ev] Re: Workspace oder Image?

Stefan Schmiedl s at xss.de
Mit Nov 17 16:03:06 UTC 2010


On Wed, 17 Nov 2010 01:46:58 -0800 (PST)
"R. Baumann" <baumann-garbsen at t-online.de> wrote:

> 
> Das ist sicher ein guter Hinweis. In Squeak gibt es sogenannte Kategorien,
> und zwar Klassenkategorien und Methodenkategorien. Man könnte, diesem
> Hinweis folgend, eine Klassenkategorie "Eulerprojekt" anlegen und darin eine
> Klasse "Eulerlösungen". In dieser Klasse zu jeder Aufgabe, etwa zu Aufgabe
> 74, eine Methodenkategorie "Euler-074". 
> 
> Zu Aufgabe 74 gibt es drei Methoden, nämlich "faksumme", "kettenlänge" sowie
> die Hauptmethode, welche die gesuchte Lösungszahl errechnet. Aber die beiden
> ersteren müssen in der Klasse Integer implementiert werden, weil sie auf
> ganzen Zahlen operieren, und wie mit der dritten zu verfahren ist, weiß ich
> überhaupt nicht.

Du fragst einen Integer nach seiner faksumme und seiner kettenlänge.
Wen fragst du nach der Lösung der Euleraufgabe?

Das _könnte_ je nach Aufgabe ein Integer sein, aber dann wird es in der
Tat schwierig, den Überblick zu behalten. Deswegen mein ursprünglicher
Vorschlag, eine Klasse je Aufgabe anzulegen. Dort kannst du dann
evtl. "teure" Ergebnisse zwischenspeichern und so Verwaltungskram
erledigen.

	Aufgabe74 new
		faksumme: 42;
		kettenlänge: 56;
		lösung.

und die Methoden würden auf die "richtigen" Implementationen verweisen.

fakSumme: anInteger
	^anInteger fakSumme

Auf die Art hast du einen einheitlichen Zugang für alle Aufgaben und
findest mit ein paar Klicks die Arbeitstiere.

s.