Småopgaver på forskellige niveauer, i HTML, CSS og Javascript.
Generelt skal de kunne løses på mellem 5 og 45 min.
Formålet med disse opgaver er, at træne det du har lært og vedligeholde din viden. Forhåbentligt vil du efter et stykke tid føle, at du bliver hurtigere og hurtigere til at løse opgaver. At programmere handler ikke kun om forståelse. Det er lige så vigtigt, at være rutineret.
Opgavene er forskellige, men det gælder for alle opgaver, at:
-
du skal bruge
DOMContentLoaded
eller tilsvarende og du skal kode inden for dens scope. -
din kode skal være ordentlig.
Ryk koden ind korrekt. Hvis du på nuværende tidspunkt ikke føler du magter, at holde styr på det, så lad VSCode formatere din fil (CTRL+SHIFT+P og vælg Format Document).
Du må gerne lave kommentarer som kan give overblik over hvordan din kode er struktureret, men lad være med at efterlade udkommenteret kode. Man skal tydeligt kunne se, hvad der foregår i din kode. Hvis du vil beholde små tests og lignende, så gem dem i en undermappe (tilhørende opgaven), som hedder "test". En udkommenteret console.log hist og pist skader dog ikke. -
du skal finde på ordentlige navne til dine variabler og funktioner.
Har du f.eks. en pris-variabel, som refererer til et HTML element, så kald den helstpriceElement
eller lignende.price
alene ville være misvisende i dette tilfælde, da de fleste nok ville tro, at variablen indeholder et tal. -
du skal forsøge så vidt muligt, at definere funktioner til de forskellige handlinger, som f.eks.:
- Til koden, der opdaterer en del af brugerfladen.
- Til koden, der viser/gemmer et element.
- Til koden, der skifter til næste element (næste person, næste billede, næste farve, osv).
Det er IKKE et krav, at du koder udenad, når du løser småopgaver med mindre du har fået andet at vide. Du må bruge alt hvad du har liggende og du må søge på nettet. Du må dog ikke arbejde sammen med andre. Du snyder kun dig selv, hvis du gør det.
Mens du er i gang med at løse en opgave, er det et krav, at du committer på visse tidspunkter, Som eksempel bør du for opgave 1 have minimum føglende commits:
-
Et commit med kommentaren Opgave 1 løsning:
Efter du har løst opgaven, men før du går i gang med at definere funktioner. -
Et commit med kommentaren Opgave 1 struktur:
Efter du har defineret funktioner og finpudset din kode.
(Hvis det er helt naturligt for dig, at definere funktioner løbende, så skal du selvfølgelig have lov at gøre det og du behøver derfor ikke at opdele dine commits som foreslået her) -
Eventuelt et commit med kommentaren Opgave 1 features:
Efter du (eventuelt) har tilføjet ekstra features.
(Det er selvfølgelig ikke et krav, at du tilføjer ekstra features, men hvorfor ikke gøre det, hvis du bliver tidligt færdigt?).
"Jeg glemmer hele tiden at committe" er en rigtig dårlig undskyldning. Find en løsning. Commits lang tid efter deadline betragtes som at du har svært ved at løse opgaven.
Efter hver opgave, skal du kort reflektere over, hvordan det gik. Dette skal du gøre skriftligt i en "Refleksioner" markdown-fil i roden af dit repository.
Her er et eksempel på, hvordan indholdet af filen kunne se ud:
Skabeloner/Refleksioner.md
I "Refleksioner" markdown-filen skal der være en overskrift til hver opgave du ønsker at skrive om, som vist i ovenstående eksempel.
Hvis du ikke blev færdig, skriv kort om hvad der var af forhindringer.
Føler du, at du koder for langsomt?
Har du svært ved at finde kode du kan genbruge?
Mister du overblikket?
osv.
Hvis du syntes det gik godt, så skriv det.
Nævn specielt om du syntes opgaven var nem eller tilpas og fortæl hvad du synes om den type opgaver. Det er IKKE arrogant at sige, at opgaven er nem! Det er et tegn på, at du er rigtig godt med fagligt.
Én til to dage efter opgaven er blevet stillet vil en mulig løsning blive lagt op på GitHub.
Hvis du ikke blev færdig i første omgang, vil jeg råde dig til, at gøre opgaven færdig inden du kigger på løsningen.