Siirry suoraan sisältöön

Selainpuolen teknologiat (5 op)

Toteutuksen tunnus: AL00CB55-3003

Toteutuksen perustiedot


Ilmoittautumisaika

20.11.2023 - 05.01.2024

Ajoitus

08.01.2024 - 30.04.2024

Opintopistemäärä

5 op

Toteutustapa

Lähiopetus

Yksikkö

Liiketoiminta (LAB)

Toimipiste

Lahden kampus

Opetuskielet

  • Suomi

Paikat

20 - 50

Koulutus

  • Tietojenkäsittelyn koulutus

Opettaja

  • Jan-Erik Sandelin

Opetusryhmät

  • Luennot 1 (Koko: 0. Avoin AMK: 0.)

Ryhmät

  • LLTIIT22S
    Tietojenkäsittelyn koulutus 22S Lahti

Pienryhmät

  • Luennot 1

Osaamistavoitteet

Opiskelija osaa
- esittää www -sisältöä dynaamisesti hyödyntäen JavaScript -kieltä ja sen lisäosia
- luoda dynaamisen yhden sivun sovelluksen käyttäen JavaScript -sovelluskehyksiä ja -kirjastoja
- asentaa sovelluspalvelimen ja ylläpitää sitä tietoturvallisesti
- julkaista tietoa ja ajaa ohjelmakoodia sovelluspalvelimella

Toteutustapa ja opetusmenetelmät

Viikoittaiset luennot kampuksella (Lahti) keväällä 2024. Läsnäolo luennoilla on pakollista. Viikoittaiset ohjelmointiharjoitukset.

Ajoitus ja läsnäolo

Luennot keväällä 2024. Läsnäolo luennoilla on pakollista.

Oppimateriaali ja suositeltava kirjallisuus

Oppimateriaali ja tehtävät Moodlen kautta.

Toteutuksen valinnaiset suoritustavat

Jos opiskelija on jo tehnyt toteutuksia hyödyntäen joko Reactia tai Angularia ja REST-rajapintoja, on aihetta ottaa yhteyttä luennoijaan jo ennalta.

Työelämäyhteistyö

Kurssin sisältö on muokattu sisarkurssin (Dynaamisen verkkosivuston toteutusprojekti) tarpeita vastaavaksi ja sisarkurssin sisältötarpeet tulevat yritysasiakkailta, jotka kaipaavat poikkeuksellisen visuaalisia ja logiikaltaan monimuotoisia verkkosivuja (=verkkosovelluksia).

Oppimisympäristö

Opiskelija tarvitsee oman koneen, jos haluaa työskennellä kurssin harjoitusten parissa kotona. IT-opiskelijan konesuositus on riittävä. Kampuksen tietokoneluokkien koneet toimivat hyvin harjoitusten tekemiseen. Suurin osa opiskelijan työstä tapahtuu luentoaikojen ulkopuolella. Ryhmätöitä ei ole.

Opiskelijan ajankäyttö ja kuormitus

Viikoittaisten luentojen lisäksi harjoituksia. Aloitustasosta riippuen tälle kurssille tulee suunnitelmallisesti varata aikaa. Kuormitus riippuu hyvin paljon siitä, miten paljon opiskelija on tuottanut koodia aiemmilla kursseilla. Kaikki kotona tehtävät harjoitukset ovat ohjelmointiharjoituksia ja edellyttävät siten kotona oman tietokoneen käyttöä.

Sisältö

Verkkosivujen rakentaminen dynaamisesti ja interaktiivisesti JavaScriptillä. Kurssilla esitellään toimintamalli, jossa sivun ulkoasu käytännössä määräytyy selaimen JavaScript-koodilla ja palvelin jää ainoastaan tietovaraston rooliin (PHP-kielinen JSON-liittymä tietokantaan). JavaScriptiä käsitellään etenkin kirjastojen käytön ja ongelmanratkaisun perspektiivistä. Kurssin alussa annetaan tietopaketti siitä, millä tavoilla kieli voi yllättää projekteissa, joissa kirjastokoodin lukeminen on usein ainoa vaihtoehto edetä ongelmanratkaisussa. Kurssi etenee projektikurssin aikataulua noudattaen nopeasti TypeScript-kielivariantin käyttöön. Perusasioiden jälkeen kurssi esittelee kattauksen uusimpia Web-teknologioita ja kirjastoja, jotka mahdollistavat täysin animoidut, interaktiiviset verkkosivut. Kurssin loppuvaiheilla opastetaan vielä alkuun mm. interaktiivisten 360- ja 3D-ympäristöjen sekä audion toteuttamiseen verkkosivuilla.

