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
-
PTIVIS23WOhjelmistojen kehittäminen ja Tietojärjestelmät
-
PTIETS23swisOhjelmistojen 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.