Zur Haupt­na­vi­ga­ti­on sprin­gen [Alt]+[0] Zum Sei­ten­in­halt sprin­gen [Alt]+[1]

Gra­phi­sche Be­nut­zer­ober­flä­chen

 

Vier­te Dop­pel­stun­de — Gra­phi­sche Be­nut­zer­ober­flä­chen

Ziele

  • Java: Er­stel­lung einer Ober­flä­che mit dem Scene Buil­der, Er­stel­len einer Con­trol­ler-Klas­se, Um­gang mit Klas­sen und Ob­jek­ten
  • Kon­zept­wis­sen: Tren­nung in Model-View und Con­trol­ler (MVC-Mo­dell1), Lay­out-Kon­zept mit au­to­ma­tisch wach­sen­den Ele­men­ten.

Di­dak­ti­sche Über­le­gun­gen

In den we­ni­gen zur Ver­fü­gung ste­hen­den Stun­den ist es un­mög­lich, die Er­stel­lung von gra­phi­schen Be­nut­zer­ober­flä­chen (GUI) in Java er­schöp­fend zu be­han­deln. Daher wird hier eine kurze Ein­füh­rung in die GUI-Er­stel­lung und Im­ple­men­ta­ti­on eines Con­trol­lers an­hand eines ein­zi­gen Bei­spiels - des Bild­be­ar­bei­tungs­pro­gramms ge­ge­ben. Dies kann als Grund­la­ge für eine wei­te­re Be­schäf­ti­gung der SuS mit der GUI-Pro­gram­mie­rung au­ßer­halb des Un­ter­richts die­nen. Der In­for­ma­tik­un­ter­richt in der Schu­le darf die GUI-Pro­gram­mie­rung nicht in den Vor­der­grund stel­len, da hier viele Spe­zia­li­tä­ten der Pro­gram­mier­spra­che statt grund­le­gen­den Kon­zep­ten er­lernt wer­den.

Da es sehr schwer ist, aus­rei­chend prä­zi­se das Vor­ge­hen im Scene Buil­der zu be­schrei­ben, er­hal­ten die SuS Vi­de­os, die die ent­schei­den­den Schrit­te vor­füh­ren. An­hand die­ser Vi­de­os soll­ten die SuS selbst­stän­dig die GUI er­stel­len kön­nen. Dies kann auch als vor­be­rei­ten­de Haus­auf­ga­be er­fol­gen, um für die Pro­gram­mie­rung mehr Un­ter­richts­zeit zur Ver­fü­gung zu haben.

Die Er­stel­lung des Con­trol­lers fin­det dann im Un­ter­richt statt. Auch hier steht ein Video als An­lei­tung zur Ver­fü­gung. So­bald die erste Ac­tion-Me­tho­de im­ple­men­tiert wurde, kön­nen wei­te­re nach dem glei­chen Sche­ma er­stellt wer­den. Wich­tig ist immer das glei­che Vor­ge­hen: Aus­le­sen der not­wen­di­gen GUI-Ele­men­te, Be­rech­nun­gen durch­füh­ren und dann die Er­geb­nis­se in der GUI an­zu­zei­gen1.

Da die er­stell­ten Bild­be­ar­bei­tungs­al­go­rith­men in ei­ge­nen Klas­sen im­ple­men­tiert sind, ist es sehr ein­fach, von ver­schie­de­nen SuS er­stel­le­te Klas­sen in einer ein­zi­gen GUI zu ver­wen­den. Um ein recht kom­ple­xes Bild­be­ar­bei­tungs­pro­gramm mit vie­len Ope­ra­tio­nen zu er­stel­len, ist es daher mög­lich, die SuS kol­la­bo­ra­tiv an einem Pro­gramm ar­bei­ten zu las­sen.

Als Dif­fe­ren­zie­rung bie­tet es sich hier an, dass schnel­le­re SuS wei­te­re Bild­be­ar­bei­tungs­me­tho­den im­ple­men­tie­ren und in ihre GUI ein­bin­den.

1 Das MVC-Mo­dell sieht ei­gent­lich vor, dass die GUI-Ele­men­te als "Be­ob­ach­ter" von Da­ten­ob­jek­ten ein­ge­tra­gen wer­den. So­bald sich ein Da­ten­ob­jekt än­dert, in­for­miert es alle ein­ge­tra­ge­nen Be­ob­ach­ter dar­über, dass eine Än­de­rung statt­ge­fun­den hat. Das View-Ele­ment (GUI-Ele­ment) soll­te dar­auf­hin die be­nö­tig­ten Daten vom Da­ten­ob­jekt ab­fra­gen. In der Schu­le muss die­ses (auf­wän­di­ge) Ver­fah­ren aber nicht um­ge­setzt wer­den.

Fünf­te Dop­pel­stun­de — Gra­phi­sche Be­nut­zer­ober­flä­chen

Ziel

Java: Aus­le­sen von Wer­ten aus GUI-Ele­men­ten

Di­dak­ti­sche Über­le­gun­gen

In der 4. Dop­pel­stun­de wur­den vom Be­nut­zer Ein­ga­ben nur in Form der Aus­wahl eines Me­nü­punk­tes oder Drü­cken eines But­tons ver­langt. Üb­li­cher­wei­se muss er aber auch Werte in Ein­ga­be­fel­der ein­tra­gen. Der Con­trol­ler muss diese Werte dann aus­le­sen und ver­ar­bei­ten.

Dies wird in die­ser Stun­de mit der Me­tho­de far­ba­en­de­rung(...) ge­nutzt, um dem Be­nut­zer die Mög­lich­keit zu geben, eine Bild­ver­bes­se­rung durch eine An­pas­sung der drei Farb­kom­po­nen­ten durch­zu­füh­ren.

Neue Kon­zep­te kom­men kaum hinzu. Die Um­set­zung er­for­dert al­ler­dings wie­der ei­ni­ge Java-spe­zi­fi­schen Be­feh­le, die von den SuSn nur über­nom­men wer­den kön­nen. Das Kon­zept ist so an­ge­legt, dass wei­te­re ähn­li­che Dia­lo­ge ana­log ein­ge­fügt wer­den kön­nen und das Bild­be­ar­bei­tungs­pro­gramm daher sehr gut er­wei­tert wer­den kann.

Die SuS soll­ten als Ab­schluss einen wei­te­ren Bild­be­ar­bei­tungs­al­go­rith­mus im­ple­men­tie­ren, ein Op­ti­ons­me­nü er­stel­len und den Al­go­rith­mus in der GUI nut­zen. Dabei kön­nen die SuS durch­aus sehr un­ter­schied­li­che Al­go­rith­men um­set­zen. Eine Aus­wahl steht als Ar­beits­blät­ter zur Ver­fü­gung. Da sie un­ter­schied­lich schwer sind, ist auch hier wie­der eine Dif­fe­ren­zie­rung mög­lich.

 

Un­ter­richts­ver­lauf: Her­un­ter­la­den [odt][154 KB]

Un­ter­richts­ver­lauf: Her­un­ter­la­den [pdf][233 KB]

 

Wei­ter zu Er­wei­te­rung: Wei­te­re Bild­be­ar­bei­tungs­al­go­rith­men