Viikkotehtävät
-
Kaikista tehtävistä on ylläpidettävä versionhallintaa git-työkalun avulla gitlab.jyu.fi-palvelussa.
- Tee itsellesi oma yksityinen klooni taí fork valmiista projektipohjasta kullekin
viikkotehtävlle annetusta pohjasta. Luo gitlab.jyu.fi-palvelussa uusi projekti.
Muista valita projektin asetuksista Private.
Jos tulee valittavaksi useampia namespaceja (ryhmiä), valitse omaa tunnustasi vastaava
Lisää projektin jäseneksi (väh. reporter- tai developer-roolissa) käyttäjä tjlahton. Lisääminen onnistuu gitlabissa valinnalla Manage|Members|Invite members. Guest-rooli ei riitä vaan rooliksi on annettava mielellään developer.
Ota pois myös suojaus projektin main-haarasta Settings|Repository|Protected branches|Unprotect
-
Siirry omalle koneelle ja kloonaa viikkotehtävälle annettu valmis projektipohja.
Tämä kannattaa sijoittaa W:-asemalle (sama kuin users.jyu.fi:n tiedostot), jolloin
sovellustasi on helpointa myös testata. Lokaalilta levyltä javascript-sovellusten testaaminen ei onnistu ilman omaa www-palvelinta.
Tässä viikkotehtävä 1:n pohja:
[omatunnus@charra tiea2120]$ git clone https://gitlab.jyu.fi/tiea2120/vt1 Cloning into 'vt1' remote: Enumerating objects: 11, done. remote: Counting objects: 100% (11/11), done. remote: Compressing objects: 100% (9/9), done. remote: Total 11 (delta 2), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (11/11), 7.53 KiB | 1.08 MiB/s, done. Resolving deltas: 100% (2/2), done. [omatunnus@charra tiea2120]$ cd vt1/ [omatunnus@charra vt1]$ git remote remove origin [omatunnus@charra vt1]$ git remote add origin https://gitlab.jyu.fi/omatunnus/vt1.git [omatunnus@charra vt1]$ git add pohja.xhtml README.md tyylit.css vt1.js muokkaa tiedostoja... [omatunnus@charra vt1]$ git commit -a [omatunnus@charra vt1]$ git push -uf origin main Username for 'https://gitlab.jyu.fi': omatunnus Password for 'https://omatunnus@gitlab.jyu.fi': Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 2 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 287 bytes | 143.00 KiB/s, done. Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 To https://gitlab.jyu.fi/omatunnus/vt1.git 64e7a00..95821af main -> main branch 'main' set up to track 'origin/main'. [omatunnus@charra vt1]$
Jos saat windows-koneella virheilmoituksen fatal: detected dubious ownership in repository, niin aja gitin ehdottama komento asian korjaamiseksi: git config --global --add safe.directory .... Tarvittaessa voi kansiopolkuna käyttää *-merkkiä, jolloin git ei herjaile mistään poluista.
Jos saat valituksen: remote repository ... is incompatible with fsmonitor aja komento: git config --global --add fsmonitor.allowRemote true
Gitin oletuseditorin voi vaihtaa esim. nanoksi komennolla: git config --global core.editor "nano"
Halavassa/jalavassa on käytössä hyvin vanha git. Jos esim. push gitlabiin ei vanhalla gitillä toimi, kokeile ensin aktivoida uudempi gitin versio seuraavalla komennolla:
source /opt/rh/rh-git229/enable
Päivitä repoasi jokaisen olennaisen muutoksen jälkeen. Päivityshistoriastasi on oltava nähtävissä, että sovellus on itse tehty.
Toimivan sovelluksesi on löydyttävä main-haarasta.
- Jokaisella viikkotehtävällä on oltava oma repo. Repon on oltava yksityinen (private). Julkiseksi laitettu repo ei kelpaa.
- Gitlabissa voit käyttää myös ssh-avainta, niin vältyt salasanan syöttämiseltä. Valitettavasti tämä ei toimi halavassa/jalavassa.
- Lisätietoja: Ohjelmointi 2 ja Git
Versionhallintaa on ylläpidettävä niin usein, että siitä selkeästi näkee ohjelmakoodin olevan itse tuotettua. Päivitä repoa selvästi useammin kuin kerran päivässä.
- Tee itsellesi oma yksityinen klooni taí fork valmiista projektipohjasta kullekin
viikkotehtävlle annetusta pohjasta. Luo gitlab.jyu.fi-palvelussa uusi projekti.
Muista valita projektin asetuksista Private.
Jos tulee valittavaksi useampia namespaceja (ryhmiä), valitse omaa tunnustasi vastaava
- Jos sait aiemmalla kurssilla viikkotehtävästä huonon arvosanan, voit uusia tehtävän. Aiemmin tehtyjen (vuosien 2021-2023) viikkotehtävien pisteet ovat voimassa vielä ainakin 31.7.2024 asti.
- Jokaisen on toteutettava oma uniikki vastauksensa itsenäisesti. Pari- tai ryhmäpalautukset eivät kelpaa. Viikkotehtävä on vastaavanlainen suoritus kuin tentti..
- Kerran palautettua tehtävää ei voi myöhemmin korjata. Huonosti menneen tehtävän voit uusia, kun tehtävästä tulee tarjolle uusi versio seuraavan kurssin aikana.
Tehtävät palautetaan viikkotehtävähärvelillä.
Vapaasti omassa aikataulussa voi kurssin suorittaa 21.12.2023 alkaen. Tehtävät on ehdottomasti palautettava viimeistään 31.7.2024.
Tehtävät
- Viikkotehtävä 1: Javascript-perusteet
- Viikkotehtävä 2: Document Object Model (DOM) ja tapahtumankäsittely
- Viikkotehtävä 3: Lomakkeet ja validointi.
- Viikkotehtävä 4: Canvas, SVG ja animaatiot.
- Viikkotehtävä 5: Drag & Drop, kartat.
- Viikkotehtävä 6: React.
- Bonustehtävä Bonustehtävän voi tehdä, kun on tehnyt kaikki muut tehtävät
Palautusohje
- Sijoita tehtäväsi users.jyu.fi-palvelimelle. Täydennä toimivan vastauksesi osoite palautuslomakkeelle
- Palauta tehtävä Viikkotehtävähärvelilä
Arviointi
- Tehtävät on jokaisen toteutettava itsenäisesti.
Jokaisen on palautettava oma uniikki vastaus.
Plagiointi on
ehdottomasti kiellettyä!
- Palautettujen vastausten yksilöllisyys tarkistetaan koneellisesti. Identtiset vastaukset hylätään kaikilta palauttaneilta.
- Viikkotehtävän voi valita kolmesta eritasoisesta tehtävästä, joista saa 1, 3 tai 5 pistettä.
- Asianmukaisesta vastauksesta saa tason mukaiset pisteet.
- Toimivasta, mutta pieniä puutteita sisältävästä vastauksesta vähennetään yksi (1) piste. Isompia puutteita sisältävistä tehtävästä voidaan vähentää useitakin pisteitä.
- Halutessaan voi tehdä viikon kaikki kolme tehtävää. Korkein pistemäärä jää voimaan.
- Korkeampia pistemääriä EI VOI SAADA, jos vastaus ei täytä kaikkia alempien pistemäärien vaatimuksia
- Toimimattomasta tai selvästi keskeneräisestä ykköstason vastauksesta saa nolla (0) pistettä. Vastauksen on täytettävä kaikki ensimmäisen tason vaatimukset ansaitakseen yhden pisteen.
- Puuttuvia tehtäviä tai arvosanan nolla (0) saaneita tehtäviä saa olla enintään kaksi kappaletta. Tehtäviä on yhteensä kuusi (6) kappaletta.
- Lisäksi on bonustehtävä jolla voi kerätä lisäpisteitä. Bonustehtävällä voi
korvata yhden puuttuvan viikkotehtävän tai vain korottaa pistemääräänsä.
Lisäpisteitä (0-2) voi saada myös hyvin kirjoitetuista vertaisarvioinneista lähiopetuskurssin aikana. Lisäpisteiden saaminen edellyttää, että on laadukkaasti vertaisarvioinut kaikki tehtävät. Lisäansioksi lasketaan myös, jos on kurssin aikana neuvonut muita kurssilaisia telegram-luryhmässä. Vertaisarviointipisteet lasketaan mukaan vasta hyväksyttyyn suoritukseen eli vähintään ykköseen. Kuusi pistettä pitää saada kasaan viikkotehtävillä ja bonustehtävällä.
- Puuttuvia tai huonosti menneitä tehtäviä voi uusia myöhemmillä kursseilla.
- Kukin viikkotehtävä on kuin tentti.
- Voit uusia tehtävän aina, kun siitä tulee tarjolle uusi versio (vrt. uusintatentti). Tehtäviä uusitaan yleensä kaksi kertaa vuodessa. Jos uusit tehtäviä, niin muista ilmoittautua Sisussa uudelle kurssille.
- Uusittuasi haluamasi määrän tehtäviä ilmoita opettajalle, että kurssisi voidaan nyt arvostella uudelleen.
- Vuosien 2021 - 2023 tehtävien pisteet ovat voimassa ainakin 31.7.2024 saakka.
-
Hyväksytyn suorituksen arvosana (1-5) muodostuu tehtävien
keskiarvosta seuraavan taulukon mukaisesti:
Arvosanataulukko Painotettu keskiarvo Arvosana 1,00 - 1,79 1 1,80 - 2,59 2 2,60 - 3,39 3 3,40 - 4,19 4 4,20 - 5,00 5 keskiarvo = ( vt1 + vt2 + vt3 + vt4 + vt5 + vt6 + bonus) / 6.0
- Keskiarvo lasketaan aina kuuden tehtävän perusteella.
- Puuttuvien tehtävien pistemääräksi lasketaan nolla (0).
- Jos on saanut nolla pistettä useammasta, kuin kahdesta tehtävästä, niin arvosana on hylätty.
- Jos keskiarvo on alle 1,00 niin arvosana on hylätty.
Laske arvosanasi
Laskuri kertoo, minkä arvosanan saat vähintään kurssista yo. laskentaperusteilla.
Keskiarvo: 0
Arvosana: HYL
Käyttäjien kommentit