DTU 
 

 

02362: Projekt i software-udvikling (f21)

Uge 8 (online- og live-undervisning): Inputvalidering og regulære udtryk
 
 

Her er informationerne og materiale til online- og live-undervisning af kurset i uge 8. Hovedemne af forelæsningen er regulære udtryk. Vedr. projektet er der et overblik over hele softwaren, dens opbygning og sammenspillet mellem komponenterne. Og der er en video som fortæller hvordan man komme af med de der duplikater i koden (se visnigsopgave V03) ved en refactoring af koden.

 

Derudover er det vigtigt at få løst praktiske problemer med databasetilkytning og at læse spilleplader med Gson, så at grupperne er godt på vej vedr. visnigsopgave V04a og visnigsopgave V04b, som skal afleveres efter påske.

 

Hvis grupperne vil, kan de også gerne vise deres afleveringsopgave afleveringsopgave A3 til underviseren eller hjælpelærere. Men der kommer skriftligt feedback efter påskeferiene.

 

Organisation

Kurset starter kl. 13 med et kort live-møde på ugens kanal (Uge 08) på kurset på Teams. Derefter skal I se nogle videoer med præsentationer, som I kan finde på denne her side.

 

Ekkart vil være live på Teams hele tiden fra kl. 13 til kl. 17, så at I kan stille spørgsmål. Og hjælpelærerne ville være der fra kl. 15 til kl. 17 for at mødes med jer i gruppelokalerne på Teams.

 

Tidsplanen er:

  • kl. 13:00: Opstart med et live-mødet på kanal "Uge08" på kursets Team med en kort præsentation af dagens emner og en kort live-diskussion.

     

  • Derefter skal I først se videoerne PiSU L08.a, PiSU L08.b og PiSU D08.a.

     

    Videoerne PiSU L08.a, PiSU L08.b om regulære udtryk er baseret på dagens Powerpointpræsentationen PiSU-L08.pdf.

     

    Bemærk at der bliver stillet nogle spørgsmål (småopgaver) om regulære udtryk i video PiSU L08.a, som I gerne må bruge 10-15 minutter på (gerne i grupper); de bliver så diskuteret under live-delen (fra kl. 14:45).

     

    Afhængigt af hvor langt I er kommet med videoerne kan I se video PiSU D08.1b og PiSU P08.2 inden live-delen som starter kl. 14:45.

     

  • kl. 14:45: er der et live-møde med hele klassen igen. Der kan I stille spørgsmål om forelæsningen og projektet. Men først og fremmest bliver spørgsmålene fra videoen PiSU L08.a diskuteret.

     

  • Fra ca. kl. 15:00 skal I arbejde i grupper igen i gruppelokalerne på kursets team. Først og fremmest skal I komme godt i gang med visnigsopgave V04a og visnigsopgave V04b; de resterende videoer kan I også se senere (da de giver mere overblik og indblik i projektet, dets opbygning og nogle praktiske programmeringsaspekter).

     

  • Under øvelses- og gruppearbejdsdelen kommer hjælpelærerne forbi jeres grupper, og I kan også tilkalde dem eller Ekkart via dokumentet Hjælpeønsker_Uge08.doc som ligger på ugens kanal.

     

    Hjælpelærerne vil også kigge på aflevering A3, hvis grupperne er parat til at vise den.

     

  • Fra kl. 16:45 mødes vi live igen med hele klassen på kanalen "Uge08" for at svare på spørgsmål og runde af.

     

Nedenfor kan I finde alle videoer til dagens undervisning i den anbefalede rækkefølge og nogle korte kommentarer.

 

Forelæsning

Efter live-mødet på Teams kl. 13.00 starter forelæsningsdelen med videoerne nedenfor.

 

PiSU L08.a

PiSU L08.a: Regulære udtryk: Idé og begreber

