Theseus käyttökatko ma 22.4. klo 12 alkaen. Katko jatkuu 22.4. klo 15 asti ja on koko Theseuksen laajuinen. Lisäksi töiden käsittely ja syöttö on estetty ti 23.4. ainakin klo 12 asti.
Theseus service break from Mon 22.4. at 12:00. The break will last until 15:00 on Mon 22.4. and is Theseus-wide. In addition, processing and uploading of work will be blocked until at least 12:00 on Tue 23.4.
Ohjelmistokehykset verkkosovelluskehityksessä
Mäenpää, Jukka (2013)
Mäenpää, Jukka
Metropolia Ammattikorkeakoulu
2013
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201305219922
https://urn.fi/URN:NBN:fi:amk-201305219922
Tiivistelmä
Insinöörityön lähtökohtana oli parantaa olemassa olevaa verkkosivustoa, joka oli rakennettu huonoille ohjelmointikäytännöille. Työllä ei ollut tilaajaa, vaan se perustui pienempään projektiin, joka oli sopivan kokoinen ja sopivassa tilassa paranneltavaksi. Tavoitteeksi otet-tiin käyttää eri verkkokehitykseen tarkoitettuja ohjelmistokehyksiä sivuston uudelleenrakennuksessa. Sivuston koodissa oli paljon turvallisuusaukkoja, toiminnot oli jaettu eri tiedostoihin epäskaalautuvasti ja toistoa oli paljon. Ohjelmistokehykset tekivät koodista turvallisempaa ja jaottelivat logiikan järkevästi. Käytetyt kehykset ja kirjastot tarjosivat rajapinnan, joka helpotti ohjelmointia ja vähensi inhimillisten virheiden määrää.
PHP:n ohjelmistokehys Symfony 2 järjesti koodin tarkasti eriteltyihin paketteihin, ja ohjelmoinnilla oli tarkat työn vaiheet. Symfonyn mukana tuli useita valmiita toimintoja, kuten pyynnön reititys halutun PHP-luokan ohjelmistologiikkaan ja käyttäjän autentikointi ja sen tiedon ylläpito. Tietokannan kanssa keskusteluun käytettiin Symfonyn mukana tulevaa Doctrine-kirjastoa, joka tarjoaa tietokannan abstraktointikerroksen ja Object Relational Mapper -tuen. ORM-tuella tietokannan rivejä voi käsitellä kuten olioita ohjelmointilogiikassa. Doctrine auttoi tekemään tietokantakyselyistä turvallisempia ja vähensi virheitä, kun kyselyitä ei tarvinnut kirjoittaa itse.
Sivun asettelun puolella Twitterin Bootstrap-ohjelmistokehys tarjosi hyvän kokoelman sivun asettelua, sommittelua ja toiminnallisuutta parantavia ja tehostavia osia. Kokoelma hyödynsi Jquery-Javascript-kirjastoa. Käyttämällä Bootstrapin tarjoamaa pohjaa sivustolle sai helposti responsiivisen, hyvännäköisen valmiin sivurakenteen. Jquery helpotti Javascript-koodin kirjoittamista ja tarjosi rajapinnan tehdä muun muassa DOM-manipulaatioon, animaatioon ja asynkronisiin pyyntöihin liittyviä toimintoja käyttämällä helppokäyttöisiä metodeja, jotka toimivat samalla koodilla kaikissa selaimissa.
Muutosten jälkeen sivuston tiedostorakenne on ohjelmistokehysten standardin mukainen, rakenne on skaalautuvampi ja koodi perustuu ammattilaisten ylläpitämiin, testattuihin ja dokumentoituihin ohjelmistokehyksiin. Sivusto on vakaammalla pohjalla, ja sitä on helpompi ylläpitää ja kehittää projektina.
PHP:n ohjelmistokehys Symfony 2 järjesti koodin tarkasti eriteltyihin paketteihin, ja ohjelmoinnilla oli tarkat työn vaiheet. Symfonyn mukana tuli useita valmiita toimintoja, kuten pyynnön reititys halutun PHP-luokan ohjelmistologiikkaan ja käyttäjän autentikointi ja sen tiedon ylläpito. Tietokannan kanssa keskusteluun käytettiin Symfonyn mukana tulevaa Doctrine-kirjastoa, joka tarjoaa tietokannan abstraktointikerroksen ja Object Relational Mapper -tuen. ORM-tuella tietokannan rivejä voi käsitellä kuten olioita ohjelmointilogiikassa. Doctrine auttoi tekemään tietokantakyselyistä turvallisempia ja vähensi virheitä, kun kyselyitä ei tarvinnut kirjoittaa itse.
Sivun asettelun puolella Twitterin Bootstrap-ohjelmistokehys tarjosi hyvän kokoelman sivun asettelua, sommittelua ja toiminnallisuutta parantavia ja tehostavia osia. Kokoelma hyödynsi Jquery-Javascript-kirjastoa. Käyttämällä Bootstrapin tarjoamaa pohjaa sivustolle sai helposti responsiivisen, hyvännäköisen valmiin sivurakenteen. Jquery helpotti Javascript-koodin kirjoittamista ja tarjosi rajapinnan tehdä muun muassa DOM-manipulaatioon, animaatioon ja asynkronisiin pyyntöihin liittyviä toimintoja käyttämällä helppokäyttöisiä metodeja, jotka toimivat samalla koodilla kaikissa selaimissa.
Muutosten jälkeen sivuston tiedostorakenne on ohjelmistokehysten standardin mukainen, rakenne on skaalautuvampi ja koodi perustuu ammattilaisten ylläpitämiin, testattuihin ja dokumentoituihin ohjelmistokehyksiin. Sivusto on vakaammalla pohjalla, ja sitä on helpompi ylläpitää ja kehittää projektina.