lunduniversity / introprog

Teaching material for "Introduction to Programming using Scala" at Lund University, LTH. http://cs.lth.se/pgk/
142 stars 173 forks source link

adjust blockbattle, preps w more stepwise guidance #370

Closed bjornregnell closed 1 year ago

bjornregnell commented 5 years ago

Issue is based on @hnrklssn email comment (in Swedish): """Iom att jag hade både resurstid och labb såg jag både och, och det var väl samma historia på båda ungefär. Man såg inte hur varje klass och metod hängde ihop med helheten. När de då kom till labbdelen blev det svårt eftersom de inte riktigt fattade vad de hade gjort under förberedelserna, hur deras kod var tänkt att användas. Några av studenterna har problem att tänka på metoder och funktioner i det abstrakta, och letar hela tiden efter en call-site där den anropas, och programmerar mer eller mindre som om metoden var helt inlinead där. De har svårt att greppa att deras metoder skulle kunna användas på flera ställen, i olika kontexter och med olika argument. Något som så klart är svårt att designa, men som jag tror skulle underlätta mycket, var om kodskelettet möjliggjorde mer iterativ utveckling, där de efter varje implementerat ??? kunde testköra och se vad deras kod faktiskt gör. Som jag upplever det nu måste de hålla allt i huvudet hela tiden, vilket de har svårt med eftersom de inte har förstått allt. Typ att man stegvis går från blockmole strukturen till blockbattle-strukturen genom att först göra om Mole till en klass, men bara en instans, och utan keycontrol-klassen. Och efterhand jobba sig mot rätt struktur. Nästan alla jag såg började med att kopiera och klistra in motsvarande object-definition från föregående labb och försöka konvertera till en klass, för att efterhand inse att de nästan inte hade något gemensamt i strukturen. Detta skulle också kunna tydliggöra behovet av varje del de sedan implementerar, så att de i slutändan förstår varför slutproduktens arkitektur ser ut som den gör. Jag är medveten om att det eventuellt skulle göra mångdubbla förberedelseuppgifterna, men redan nu har flera fastnat så mycket att de (enligt egen utsago) lagt över 20 timmar på den här labben och labbförberedelser."""

bjornregnell commented 1 year ago

I think this is mostly due to that some (too many...) start with the lab without really doing the prep exercise in w05. I have made this very clear now and added more guiding text in a bullet in the closing commit. https://github.com/lunduniversity/introprog/commit/b731c036b5b895b6344469415db465c716f0ab41