Appearance
Yleiset
Osaamistavoitteet
Opiskelija ymmärtää ohjelmistotekniikan full stack -käsitekokonaisuuden sekä osaa toteuttaa perustason web-sovelluksen back ja front endin valituilla ohjelmointiteknologioilla. Opiskelija kykenee hyödyntämään full stack –sovelluksen kehittämisessä edistyneitä tekniikoita sekä automatisoituja työkaluja full stack –sovelluksen kehittämisen ja ylläpitämisen tukena.
Sisältö
- Full stack -konsepti: front end ja back end -käsitteet, full stack –arkkitehtuurit.
- Full stack –sovelluksen peruskomponentit ja rungon toteuttaminen.
- Tietorajapintojen (API), tietokantojen ja protokollien hyödyntäminen.
- Front endin ja back endin välinen kommunikaatio.
- Autentikaatio ja autorisointi (käyttäjien tunnistus ja käyttöoikeuksien hallinta).
- Rajapintadokumentaation (API-dokumentaation) automatisoitu tuottaminen
- Saman back end –sovelluksen hyödyntäminen useassa front end –sovelluksessa
- Edistyneiden tietokantaominaisuuksien kytkeminen back end –sovellukseen
- Reaaliaikainen tiedonsiirto
- Full stack – ohjelmistoprojektin testaaminen ja tekninen hallinta (CI/CD)
Arviointikriteerit
- Arviointikriteerit, tyydyttävä (1)
Opiskelija ymmärtää full stack –sovelluksen osa-alueet. Opiskelija kykenee ohjatusti toteuttamaan yksinkertaisia full stack –sovelluksia valituilla teknologioilla.
Opiskelija ymmärtää osaa perustasolla hyödyntää edistyneitä tekniikoita full stack –sovelluksen kehittämisessä. Opiskelija tuntee erilaisia automatisoituja työkaluja, joita voidaan hyödyntää full stack –ohjelmiston kehittämisen tukena.
- Arviointikriteerit, hyvä (3)
Opiskelija osaa monipuolisesti hyödyntää eri full stack-tekniikoita sekä toteuttaa itsenäisesti full stack –sovelluksia tehtävänannon mukaisesti.
Opiskelija osaa sujuvasti hyödyntää full stack –sovelluksen edistyneitä tekniikoita kehitystyössään. Opiskelija osaa ohjatusti hyödyntää erilaisia automatisoituja työkaluja full stack –kehityksen tukena.
- Arviointikriteerit, kiitettävä (5)
Opiskelija kykenee itsenäisesti toteuttamaan haastavia full stack –sovelluksia valitsemillaan tekniikoilla. Opiskelijan tuottamissa full stack –sovelluksissa on tarkoituksenmukainen arkkitehtuuri, joka palvelee tuotetun ohjelman ylläpidettävyyttä ja jatkokehitystä.
Opiskelija osaa kattavasti hyödyntää full stack –sovelluksen edistyneitä tekniikoita kehitystyössään. Opiskelija osaa hyödyntää tehokkaasti ja itsenäisesti erilaisia automatisoituja työkaluja full stack –ohjelmiston kehittämisen tukena.
Asennettavat ohjelmistot
Python
Varmistetaan että python on asennettu ja sen versio on vähintään 3.10
Python
Lataa ja asenna Pythonin uusin tarjolla oleva versio. Vaikka Pythonia voi koodata VS Codellakin, suosoitellaan ehdottomasti PyCharmin asentamista
Node.js
Node.js on JavaScript koodin suorittamisen ympäristö muualla kuin verkkoselaimissa. Se mahdollistaa ohjelmoinnin JavaScriptillä alustariippumattomasti ja antaa pääsyn JavaScript koodilla esimerkiksi tiedostojärjestelmään tai verkkoliikenteeseen.
Noden mukana asentuvat npm ja npx, ne ovat noden komentorivityökaluja JavaScript pakettien eli kolmannen osapuolen koodikirjastojen hallintaan.
Node.js
Lataa ja asenna Node.js LTS versio.
Git
Git on ohjelmistokehityksen yksi käytetyimmistä työkaluista versionhallinnassa. Se mahdollistaa muun muassa useamman koodarin työskentelyn sujuvasti samassa projektissa ja kaikki sinne laitettu koodi on automaattisesti varmuuskopioituna tallessa.
Gittiä ei pidä sekottaa GitHubiin tai GitLabiin, ne ovat palveluita repositorioiden (projektin koodipohja) ylläpitämiseen, säilyttämiseen ja projektin hallintaan. Git on työkalu jolla projektin koodit ja muut materiaalit lisätään näihin palveluihin.
Git
Lataa ja asenna Gitin uusin tarjolla oleva versio. Gitin asennusohje.
VS Code
Opintojaksolla suositellaan vahvasti käyttämään koodieditorina Visual Studio Codea. Se on moderni, kevyt ja laajasti eri ohjelmointikieliä tukeva koodieditori. Kaikki opintojaksolla tehdyt esimerkit on tehty käyttämällä VS Codea ja kaikkia käytettyjä plugineja ei todennäköisesti ole saatavilla muille koodieditoreille.
VS Code
Lataa ja asenna VS Code:n uusin versio
Insomnia
Rajapintakyselyiden debuggaamiseen ja simuloimiseen opintojaksolla käytetään Insomniaa.
Insomnia on työkalu web-ohjelmointirajapintojen tutkimiseen ja testaamiseen.
Insomnia
Lataa ja asenna Insomnia
Chrome
Tämä verkkoselain todennäköisesti löytyy jo useimmilta valmiiksi. Jos ei niin hae googlesta chrome, mene latauslinkkiin, lataa ja asenna uusin versio.
Chromea ja sen kehittäjän työkaluja käytetään opintojakson aikana paljon.
Muita verkkoselaimia voi käyttää jos haluaa varmistua että web-sovellus toimii oletetusti muilla selaimilla, mutta varsinainen devaaminen tehdään käyttäen Chromea.
Docker
Docker on työkalu, joka auttaa pakkaamaan ja ajamaan sovelluksia eristetyissä "konteissa". Tämä tekee sovellusten siirtämisestä ja käyttämisestä eri ympäristöissä helpompaa ja yhtenäisempää.
https://docs.docker.com/get-started/docker_cheatsheet.pdf
Docker
Lataa ja asenna Docker desktop