Videoen motiverer regulære udtryk og diskuterer begreberne bagved. Den er baseret på Powerpointpræsentation PiSU-L08.pdf (slide 1 - 17). Det anbefales at den bliver åbnet ved siden af videopræsentationen (hvis man har to skærme).

 

PiSU L08.b

PiSU L08.b: Regulære udtryk: Brug i Java

Videoen diskuterer hvordan man kan skrive regulære udtryk i Java og hvordan man kan tjekke om nogle strings matcher dem. Videoen er baseret på dagens Powerpointpræsentation PiSU-L08.pdf (slide 19 - 21 [22-23 opgaver V4a/V4b]). Det anbefales at den bliver åbnet ved siden af videopræsentationen (hvis man har to skærme).

 

PiSU D08.1a (fra f20)

PiSU D08.1a: Overblik RoboRally-Projekt:
Del 1 (fra f20)

Videoen give et konceptuelt overblik over RoboRally-projektet og softwarens opbygning. Videoen er faktisk fra forår 2020 og baseret på sidste års projekt; men strukturet burde være den som jeres projekt til aflevering V4a/V4b skulle have (baseret på jeres løsning til V3 kombineret med roborally-1.4.0, som I fik udleveret i uge 6).

 

Tavlenoter med tilføjninger fra videoen findes her:

 

 

De to sidste videoer kan I se en anden gang. De dykker lidt dybere ned i softwaren.

 

PiSU D08.1b (fra f20)

PiSU D08.1b: Overblik RoboRally-Projekt:
Del 2 (fra f20)

Videoen baserer på det konceptuelt overblik fra PiSU D08.1a og relaterer det til softwaren, som er også fra forår 2020 og er baseret på sidste års projekt; men da I jo skriver jeres egen kode (baseret på V3 og roborally-1.4.0), er detaljerne ikke så relevante.

 

 

PiSU P08.2

PiSU P08.2: Refactor Opgave V3

Denne video viser hvordan man kan komme af med den duplicerede kode (som vi brugte til at komme til en hurtig løsning af visingsopgave V3) igennem en refactoring. Ideen er at brugerens valg af et kommando fra de optionelle kort kan repræsenteres i spillepladens tilstand.

 

 

Omkring 14:45 samler vi os med hele klassen igen på kursets Teamskanal "Uge08" til et live-møde. Der diskuterer vi de eksempler som blev stillet i den første video. Derefter kan I stille spørgsmål vedr. opgaverne, projektet eller dagens forelæsning.

 

Hvis I har tid, kan I også se dagens resternde videoer ovenfor (PiSU D08.1 og PiSU P08.2) inden kl. 14:45; ellers kan I se dem senere.

 

Projekt- og øvelser

Efter live-mødet (ca. 15:00 ) skal I mødes i grupperne. Hjælpelærere og underviseren kommer forbi gruppelokalerne på Teams og I kan også tilkalde dem, hvis I har brug for hjælp. Det vigtigste i dag er, at I kommer godt i gang med visingsopgaverne V4a/V4b. Men hvis I vil, kan I gerne vise jeres afleveringsopgave A3 til underviseren og hjælpelærerne.

 

Og som hele gruppe skal I planlægge og koordinere jeres videre arbjede på visningsopgaverne V4a og V4b..

 

Yderlige informationer

 

[RegExp:Vogel] Regular expressions in Java - Tutorial (Lars Vogel): http://www.vogella.com/tutorials/JavaRegularExpressions/article.html

 

[RegExp:JT] The Java™ Tutorials: Regular Expressions: https://docs.oracle.com/javase/tutorial/essential/regex/intro.html

 


[JDBC:Basics] Javadoc JDBC: Basics: https://docs.oracle.com/javase/tutorial/jdbc/basics/

 

[JDBC: Prepared Statements] JDBC: Prepared Statements: https://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html.

 

[JSON] JSON: https://www.json.org/

 

[Gson] Gson: https://github.com/google/gson/blob/master/UserGuide.md

 

Ekkart Kindler (), 21. marts 2021