Siirry suoraan sisältöön

Palvelinpuolen www-ohjelmointi (5 op)

Toteutuksen tunnus: TT00CJ65-3003

Toteutuksen perustiedot


Ilmoittautumisaika

01.12.2024 - 13.01.2025

Ajoitus

13.01.2025 - 30.04.2025

Opintopistemäärä

5 op

Toteutustapa

Lähiopetus

Yksikkö

Tekniikka ja liiketoiminta

Toimipiste

Kupittaan kampus

Opetuskielet

  • Suomi

Paikat

15 - 40

Koulutus

  • Tieto- ja viestintätekniikan koulutus
  • Tietojenkäsittelyn koulutus

Opettaja

  • Tuomo Helo

Ryhmät

  • PTIVIS23W
    Ohjelmistojen kehittäminen ja Tietojärjestelmät
  • PTIETS23swis
    Ohjelmistojen kehittäminen ja tietojärjestelmät

Tavoitteet

Opintojakson suoritettuaan opiskelija:
tuntee palvelinpuolen ohjelmoinnin keskeiset teknologiat ja ratkaisut.
osaa ohjelmoida www-sovellusten palvelinpuolen logiikan ja tiedon tallentamiseen liittyvät ratkaisut jollakin keskeisellä skriptauskielellä.
ymmärtää www-sovellusten ohjelmistoarkkitehtuuriaosaa hyödyntää sisällönhallintaohjelmistoa tai sovelluskehystä www-sovelluksen kehittämisessä.
osaa käyttää tehokkaita kehitystyökaluja.

Sisältö

Palvelinpuolen skriptauskielen opetteleminen.
www-sovellusten ohjelmistoarkkitehtuurin perusteet.
Sovelluksen integroiminen tietokantaan.
Sisällönhallintajärjestelmän tai sovelluskehyksen hyödyntäminen.
Kehitystyökalujen käyttäminenpienimuotoisen www-sovelluksen kehittäminen.

Oppimateriaalit

Kurssikirjat:

Get Programming with Node.js
Jon Wexler
Manning Publications
1st edition (March 15, 2019)

Kirjaa ei valitettavasti ole saatavana TUAMK:n kautta e-kirjana. Kirjastossa on vain muutamia painettuja kopioita.

Kirja on myös jo hieman iäkäs, joten joudumme muokkaamaan siinä esitettyä koodia ja ratkaisuja kurssin aikana. Kirja on kuitenkin muuten erittäin sopiva kurssikirjaksi.

Node.js for Beginners: A comprehensive guide to building efficient, full-featured web applications with Node.js
Ulises Gascón
Packt
Toukokuu 2024

Muu materiaali selviää opintojakson aikana

Opetusmenetelmät

- kirjallisuuden ja muun oppimismateriaalin lukeminen
- osallistuminen luennoille
- ohjelmointi opettajan johdolla
- itsenäinen ohjelmointi
- osallistuminen ryhmätyön tekemiseen

Tenttien ajankohdat ja uusintamahdollisuudet

Ei tenttiä.

Toteutuksen valinnaiset suoritustavat

Opiskelija voi suorittaa opintojakson osoittamalla osaamisensa opintojakson aiheista esimerkiksi tekemillään työnäytteillä. Osoittamisesta täytyy sopia opettajan kanssa opintojakson 4 ensimmäisen viikon aikana.

Opiskelija voi myös ahotoida opintojakson vastaavalla muualla oppilaitoksemme hyväksymässä oppilaitoksessa suoritetulla kurssilla. Asia kannattaa laittaa vireille heti opintojakson alkaessa.

Opiskelijan ajankäyttö ja kuormitus

45 h kontaktiluentoja (Jokainen 3h = 2h opetusta ja 1h henkilökohtaista työskentelyä opettajan läsnäollessa)
4 h harjoistustöiden esitystä ja seurantaa
40 h harjoitustyön valmistelu
48 h henkilökohtaiset harjoitustehtävät

Sisällön jaksotus

Opintojakso perustuu 15 ohjattuun oppituntiin, 7 henkilökohtaiseen harjoitukseen, joissa kussakin on useita tehtäviä, sekä ryhmätyöhön.
*
Ryhmätyö tehdään 3-4 opiskelijan ryhmässä. Ryhmätyön toimeksianto julkaistaan ??kesken kurssin.
*
Kurssin suunniteltu sisältö:
*
Kurssin esittely ja kehitysympäristön luominen
Node.js
NPM
ES6 moduulit
Express Web Framework ja MVC
http-pyyntöjen reititys ja käsittely
Näkymät ja mallit
Virheidenkäsittely
Ohjaimet
Mallit
CRUD ja tietojen pysyväistaltiointi
Käyttäjäistunnot ja todennus
Sisään- ja uloskirjautuminen
Valtuuttaminen
*
Demoissa käytetään kolmea oppituntia.
*
Ryhmätyö arvioidaan 15 minuutin mittaisessa arviointitilaisuudessa, jossa ryhmä esittelee työnsä ohjaajalle. Jokaisen jäsenen on selvennettävä panoksensa tulokseen. Myös lähdekoodi on esitettävä.

Arviointiasteikko

H-5

Arviointimenetelmät ja arvioinnin perusteet

Opintojakson kokonaismaksimipistemäärä on 120.

Maksimissaan 70 pistettä 7 henkilökohtaisesta harjoitustehtävästä, 30 pistettä harjoitustyöstä ja 20 pistettä luentoläsnäoloista.

