1. Functional programming in web software development
- Author
-
Kaipiainen, Arttu, Tietotekniikan laitos - Department of Pervasive Computing, Tieto- ja sähkötekniikan tiedekunta - Faculty of Computing and Electrical Engineering, Tampere University of Technology, Systä, Kari, and Virtanen, Antti
- Subjects
Tietotekniikan koulutusohjelma - Abstract
Valtaosa nykypäivänä luotavista ohjelmista toimii internetiin perustuen. Verkkosivut ovat ajan myötä kehittyneet staattisista HTML-sivuista kokonaisvaltaisiksi ohjelmiksi, jotka suoritetaan palvelimen sijaan käyttäjän verkkoselaimessa. Web-ohjelmointiin on muodostunut useita menetelmiä, joista reaktiivinen ohjelmointi on yksi suosituimmista. Funktionaalisen ohjelmoinnin alkuperä on 1930-luvulla kehitetyssä lambdakalkyylissä ja sitä ennen matematiikassa. Sen periaatteena on matemaattisen funktion käsite. Funktionaalisten ohjelmointikielien kehitys alkaa 1950-luvun Lispistä ja jatkuu edelleen nykypäivän Clojureen, Scalaan sekä Haskelliin. Tässä diplomityössä tutkitaan funktionaalisen ohjelmoinnin soveltuvuutta nykyaikaiseen web-ohjelmointiin. Tutkimusta varten on suoritettu sekä haastattelututkimus että kyselytutkimus Solita Oy:n työntekijöiden keskuudessa. Tutkimukseen on valittu työntekijöitä, joilla on kokemusta web-ohjelmoinnista sekä funktionaalisilla että imperatiivisilla kielillä. Työn tuloksena todetaan, että funktionaalinen ohjelmointi soveltuu web-ohjelmistokehitykseen erittäin hyvin. Monet funktionaalisen ohjelmoinnin periaatteista ja menetelmistä sopivat luonnostaan web-ohjelmointiin, ja vaikutus ohjelmiston laatuun on muutenkin huomattava. Funktionaalisen ohjelmoinnin riskit ovat lähinnä tekijöiden löytämisessä ja kouluttamisessa.
- Published
- 2017