Hyppää sisältöön
    • Suomeksi
    • In English
  • Suomeksi
  • In English
  • Kirjaudu
Näytä aineisto 
  •   Etusivu
  • 1. Kirjat ja opinnäytteet
  • Pro gradu -tutkielmat ja diplomityöt sekä syventävien opintojen opinnäytetyöt (kokotekstit)
  • Näytä aineisto
  •   Etusivu
  • 1. Kirjat ja opinnäytteet
  • Pro gradu -tutkielmat ja diplomityöt sekä syventävien opintojen opinnäytetyöt (kokotekstit)
  • Näytä aineisto
JavaScript is disabled for your browser. Some features of this site may not work without it.

Monialustaisten ohjelmien tekeminen C++-kielellä

Nurmi, Lauri (2013-11-20)

Monialustaisten ohjelmien tekeminen C++-kielellä

Nurmi, Lauri
(20.11.2013)
Katso/Avaa
DI-2013Nurmi.pdf (997.1Kb)
Lataukset: 

Turun yliopisto
avoin
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on:
https://urn.fi/URN:NBN:fi-fe201311207372

Kuvaus

Siirretty Doriasta
Tiivistelmä
Käyttöjärjestelmiä ja prosessoriarkkitehtuureita on olemassa useita erilaisia. Näiden kahden yhdistelmää yhdessä käyttöjärjestelmän tarjoamien kirjastojen kanssa kutsutaan tässä diplomityössä alustaksi. Tietylle alustalle tarkoitettuja konekielisiä natiiviohjelmia voidaan yleensä suorittaa vain kyseistä alustaa käyttävissä tietokoneissa. Natiiviohjelmien tekemiseen käytetään tavallisesti C- ja C++-ohjelmointikieliä.

Monesti ohjelmia on voitava käyttää useammalla kuin yhdellä alustalla. Koska kehitystyö vie aikaa ja resursseja, on toivottavaa, että ohjelma toimisi uudella alustalla joko ilman muutoksia tai mahdollisimman paljon olemassa olevaa lähdekoodia hyödyntäen. Tässä diplomityössä esitellään erilaisia monialustaisten ohjelmien toteutustapoja. Myöhemmin arvioidaan niiden soveltuvuutta kaupallisen kameravalvontaohjelmiston toteutukseen. Keskeisimmät esiteltävät toteutustavat ovat natiiviohjelmat, tulkattavat kielet, virtualisointi sekä web-selain, joka on osittainen toteutustapa monialustaisille ohjelmille.

Tämä diplomityö käsittelee monialustaisten ohjelmien kehitystä erityisesti C++-kielellä, joka on yksi maailman eniten käytetyistä ohjelmointikielistä, ja myös tarkasteltavana olevan kameravalvontaohjelmiston nykyinen toteutuskieli. Kielen syntaksin ja C++-standardikirjaston määrittelevä C++-standardi on alusta-agnostinen. Tästä johtuen C++-lähdekoodi voi olla täysin alustariippumatonta vaikka konekielelle käännetyt ohjelmat ovatkin sidottuja tiettyyn alustaan. Useimmat käytännön C++-ohjelmat käyttävät standardikirjaston lisäksi alustan tarjoamia lisäkirjastoja.

Toteutusratkaisuiden arvioinnin ja vertailun perusteella voidaan todeta, että C++-kielellä tehty natiiviohjelma on monialustaisen kameravalvontaohjelmiston toteutukseen hyvin soveltuva ratkaisu, mutta myös muiden esiteltyjen tapojen käyttöä kannattaa harkita joissakin ohjelmiston osissa käytettäväksi. Nykyisen natiivitoteutuksen monialustaista kehitystä voitaisiin mahdollisesti tehostaa vaihtamalla käytettävä ohjelmistokehys toiseen sekä tekemällä käännösympäristöstä monialustaisempi ja automatisoidumpi. Johtopäätökset ovat sovellettavissa myös muihin samankaltaisiin ohjelmistoihin.
Kokoelmat
  • Pro gradu -tutkielmat ja diplomityöt sekä syventävien opintojen opinnäytetyöt (kokotekstit) [9229]

Turun yliopiston kirjasto | Turun yliopisto
julkaisut@utu.fi | Tietosuoja | Saavutettavuusseloste
 

 

Tämä kokoelma

JulkaisuajatTekijätNimekkeetAsiasanatTiedekuntaLaitosOppiaineYhteisöt ja kokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy

Turun yliopiston kirjasto | Turun yliopisto
julkaisut@utu.fi | Tietosuoja | Saavutettavuusseloste