?
Hallo.
Gute Texteditoren für professionellen Einsatz wie emacs und vim sind dafür bekannt, schwer erlernbar zu sein. GUI-Programme, wie z.B. die IDE Eclipse haben dieses Problem nur in verringertem Maß. Woran liegt das? Emacs und vim bieten eine extensive Dokumentation und Dokumentations-Struktur an, was ihre Funktionalität angeht. Trotzdem ist so gut wie jeder überfordert, wenn er sie zum ersten mal bedient. Das Problem liegt nicht an der schlechten Dokumentation von Funktionen, sondern an der - teilweise beabsichtigten - Informationskargheit im Interface was die zur Verfügung stehenden Optionen betrifft. So kann man z.B. in emacs jede Verfügbare Funktion mit M-x TAB anzeigen lassen, aber ist dennoch nicht klüger, da man (a) schon wissen muss dass es diese Funktion gibt und (b) ihren ungefähren Namen erraten muss, was oft nicht so einfach ist. Erst dann kann man sich den Tastenkürzel merken. Wenn er oft benötigt wird, geht er dann nach einigen Verwendungen ins Muskelgedächtnis über. *
Bei neueren, GUI-Basierten Programmen erhält man nützliche Hinweise, wie z.B. der etablierte unterstrichene Buchstabe, der darauf hinweist, dass dieses Bedienelement mit Alt+Buchstabe aktiviert werden kann. In diesem Fall erhält man sofort den Tastendruck zur Aktion, nicht wie oben nach einer langen Kette von Suchen-Nachschlagen-Merken. Analog zu oben geht die Tastenkombination ins Muskelgedächtnis über, wenn die Funktionalität oft gebraucht wird, d.h. es gibt keinen wesentlichen Geschwindigkeitsverlust, weil oft ausgeführte Aktionen auf natürliche Weise einen autiomatisierten Tastatur-Chord erhalten.
Kontextmenüs adressieren problem (a) von oben: Zu jedem Objekt erhält man eine Liste von möglichen Aktionen. Das hat den Vorteil, dass man die Information schnell (i.d.R. ein Klick) erhält, wenn man sie benötigt, im Gegensatz zum sonst üblichen Lesen der Dokumentation.
Ich frage mich nun, wie diese Konzepte des Interface-Designs heißen, und was der derzeitige Stand der Forschung diesbezüglich ist. Ich hoffe, hier im Programmiererforum gibt es einige, die sich damit eingehend beschäftigt haben.
Meine These ist, dass die schlechte Erlernbarkeit von ansonsten guter Software behoben werden kann, ohne das bestehende Bedienkonzept zu zerstören und ohne Bedieneffizienz einzubüßen.
=============================
* Das rudimentäre Menü von Emacs lasse ich hier außer Acht, da es nur einen Bruchteil der Funktionalität abdeckt und dem Bedienkonzept zuwiederläuft.
http://xkcd.com/378/