TTC8420 - Web-käyttöliittymien ohjelmointi
Kurssin tiedot
Nimi | Web-käyttöliittymien ohjelmointi |
Koodi | TTC8420 |
Osa moduulia | SOVELLUSKEHITYS |
Opettaja(t) | Manninen Pasi |
Ajoitus | |
Toteutusten määrä | |
Peppi | Katso Peppi kuvaus |
Miksi valitsisin tämän kurssin?
Opintojakson keskeinen tavoite on oppia toteuttamaan web-sovelluksia, jotka web-selaimen suorittaman käyttöliittymäohjelmoinnin osalta vastaavat ja skaalautuvat erilaisiin tarpeisiin. Opintoajakson jälkeen tunnet erilaisten aihealueen ohjelmakirjastojen keskeisimpiä vahvuuksia ja osaat toteuttaa sovelluksia ainakin yhden tällaisen kirjaston avulla. Suosittuja ohjelmointikehyksiä tällä hetkellä ovat mm. Angular, React ja Vue.
Opintojaksolla keskitytään Reactin hallintaan. Pienimuotoisessa harjoitustyössä opiskelija voi halutessaan tutustua myös muihin kirjastoihin.
Tällä opintojaksolla ohjelmoinnissa käytetään JavaScript-ohjelmointikieltä, joka on ylivoimaisesti suosituin webissä käytetty ohjelmointikieli. Nykyaikaiset Frontend-sovellukset sisältävät paljon JavaScriptiä, jolla on toteutettu sovelluksen toimintalogiikka. Ulkoasussa käytetään webissä tuttua HTML/CSS-yhdistelmää ulkoasun muodostamisessa.
Opintojaksolla keskitytään luomaan ns. SPA-sovelluksia (single page application), jotka toimivat koko elinkaarensa ajan yhdellä ja samalla web-sivulla. Tässä tekniikassa käyttäjä lataa palvelimelta asiakassovelluksen, joka esittää sisältöä yhden web-sivun kautta. Tämä jälkeen ei tapahdu enää sivun latauksia, vaan sivulla olevaa tietoa päivitetään asiakassovelluksesta itsestään tai ottamalla yhteyttä palvelin puolen ohjelmointiin asynkronisesti. SPA-sovellukset voivat olla sisällöltään hyvinkin rikkaita ja päivittävät tarvittaessa vain osaa sivuston osasta. Nykyään kaikki webissä toimivat sivustot alkavat olla SPA-sovelluksia.
Nykyään sovellukset ei ole tarkoitettu toimimaan pelkästään web-selaimessa, vaan sovelluksien suunnittelussa tulee ottaa huomioon sovelluksen toimivuus kaikissa päätelaitteissa.
Opintojaksolla käsitellään mm. seuraavia sisältöjä:
- Web-sovelluksen suunnittelutyökalujen esittely
- Reactin perusteet
- Node.js-projektin perusteet
- SPA-sovelluksen perusteet
- Sovelluksen modularisointi
- Omien UI-komponenttien luominen ja niiden elinkaaren hallinta
- Komponenttien tilanhallinta kehittyneillä kirjastoilla / Redux
- Ulkopuolisen tiedonlataaminen ja esittäminen käyttöliittymässä, JSON, API:t
- Kehittyneiden UI-kirjastojen käyttö
- Useiden sivujen/näkymien hallinta SPA-sovelluksen sisällä
- Sovelluksen automaatinen julkaisu GitLab/Pages-ympäristöön CI/CD-ketjulla
- ja paljon muuta ajankohtaista sisältöä
Opintojakson tehtävät palautetaan JAMK/IT:n GitLab-ympäristöön. Opiskelija voi seurata etenemistään (saa myös palautetta tehtävistään) IssuesBoardin kautta. Toisin sanoen opit myös Git-versiohallinnan käyttöä opintojakson tehtävien yhteydessä. Tätä osaamista arvostetaan kovasti myös yritysmaailmassa!
Työllistyminen
Web-sivustot ovat laajentuneet "perinteisistä" staattisista sivustoista kokonaisvaltaisiksi sovelluksiksi, jotka toimivat web-selaimen lisäksi erilaisissa päätelaitteissa. Sivustot/sovellukset suunnitellaan ja toteutetaan "mobile-first" periaatteella siten, että ne toimivat web-selaimen lisäksi eri päätelaitteissa. Useasti web-sovellukset alkavat jo korvata kokonaisia mobiilisovelluksia.
Alla on näkyvissä 17.1.2022 näkymä LinkedIn-palvelusta React-ohjelmointiin liittyvien työpaikkojen suhteen Suomessa:
Loppusanat
Pasi Manninen on kokenut konkari web-ohjelmoinnin saralla. Oman harrastuneisuuden vuoksi sekä yritysyhteisöjen kautta. Web-selaimeen liittyviä opintojaksoja on pidetty ja kehitetty todella pitkään, joten tältä opintojaksolta saat varmasti kattavat tiedot ja taidot. Mukana tulee paljon erinäistä keskustelua ja kokemuksen oppia/jakoa luentokerroilla.
Tervetuloa mukaan!