|
|
|
||||||||||
Von "Ant World", "Battlehover" und anderen Computerspielen: Die Teilnehmer der "Einführung in die Programmierung" beeindrucken mit ihren Projektarbeiten.
Am 7.
Februar stellten die Informatik-Studienanfänger der ETH mit viel Einsatz und Motivation
die Ergebnisse ihrer Projektarbeiten vor, die aus der „Einführung in die
Programmierung“ unter der Leitung von Prof. Bertrand Meyer hervorgegangen sind.
Das
Ungewöhnliche an dieser Vorlesung, die im Wintersemester 2005/2006 zum dritten Mal durchgeführt
wurde, ist, dass den Studierenden von Anfang an ein umfangreiches
Software-Rahmenwerk zur Verfügung gestellt wird. Auf diese Weise können selbst
Programmierneulinge beeindruckende Applikationen entwickeln und mehr lernen als
in einem herkömmlichen Einführungskurs.
Faszinierende Projekte
"Yeah", tönt es mehrmals anerkennend aus der zumeist jungen Zuhörerschaft. Zu Recht, denn die Projekte, die im Rahmen der abschliessenden Präsentation der "Einführung in die Programmierung" vorgestellt wurden, können sich wirklich sehen lassen. Acht ausgewählte Projekte wurden von den Teams, bestehend aus je zwei bis vier Studierenden, voller Stolz vor Kommilitonen und anderen Interessierten präsentiert. Dabei herausgekommen sind vor allem Computerspiele, was auch durchaus von der Kursleitung so gewollt ist, da sie naturgemäss die Aufmerksamkeit der Erstsemestrigen fesseln. Neben "Klassikern", bei denen es gilt, feindliche Schlachtschiffe oder Armeen zu besiegen, wurden auch weniger martialische Games und Applikationen entwickelt. "Die verrückte ETH" etwa ist eine elektronische Variante des Gesellschaftsspiels "Das verrückte Labyrinth", "The Game of Life" basiert auf der populären Umsetzung der Automaten-Theorie "Conways Spiel des Lebens", und der "Funktionsplotter und -parser" erstellt Funktionsgraphen. Darüber hinaus gibt es natürlich noch die Tüftler, die lieber ihre eigenen Programme schreiben, um die in ihren Augen verbesserungswürdige vorgegebene Software besser zu strukturieren oder gar zu ersetzen.
Die Projektarbeit dauerte nur knapp sechs Wochen und bildete den krönenden Abschluss der Einführungsveranstaltung, die sich über das gesamte Wintersemester 2005/2006 erstreckte. Die letzten Wochen waren sichtlich arbeitsintensiv. Die vier Jungs, die das Strategiespiel "Ant World" entwickelt haben, das durch sein professionelles Design verblüfft, haben jedenfalls eine schlaflose Nacht verbracht, um noch letzte Fehler auszumerzen und ein optimales Resultat liefern zu können.
Im zweiten Teil der Veranstaltung, dem so genannten "Object-Oriental Bazaar", zogen Studierende und Besucher dann von Gruppe zu Gruppe und liessen sich auf dem Laptop die Ergebnisse der anderen Teams vorstellen. So bekamen auch die vielleicht weniger spektakulären Projekte eine Chance, und ein reger Austausch zwischen den Gruppen konnte stattfinden.
"Inverted Curriculum" - die Einführung ins Programmieren der anderen Art
Wo der Informatikneuling normalerweise zuerst mit Programmierkonstrukten aus der imperativen Programmierung (z.B. lokale Variablen, Zuweisung und Kontrollstrukturen) vertraut gemacht wird und erst später objekt-orientierte Konzepte wie Klasse, Objekt, Methodenaufruf und Klassenschnittstelle erlernt, hat der Einführungskurs an der ETH, der von Prof. Bertrand Meyer unterrichtet wird, einen völlig anderen Ansatz gewählt. Unter dem Namen "The Inverted Curriculum", der übersetzt in etwa "der umgekehrte Stundenplan" bedeutet, wird eine "Black Box"-Vorgehensweise genutzt, d.h. die Studierenden werden von den "grossen" objekt-orientierten Konzepten zu den "kleinen" imperativen Konzepten geführt, ohne die zugrunde liegenden "grossen" Konzepte von Anfang an im Einzelnen verstehen zu müssen. Dazu wird den Studierenden von Anfang an ein umfangreiches Software-Rahmenwerk an die Hand gegeben, aus dem sie schöpfen können.
Dank der objekt- und komponentenbasierten Technologien, auf die sich der Kurs stützt, wird es den Kursteilnehmern ermöglicht, Softwaremodule zuerst aus der Konsumentenperspektive zu betrachten, bevor sie als aktive Produzenten allmählich selbst Anwendungen erkunden und modifizieren. Durch den Gebrauch von Traffic und anderen Bibliotheken, die auf Eiffel basieren, können sogar Anfänger beeindruckende Applikationen entwickeln.
Für Michela Pedroni, Doktorandin an der Professur für Software Engineering und Projektleiterin von Traffic, liegen die Vorteile des "Inverted Curriculums" insbesondere in seiner Flexibilität: "So weit ich weiss, gibt es keine andere Fachrichtung, bei der die Studierenden so unterschiedliche Vorkenntnisse mitbringen wie in der Informatik. Daher ist diese Vorlesung, bei der jeder entsprechend seinem Kenntnisstand arbeitet, sehr hilfreich." Auch die Wichtigkeit des methodischen Vorgehens, z.B. die Tatsache, dass Code gut dokumentiert und strukturiert sein muss, werde durch das "Inverted Curriculum" gut vermittelt. Für die Einführung im nächsten Jahr ist laut Michela Pedroni geplant, die verwendete Software weiter zu vereinfachen und die visuellen Komponenten noch stärker hervorzuheben.
Stephanie Balzer, Doktorandin und Moderatorin der Projektpräsentation, gibt zu, dass die Vorlesung zunächst auch eine abschreckende Wirkung haben kann: "Wir wissen, dass sich einige Teilnehmer zu Beginn der Vorlesung überfordert fühlen, da sie mit extrem viel konfrontiert werden. Der Kurs ist daher so aufgebaut, dass die Black Boxes, also die unbekannten Elemente, schrittweise "geöffnet" und erklärt werden."
Ein erfolgreiches Konzept, das sich bewährt hat
Dass der "Inverted Curriculum"-Ansatz auch tatsächlich Erfolg hat und der Grossteil der Erstsemestrigen die Herausforderung meistert, zeigen die Befragungen, die seit Einführung der Veranstaltung vor zwei Jahren unter den Studierenden durchgeführt werden. Bei vielen Studienanfängern ist die Vorlesung sehr beliebt, und sie geben an, durch diese Art der Einführung viel gelernt und grosse Fortschritte im Programmieren gemacht zu haben.
Die vorgestellten Projekte belegen, dass die Studierenden mit viel Eifer an die Projektarbeit herangegangen sind und Spass daran hatten. Auch der Humor kam in den Präsentationen nicht zu kurz: Bei dem Spiel "Murphy’s Law, Bertrand’s Rage" erhält derjenige die meisten Punkte, der es schafft, den Dozenten einer Informatik-Vorlesung durch gezieltes Stören am meisten zur Weissglut zu bringen. Und bei "Battlehover" kann neben dem feindlichen Schiff auch der Eiffelturm versenkt werden. Anspielungen auf real existierende Personen und Programmiersprachen können nicht ausgeschlossen werden!
Weitere Informationen finden Sie auf der Homepage der Vorlesung unter http://se.inf.ethz.ch/teaching/ws2005/0001/index.html
Downloaden können Sie "Ant World", "Murphy's Law" und weitere tolle Spiele, die im Wintersemester 05/06 entwickelt wurden, unter http://se.inf.ethz.ch/download/games/05_06
Wichtiger Hinweis:
Diese Website wird in älteren Versionen von Netscape ohne
graphische Elemente dargestellt. Die Funktionalität der
Website ist aber trotzdem gewährleistet. Wenn Sie diese
Website regelmässig benutzen, empfehlen wir Ihnen, auf
Ihrem Computer einen aktuellen Browser zu installieren. Weitere
Informationen finden Sie auf
folgender
Seite.
Important Note:
The content in this site is accessible to any browser or
Internet device, however, some graphics will display correctly
only in the newer versions of Netscape. To get the most out of
our site we suggest you upgrade to a newer browser.
More
information