Mach ich doch gerne

. Achtung es wird lang
Also ein Test der auf HTML und JavaScript zum Beispiel aufbaut, kann man schwer vorhersagen wie es sich verhalten wird. Zwar gibt es möglichkeiten, die Person zu "zwingen" JavaScript einzuschalten und andere Sachen. Doch ist es weiterhin möglich, dass die jeweilige Person über JavaScript Manipulationen das Testverhalten manipuliert oder sich die Lösungen anschaut die ja im JavaScript meist Codiert sind. Aber diese Art reicht, wie gesagt, für die meisten "Teste Dich" - Tests. Ist es aber was ernstes, ein "echter" Test, wäre es zu unsicher.
Ein "echter Test" (einer der nicht manipuliert werden soll), ist halt ein Java Applet wohl das schlauste. Gehen wir mal davon aus, man macht den Test mit einem Flash: Man kann bei jeder Frage den Flash anhalten und mit sehr viel Zeit nachschauen was die Lösung ist. Hier könnte man mit Hilfe der Serverseite zwar eine Kontrolle einbauen, bei der sich der Server merkt wann der Test angefangen wurde und wann er aufgehört hat und so einen Kontrolle macht. Dies ist, meiner Meinung nach, aber viel zu kompliziert (man muss auf der Serverseite eine Scriptsprache verwenden und kann nicht das mit Flash machen), aber möglich.
ASP.NET / PHP ist ähnlich wie bei JavaScript. Nur das hier kaum Manipulationen möglich sind, wenn die "Programme" abgesichert sind gegen Falscheingaben und ähnliches. Es ist somit schon sehr gut und ähnelt einem Applet - also ist es hier eigentlich eher eine Frage was man besser kann. Eines der Nachteile, die mir jetzt einfallen ist die Anzeige der gebrauchten Zeit für den Test zum Beispiel.
So und ein Applet ist ja nichts anderes als ein echtes Programm auf der Client Seite. Somit ist an sich fast alles möglich. Der Benutzer verliert keine Zeit mit dem verschicken der einzelnen Resultate zum Server, sondern diese können im Applet gespeichert werden oder im Hintergrund immer wieder verschickt werden (ja es gibt "Ajax" - aber das ist ne ganz spezielle Geschichte, lasse ich mal aussen vor). Darin sehe ich einfach den Vorteil, Du kannst die gebrauchte Zeit sehr detailliert anzeigen, kein Zeitverlust durch verschicken, mehr Möglichkeiten für Simulationen und mehr. Klar geht das meiste auch mit viel HTML, JavaScript, CSS und dahinter ASP.NET / PHP ... aber ich denke mit einem Applet bist Du als Entwickler schneller und es ist eine sicherere Sache. Du musst Dich weniger darum kümmern die einzelne Person zu erkennen etc. Da ja jeder der den Test macht, ein Applet bekommt. Dieses kann sich beim Server mit einer ID regestrieren (bzw. kriegt die vom Server zugeteilt) und gut ist. Es gibt zwar auch Sessions bei den Serverseitigen Sprachen für Webanwendungen, doch hier gewichtet für mich der Nachteil des wartens bis die Resultate immer wieder verschickt werden, mehr.
So... was hab ich noch vergessen

... man kann denk ich fast alles schreiben, kommt sehr auf die Art des Tests an. Was mir grad noch einfällt: Es ist ja möglich, wenn es kein Applet / Flash ist, alle Fragen auf einer Seite darstellen... Doch ich denke das ist halt nicht mehr der Stand der heutigen Prüfungstechniken. Heutzutage will man pro "Seite" eine Frage, man will diese markieren können, zur nächsten Springen, eine Übersicht über alle Fragen haben, zurück springen... etc. pp.
Also mal kurz zusammengefasst (es ist meine persönliche Meinung und lasse mich GERNE belehren!):
Applet / zum Teil Flash:
- Simulationen einfach realisierbar
- man muss nicht stehts warten als Benutzer bis die Daten verschickt sind
- wie ich finde, kann man einfacher Funktionen anbieten, mit denen ein Benutzer zur nächsten Frage springen kann, markieren, auflisten, etc.
- für "echte" Tests. Solche die eine echte Aussage treffen müssen und vielleicht auch zu einem Papierchen führen (Zertifikat, Bestätigung, etc.)
HTML, JavaScript, CSS (darunter fallen für mich auch ASP(.NET), PHP und ähnliche Sprachen, da diese fast sein müssen meist)
- für simplere Tests
- einfacher zu machen (wenn keine Simulationen und ähnliches vorhanden ist!)
- joa mehr fällt mir hier nicht ein... ist halt für simple Sachen um einiges (!) schneller zu realisieren!
Kann sein, dass ich einiges vergessen habe, aber bin grad mal aufgestanden. Werdet ihr mir sicher verzeihen!
Gruss,
Gregor
p.s.: Entschuldigt bitte alle Rechtschreibefehler und ähnliches. Bin frisch aus dem Bett... Werde den Text später nochmals nachlesen ! Danke!