Opintojakson arviointiskaala on seuraava:

Pisteitä vähintään -> Arvosana

0 -> 0
40 -> 1
56 -> 2
72 -> 3
88 -> 4
104 -> 5

Huomaa seuraava lisäehto: hyväksyttävään suoritukseen tarvitaan vähintään 20 pistettä henkilökohtaisista harjoitustehtävistä ja 10 pistettä harjoitustyöstä.

Läsnäolopisteet annetaan seuraavan skaalan perusteella:

Läsnäoloprosentti käytännön- ja teorialuennoilla -> pisteitä

20% -> 5
40% ->10
60%->15
80%->20

Osa henkilökohtaisista harjoitustehtävistä tehdään käytännöntunneilla yhdessä opettajan kanssa. Näin läsnäolo niillä karruttaa myös harjoitustehtäväpisteitä.

Demokerroilla on oltava läsnä. Läsnäolo demoissa ei karruta läsnäolopisteitä. Poissaolo demoista aiheuttaa 25 % vähennyksen opiskelijan näihin demoihin palauttamien tehtävien pisteisiin. Myös tehtävien palauttaminen myöhässä aiheuttaa 25 prosentin vähennyksen. Tehtäviä ei oteta enää vastaan opintojakson päättymispäivän jälkeen. Opintojakson päättymispäivän jälkeen ei myöskään anneta korvaavia tai täydentäviä tehtäviä. Opiskelija täytyy huolehtia siis siitä, että hän saa kerättyä eri suorituksista riittävästi pisteitä opintojakson aikana.

Hylätty (0)

Opiskelija ei ole opintojakson aikana onnistunut keräämään läpäisyyn riittävää pistemäärää. Näin ollen hän ei ole pystynyt osoittamaan sellaista osaamista, jonka perusteella voitaisiin antaa hyväksyttävä arvosana.

Arviointikriteerit, tyydyttävä (1-2)

Opiskelija tuntee Node.js ajoympäristön toimintaperiaatteita ja soveltamisalueita
Opiskelija tietää, kuinka konfiguraatiotiedostaja voidaan hyödyntää web-sovellusten kehittäisessä ja käyttöönotossa
Opiskelija tuntee keskeiset Web-sovellusten kehittämiseen liittyvät kysymykset
Opiskelija tietää, mikä on web-sovelluskehys
Opiskelija tuntee MVC-arkkitehtuurimallin perusperiaatteita
Opiskelija tuntee keskeisiä web-sovellusten ohjelmoinnissa tarvittavia ohjelmakirjastoja
Opiskelija osaa hyödyntää tehtäviin sopivia työkaluja
Opiskelija osaa ohjelmoida yksinkertaisen dynaamisen www-sivuston web-sovelluskehystä hyödyntäen

Arviointikriteerit, hyvä (3-4)

Opiskelija tuntee Node.js ajoympäristön toimintaperiaatteita ja soveltamisalueita
Opiskelija osaa hyödyntää konfiguraatiotiedostaja web-sovellusten kehittäisessä ja käyttöönotossa
Opiskelija tuntee keskeiset Web-sovellusten kehittämiseen liittyvät periaatteet ja kysymykset sekä osaa toteuttaa niihin liittyviä ratkaisuja
Opiskelija osaa hyödyntää web-sovelluskehystä
Opiskelija hallitsee MVC-arkkitehtuurimallin perusperiaatteet ja osaa toteuttaa niitä käytännössä
Opiskelija osaa käyttää keskeisiä web-sovellusten ohjelmoinnissa tarvittavia ohjelmakirjastoja
Opiskelija osaa hyödyntää tehtäviin sopivia työkaluja
Opiskelija osaa ohjelmoida dynaamisen www-sivuston web-sovelluskehystä hyödyntäen
Opiskelija osaa toteuttaa käyttäjien autentikoinnin, istunnot ja pysyväistaltioinnin
Opiskelija on hyvät valmiudet osallistua web-sovellusta kehittävään projektiin.

Arviointikriteerit, kiitettävä (5)

Opiskelija tuntee Node.js ajoympäristön toimintaperiaatteita ja osaa arvioida sen soveltuvuutta tehtävään
Opiskelija osaa hyödyntää konfiguraatiotiedostaja web-sovellusten kehittäisessä ja käyttöönotossa
Opiskelija hallitsee keskeiset Web-sovellusten kehittämiseen liittyvät periaatteet ja kysymykset sekä osaa toteuttaa ja arvioida niihin liittyviä ratkaisuja
Opiskelija osaa hyödyntää web-sovelluskehystä tehokkasti ja arvioida sen soveltuvuutta tehtävään
Opiskelija hallitsee MVC-arkkitehtuurimallin perusperiaatteet ja osaa toteuttaa niitä käytännössä
Opiskelija osaa arvioida ja käyttää tehokaasti web-sovellusten ohjelmoinnissa tarvittavia ohjelmakirjastoja
Opiskelija osaa hyödyntää tehokkaasti tehtäviin sopivia työkaluja
Opiskelija osaa ohjelmoida dynaamisen www-sivuston web-sovelluskehystä hyödyntäen
Opiskelija osaa suunnitella ja ohjelmoida dynaamisen www-sivuston, jossa on käyttäjien autentikointi, istunnot ja pysyväistaltio
Opiskelija on erinomaiset valmiudet osallistua web-sovellusta kehittävään projektiin.