Separate Aufgaben werden separaten Objekten zugeordnet, was die Programmierung vereinfacht und eine vielfache Anwendung einzelner Aufgaben zulässt. Somit werden die Programme sehr kurz und die Anwendung wird sehr schnell.
Hier ein kleines Beispiel:
Wenn Sie folgende Aufgabe lösen wollen:
(4 + 5) * (3 + 2)
Dann müssen Sie dem Computer folgende Anweisungen sagen:
1.Addiere 4 + 5
2.Schreibe das Ergebnis auf Blatt 1
3.Addiere 3 + 2
4.Schreibe das Ergebnis auf Blatt 2
5.Multipliziere die Zahlen auf Blatt 1 und 2
6.Schreibe das Ergebnis auf Blatt 3
Das würde in Smalltalk ganz einfach so aussehen:
| ergebnis1 ergebnis2 ergebnis3 ergebnis4 |
ergebnis1 := 4 + 5.
ergebnis2 := 3 + 2.
ergebnis3 := ergebnis1 * ergebnis2.
Eine Erweiterung dieses Beispiels:
Sie möchten das Ergebnis mit 45 vergleichen.
Abhängig davon soll die Zahl 0 oder die Zahl 1 aufgeschreiben werden.
Dies würde dann so aussehen:
ergebnis3 = 45
ifTrue: [ergebnis4 := 1]
ifFalse: [ergebnis4 := 0]
Einfache Erläuterungen über Computersprachen im Vergleich, anhand dieses Beispiels, sind in dieser Präsentation zu erforschen - download: Programmierung eines Computers - ( J. Belger)
Einen guten Einblick über die ersten Programmierbegriffe und Anfänge in der Smalltalksprache gibt diese Übersicht von Serge Stinckwich und Damien Cassou. "Smalltalk"
Das Besondere:
Smalltalk ist rein objektorientiert, reflexiv und implizit getypt und vollkommen offen.