Lisätietoja opiskelijalle: mm. edeltävä osaaminen

Kurssi on suora jatkumo ohjelmoinnin perusteille ja olio-ohjelmoinnille. Kurssin täysi hyödyntäminen edellyttää olio-ohjelmointiosaamista ja ohjelmoinnin käytännönsoveltamistaitoja (algoritmin suunnittelu ja toteuttaminen). Itse suunniteltujen algoritmien sovittaminen tehtävissä annettuihin tavoitteisiin on keskeisessä osassa suuressa osassa tehtäviä. Valmista koodia on osattava lukea ja sen etenemistä seurata. Jonkin olio-ohjelmointikielen hallinta ennalta on välttämätöntä, jotta siirtyminen kurssin kieliin onnistuu. Kurssilla oletetaan, että LABin IT-linjan Olio-ohjelmointi-kurssin esittelemä C# olioparadigma on tuttu ja sillä on tehty vähintään kyseisen kurssin projektikurssilla oliototeutuksia käytännössä. Kurssi edellyttää myös jonkin verran HTML:n ja CSS:n lukutaitoa. Kurssilla varsinaisesti käytettävät kielet ovat JavaScript, TypeScript ja PHP. Jo ennen kurssin alkamista opiskelijaryhmille lähetetään ennakkoon läpikäytäväksi suositeltavaa opetusmateriaalia liittyen JavaScriptin perusteisiin. Kurssin kanssa samanaikaisesti suositellaan käytäväksi kurssit Kolmikerrosarkkitehtuurinteknologiat ja Dynaamisen verkkosivuston toteutusprojekti.

Arviointimenetelmät

Viikoittaisissa ohjelmointiharjoituksissa edistyminen.

Arviointiasteikko

1-5

Hylätty (0)

Opiskelija ei osaa, miten
- esittää WWW sisältöä dynaamisesti hyödyntäen JavaScript-kieltä ja sen lisäosia
- luoda dynaamisen yhden sivun sovelluksen käyttäen JavaScript-sovelluskehyksiä ja -kirjastoja
- asentaa sovelluspalvelimen ja ylläpitää sitä tietoturvallisesti
- julkaista tietoa ja ajaa ohjelmakoodia sovelluspalvelimella

Arviointikriteerit: taso 1: (arviointiasteikko 1-5)

Opiskelija osaa rajoitetusti, miten
- esittää WWW sisältöä dynaamisesti hyödyntäen JavaScript-kieltä ja sen lisäosia
- luoda dynaamisen yhden sivun sovelluksen käyttäen JavaScript-sovelluskehyksiä ja -kirjastoja
- asentaa sovelluspalvelimen ja ylläpitää sitä tietoturvallisesti
- julkaista tietoa ja ajaa ohjelmakoodia sovelluspalvelimella

Arviointikriteerit: taso 3 (arviointiasteikko 1-5)

Opiskelija osaa osittain, miten
- esittää WWW sisältöä dynaamisesti hyödyntäen JavaScript-kieltä ja sen lisäosia
- luoda dynaamisen yhden sivun sovelluksen käyttäen JavaScript-sovelluskehyksiä ja -kirjastoja
- asentaa sovelluspalvelimen ja ylläpitää sitä tietoturvallisesti
- julkaista tietoa ja ajaa ohjelmakoodia sovelluspalvelimella

Arviointikriteerit: taso 5 (arviointiasteikko 1-5)

Opiskelija osaa
- esittää WWW sisältöä dynaamisesti hyödyntäen JavaScript-kieltä ja sen lisäosia
- luoda dynaamisen yhden sivun sovelluksen käyttäen JavaScript-sovelluskehyksiä ja -kirjastoja
- asentaa sovelluspalvelimen ja ylläpitää sitä tietoturvallisesti
- julkaista tietoa ja ajaa ohjelmakoodia sovelluspalvelimella