22 resultados para barriere architettoniche mappe java accessibilità
em Doria (National Library of Finland DSpace Services) - National Library of Finland, Finland
Resumo:
Nykyaikaiset Java-teknologiaa sisältävät matkapuhelimet kehittyvät vauhdikkaasti prosessoritehon, muistin määrän sekä uusien käyttöjärjestelmäversioiden tarjoamien ominaisuuksien myötä. Laitteiden näyttöjen koko tulee pysymään pienenä,mutta silti moninaista multimediasisältöä äänen, videon ja kuvan osilta voidaanhuomattavasti parantaa JSR 234:n eli kehittyneen multimedialaajennuksen avulla.Erityisesti edistyneet ääniominaisuudet ovat tervetullut lisä, sillä viime aikojen kehitys matkapuhelimissa on saanut aikaan niiden muuntumisen myös kannettavaksi musiikkisoittimiksi. Diplomityössä JSR 234 -spesifikaation tietty osa kehitettiin ympäristössä, joka koostui Series 60 -ohjelmistoalustankolmannesta versiosta sekä Symbian OS v9.1 käyttöjärjestelmästä. Tuloksena syntynyt Java-rajapinta tarjoaa sovelluskehittäjille yksinkertaisemman lähestymistavan Symbianin efektirajapintaan piilottaen samalla alla olevan käyttöjärjestelmänmonimutkaisuuden. Toteutuksen täytyy olla läpikotaisin testattu, jotta voidaan varmentua sen noudattavan tarkkaan JSR 234 -spesifikaatiota. Työssä on esitelty useita eri testausmenetelmiä tarkoituksena saavuttaa projektissa paras mahdollinen laatu.
Resumo:
Ohjelmistojen uudelleenkäyttö on hyvin tärkeä käsite ohjelmistotekniikan alueella.Ohjelmistojen uudelleenkäyttötekniikat parantavat ohjelmistokehitysprosessin laatua. Yleisiä ratkaisuja sekä ohjelmiston suunnittelun että arkkitehtuurin uudelleenkäyttöön ovat olio-ohjelmointi ja sovelluskehykset. Tähän asti ei ole ollut olemassa yleisiä tapoja sovelluskehysten erikoistamiseen. Monet nykyääntunnetuista sovelluskehyksistä ovat hyvin suuria ja mutkikkaita. Tällaisten sovelluskehyksien käyttö on monimutkaista myös kokeneille ohjelmoijille. Hyvin dokumentoidut uudelleenkäytettävät sovelluskehyksen rajapinnat parantavat kehyksen käytettävyyttä ja tehostavat myös erikoistamisprosessiakin sovelluskehyksen käyttäjille. Sovelluskehyseditori (framework editor, JavaFrames) on prototyyppityökalu, jota voidaan käyttää yksinkertaistamaan sovelluskehyksen käyttöä. Perusajatus JavaFrames lähestymistavassa ovat erikoistamismallit, joita käytetään kuvamaan sovelluskehyksen uudelleenkäytettäviä rajapintoja. Näihin malleihin perustuen JavaFrames tarjoaa automaattisen lähdekoodi generaattorin, dokumentoinninja arkkitehtuurisääntöjen tarkistuksen. Tämä opinnäyte koskee graafisen mallieditorin kehittämistä JavaFrames ympäristöön. Työssä on laadittu työkalu,jonka avulla voidaan esittää graafisesti erikoistamismalli. Editori sallii uusien mallien luomisen, vanhojen käyttämättä olevien poistamisen, kuten myös yhteyksien lisäämisen mallien välille. Tällainen graafinen tuki JavaFrames ympäristöönvoi huomattavasti yksinkertaistaa sen käyttöä ja tehdä sovellusten kehittämisprosessista joustavamman.
Resumo:
Diplomityön tavoitteena on kehittää Java CDC ajoympäristo Symbian OS käyttöjärjestelmällä varustettuun mobiililaitteeseen. Ajoympäristön tarkoituksena on mahdollistaa kehittyneiden ajoympäristöjen ja sovellusten kehittäminen mobiililaitteiden Java ohjelmistoalustoihin. Diplomityö tarkastelee kahta mobiiliympäristöa, jotka ovat käytössä erittäin laajasti matkapuhelimissa ja kämmenmikroissa: Symbian OS ja Java. Symbian OS on mobiililaitteille tarkoitettu käyttöjärjestelmä, joka on tässä työssä alustana Java ajoympäristölle. Käytännön osuus kuvailee, kuinka CDC ajoympäristö voidaan toteuttaa mobiilissa Symbian OS ympäristössä. Työssä esitellään myös teknologioita, joita CDC ajoympäristön luomalle perustalle voidaan toteuttaa. Mobiililaitteiden ominaisuudet ovat kehittyneet huomattavasti sen jälkeen kun ensimmäiset CLDC ja MIDP Javaa tukevat laitteet tulivat markkinoille. Nykyisin matkapuhelimet ja kämmenmikrot alkavat muistuttaa ominaisuuksiltaan entistä enemmän tavallisia tietokoneita. Myös mobiililaitteiden Java ohjelmistoalustat tarvitsevat uusia teknologioita kasvaneiden vaatimusten tyydyttämiseksi.
Resumo:
Viime aikoina matkapuhelimet ovat alkaneet tukea Javaa matkapuhelinsovellusten ohjelmointikielenä. Javan perusajatus on, että kerran käännetty sovellus voidaan suorittaa useilla laitealustoilla ilman uudelleenkääntämisen tarvetta. Jotta sovellukset voisivat toimia uudella alustalla, niiden käyttämät kirjastot tulee siirtää uudelle alustalle. Tämä diplomityö tutkii tämänkaltaiseen siirtoprojektiin liittyviä asioita. Diplomityön aikana käyttöliittymäkirjasto siirrettiin olemassa olleelta alustalta kahdelle uudelle alustalle. Toinen uusista alustoista oli vanhan alustan uusi versio, ja toinen oli kokonaan uusi alusta. Ohjelmiston siirtämistä helpottaa jos alkuperäinen ohjelmisto on suunniteltu siirrettävyyttä silmälläpitäen. Varsinaiset ohjelmaan tehtävät muutokset ovat tällöin helppoja tehdä. Hyvälaatuisen lopputuloksen saaminen vaatii kuitenkin aina että ohjelmisto myös testataan huolellisesti.
Resumo:
Bluetooth™ Teknologia - Bluetooth Wireless Technology - on lyhyen kantaman langaton kommunikointiteknologia. Vaikka se onkin ensisijaisesti suunniteltu kaapelin korvaajaksi laitteiden omaan toimintaan liittyvässä liikenteessä, voidaan sitä myös käyttää alustana monen käyttäjien peleissä ja muissa vastaavissa sovelluksissa. Tassa diplomityössä esitellään Bluetooth teknologia sovellusohjelmoijan näkökulmasta. Työssä esitellään teollisuuskonsortion määrittelemä Java-ohjelmointirajapinta Bluetooth teknologiaan. Tämän rajapinnan avulla voidaan kehittää kannettavia sovelluksia jotka kommunikoivat Bluetooth yhteyden yli. Rajapinta pohjautuu "Java™ 2 Microedition" alustaan ja on siten toteutettavissa myös pienissä laitteissa kuten matkapuhelimissa. Työssä esitellään lyhyesti rajapinnan keskeiset osat sekä annetaan esimerkki rajapinnan käytöstä. Työn konstruktiivisessa osassa rajapinnan keskeiset on toteutettu kahdelle eri alustalle: Sambian™ ja Microsoft® Windows® käyttöjärjestelmille. Talla tavalla on saatu arvokasta tietoa siitä, miten kyseinen rajapinta tulisi toteuttaa ja myös siitä miten sovellukset sitä käyttäisivät. Keskeiset suunnitteluratkaisut ja saadut kokemukset on raportoitu työn kirjallisessa osassa. Vaikka työn konstruktiivinen osuus onkin luonteeltaan esitutkimus eikä tähdännyt tuotteeseen, on tuloksena syntynyttä rajapintaa tarkoitus käyttää useassa Nokian sisäisessä tutkimus-ja kehityshankkeessa.
Resumo:
Työssä tutkitaan, kuinka Symbian käyttöjärjestelmälle voidaan tehdä siirrettäviä ohjelmia. Työssä käydään läpi menetelmiä, jotka helpottavat ohjelmistojen siirrettävyyttä uudelle alustalle. Uuteen älypuhelimeen voi tulla monia uusia komponentteja. Laite voi muuttua piiritasolla, käyttöjärjestelmästä voi tulla uusi versio sekä siirrettävästä ohjelmasta voi tulla uusi versio. Kaikki nämä vaikuttavat ohjelman siirrettävyyteen. Työssä tehtiin Java-rajapinnan siirto uudelle alustalle. Prosessin aikana löydettiin tärkeitä tekijöitä, jotka vaikuttavat ohjelmiston siirrettävyyteen. Siirrettävyys sinänsä pitäisi ottaa huomioon ohjelmistoprosessin jokaisessa vaiheessa. Älypuhelimista tulee jatkuvasti uusia versioita. Tämä tekee ohjelmien siirrettävyydestä hyvin tärkeän tekijän ohjelmistojen suunnittelussa. Hyvin suunniteltu ohjelma on helpompi ylläpitää, päivättää ja siirtää myöhemmin.
Resumo:
Tässä insinöörityössä suunniteltiin ja toteutettiin Gordion-talousohjaus Oy:n Primavista-ohjelmiston koodin suojaaminen. Yrityksellä oli jo pitkään ollut tarve Java-kielisen ohjelmakoodinsa suojaamiselle, etenkin Primavistan käytön tullessa laajentumaan useisiin eri maihin. Koodin suojaamisella hankaloitetaan mahdollista takaisinkääntämistä, jossa valmiin ohjelman ajettavat tiedostot käännetään takaisin niiden lähdekoodiksi. Tällöin lähdekoodia pystytään tarkastelemaan tai jopa muokkaamaan. Suomen tekijänoikeuslain mukaan takaisinkääntäminen ei ole sallittua. Työ aloitettiin tutkimalla erilaisia Java-koodin suojausmenetelmiä. Primavistan koodin suo-jausmenetelmäksi valittiin obfuskointi, joka on suosituin Java-koodin suojausmenetelmä. Erilaisia tekniikoita käyttäen tämä menetelmä sotkee Javan tavukoodia tehden takaisinkäännetystä koodista erittäin vaikeasti ymmärrettävää. Työssä vertailtiin nykyisiä obfuskointityökaluja itse tehdyn testisovelluksen avulla. Vertai-un parhaaksi työkaluksi osoittautui kaupallinen tuote Zelix KlassMaster. Ohjelma todettiin toimivaksi myös Primavistan suhteen, minkä jälkeen se päätettiin hankkia yritykselle. Koko Primavistan koodin obfuskointi toteutettiin Zelix KlassMasteria ja sen useita eri ob-fuskointitekniikoita käyttäen. Tämän jälkeen obfuskointi liitettiin Primavistan Ant-buildiin kiinteäksi osaksi koodin rakennusprosessia. Koska obfuskointi tekee huomattavia muu-toksia tavukoodiin, obfuskoidun Primavistan toiminta oli testattava huolellisesti. Testauk-sessa huomattiin pieniä virhetilanteita, jotka korjaamalla ohjelman toiminta lopulta todettiin normaaliksi. Viimeisessä työvaiheessa kaikki obfuskoinnissa tarvittavat tiedostot siirrettiin versionhallintaan kaikkien yrityksen kehitystiimin jäsenten käytettäviksi. Työn tuloksena saatiin onnistuneesti obfuskoiduksi koko Primavistan koodi. Obfuskointi-prosessista kehitettiin pysyvä käytäntö, jonka mukaisesti obfuskointi tehdään aina Prima-vistan rakennusvaiheessa. Jatkossa kaikki asiakkaille toimitettavat Primavistan versiot tulevat olemaan obfuskoituja sovelluksia.
Resumo:
This thesis evaluates methods for obtaining high performance in applications running on the mobile Java platform. Based on the evaluated methods, an optimization was done to a Java extension API running on top the Symbian operating system. The API provides location-based services for mobile Java applications. As a part of this thesis, the JNI implementation in Symbian OS was also benchmarked. A benchmarking tool was implemented in the analysis phase in order to implement extensive performance test set. Based on the benchmark results, it was noted that the landmarks implementation of the API was performing very slowly with large amounts of data. The existing implementation proved to be very inconvenient for optimization because the early implementers did not take performance and design issues into consideration. A completely new architecture was implemented for the API in order to provide scalable landmark initialization and data extraction by using lazy initialization methods. Additionally, runtime memory consumption was also an important part of the optimization. The improvement proved to be very efficient based on the measurements after the optimization. Most of the common API use cases performed extremely well compared to the old implementation. Performance optimization is an important quality attribute of any piece of software especially in embedded mobile devices. Typically, projects get into trouble with performance because there are no clear performance targets and knowledge how to achieve them. Well-known guidelines and performance models help to achieve good overall performance in Java applications and programming interfaces.
Resumo:
Tämä insinöörityö tehtiin Sesca Logistics IT Oy:lle osana Tekesin VAMOS-hanketta. Logistiikan alan yritysten resursseja on kuluttanut puutteellinen ja hidas tietojen kulku toimiston ja ajoneuvon välillä. Perinteisesti ajoneuvosta tarvittujen tietojen kerääminen on tapahtunut kynällä paperille, ja tiedonkulku on perustunut puhelinyhteyteen toimiston ja ajoneuvon kuljettajan välillä. Työn tavoitteena oli toteuttaa automaattinen tietojenkeruu ajoneuvosta sekä ajoneuvon sisältämistä laitteista. Reaaliaikainen raskaan kaluston tiedonkeruujärjestelmä mahdollistaa ajoneuvoista automaattisesti kerättyjen tietojen helpon seurannan Internetin välityksellä. Työssä suunniteltiin raskaan kaluston ajoneuvotietokoneen sulautettu ohjelmisto sekä palvelinpään ohjelmisto ajoneuvosta lähetettyjen tietojen vastaanottamiseen. Työ aloitettiin arkkitehtuurisuunnittelulla, jonka tuloksena hahmotettiin järjestelmän olellisimmat komponentit sekä valittiin sopivimmat protokollat komponenttien väliseen tiedonsiirtoon Internet-verkossa. Ajoneuvotietokoneen ohjelmisto toteutettiin sulautettuna ohjelmistona Java ME -teknologialla, jossa hyödynnettiin UML-mallinnusta sekä tunnettuja suunnittelumalleja (design patterns). Palvelinpään tietojen vastaanottoohjelmisto toteutettiin Java SE -teknologialla. Työn lopputuloksena syntyi reaaliaikanen ja hajautettu tietojärjestelmä logistiikan alan tarpeisiin. Tietojärjestelmä kykenee tuottamaan reaalaikaista tietoa ajoneuvon sijainnista sekä ajoneuvon CAN-väylän sisältämistä tiedoista. Lisäksi tietojärjestelmä mahdollistaa tienhoitoajoneuvojen aurojen ja suolasirottimen seurannan. Tietojärjestelmän avulla yritykset voivat seurata kustannustehokkuuttaan ja saada nopeammin yksityiskohtaisempia tietoja ajoneuvojen tilasta.
Resumo:
This thesis deals with a hardware accelerated Java virtual machine, named REALJava. The REALJava virtual machine is targeted for resource constrained embedded systems. The goal is to attain increased computational performance with reduced power consumption. While these objectives are often seen as trade-offs, in this context both of them can be attained simultaneously by using dedicated hardware. The target level of the computational performance of the REALJava virtual machine is initially set to be as fast as the currently available full custom ASIC Java processors. As a secondary goal all of the components of the virtual machine are designed so that the resulting system can be scaled to support multiple co-processor cores. The virtual machine is designed using the hardware/software co-design paradigm. The partitioning between the two domains is flexible, allowing customizations to the resulting system, for instance the floating point support can be omitted from the hardware in order to decrease the size of the co-processor core. The communication between the hardware and the software domains is encapsulated into modules. This allows the REALJava virtual machine to be easily integrated into any system, simply by redesigning the communication modules. Besides the virtual machine and the related co-processor architecture, several performance enhancing techniques are presented. These include techniques related to instruction folding, stack handling, method invocation, constant loading and control in time domain. The REALJava virtual machine is prototyped using three different FPGA platforms. The original pipeline structure is modified to suit the FPGA environment. The performance of the resulting Java virtual machine is evaluated against existing Java solutions in the embedded systems field. The results show that the goals are attained, both in terms of computational performance and power consumption. Especially the computational performance is evaluated thoroughly, and the results show that the REALJava is more than twice as fast as the fastest full custom ASIC Java processor. In addition to standard Java virtual machine benchmarks, several new Java applications are designed to both verify the results and broaden the spectrum of the tests.
Resumo:
Tämä insinöörityö kertoo Java 3D -ohjelmointirajapinnan perusteista ja sen käytöstä kolmiulotteisen tietokonegrafiikan luomisessa Java ohjelmointikielellä. Java 3D on rajapinta Java-ohjelmointikielelle, jonka avulla voidaan luoda ja käsitellä kolmiulotteista tietokonegrafiikkaa. Java 3D -rajapinnan avulla käsitellään kolmiulotteista tietokonegrafiikka erityisen maisemagraafimallin avulla. Maisemagraafi on binääripuuta muistuttava malli, joka mahdollistaa kolmiulotteisten kohteiden ja niille tapahtuvien muunnoksien käsittelyn hierarkisessa järjestyksessä. Työssä käydään läpi Java 3D -maisemagraafien luominen ja kolmiulotteisessa avaruudessa sijaitseville kappaleille tehtäviä perusoperaatioita kuten siirtoa ja kiertoa. Lisäksi käydään läpi myös erilaisia animoinnissa ja interaktiossa käytettäviä luokkia, joiden avulla ohjelmoija saa automatisoitua muunnoksia sekä käyttäjä voi antaa syötteitä hiirellä ja näppäimistöllä. Näiden lisäksi käydään läpi myös mallin valaistusta, varjoja, teksturointia sekä omien kolmiulotteisten mallien tuontia Java 3D -maailmaan. Opinnäytetyön yhteydessä on tehty myös kirjo erilaisia esimerkkejä, jotka ovat saatavilla verkkosivustolta osoitteessa http://www.pahvilaatikko.org/j3d lisäksi kopio verkkosivustosta löytyy myös opinnäytetyön mukana tulevalta cd-levyltä.
Resumo:
Testauksesta on tullut oleellinen, yhä tärkeämpi sovelluskehitysprojektien osa. Sovelluksilta vaaditaan luotettavuutta kaikilla niiden toiminnan osa-alueilla. Suorituskykyyn liittyvät asiat ovat keskeinen osa näitä vaatimuksia erityisesti, kun kyse on Internetissä toimivista www-sovelluksista. Aluksi työssä esitellään erilaisia sovellusten testausmenetelmiä. Siinä kerrotaan yleisimmistä menetelmistä, joiden avulla pyritään sovelluksista löytämään vääränlaiset toimintatavat suhteessa niiden määriteltyihin toimintatapoihin. Testauksen tulosten avulla pystytään keskittymään oikeisiin kohtiin sovellusten toiminnan korjaamisessa. Työssä analysoidaan www-sovellusten rakennetta yleisen kerrosarkkitehtuurin eri kerrosten ominaisuuksia ja niihin sisältyviä keskeisimpiä sovellusten suorituskykyyn vaikuttavia tekijöitä kuvaillen. Näiden, www-sovellusten eri osien suorituskykyyn vaikuttavien ominaisuuksien perusteella esitellään esimerkkejä, kuinka Java-kieleen perustuvien www-sovellusten suorituskykyä voidaan parantaa. Lisäksi työssä kuvataan, kuinka erityisesti ilmaisella Apache JMeter-sovelluksella voidaan Java-kieleen perustuvien www-sovellusten suorituskykyä mitata. Työn tuloksena esitellään lopuksi suorituskyvyn testaus- ja parannusprosessi. Sen tarkoitus on selkeyttää erityisesti Java-kieleen perustuvien www-sovellusten suorituskyvyn testauksessa ja parannuksessa huomioon otettavia asioita.
Resumo:
Java-kieli on ottanut paikkansa web-ohjelmoinnin alueella, mutta tieteellisissä laskentatehtävissä se on lyhyehkön historiansa aikana jäänyt muiden ohjelmointikielten varjoon. Tutkielmassa selvitettiin, miten kieli soveltuu matemaattisten ongelmien ratkaisuun. Tutkimusta varten kehitettiin esimerkkiohjelmia eri numeerisen matematiikan osaalueille, kuten integrointiin, derivointiin, interpolointiin ja juurenhakuun; painopiste oli lineaarialgebran sovelluksissa. Eri matriisihajotelmien käyttöön perustuvia esimerkkejä tehtiin useampia. Kaikki ohjelmat toteutettiin siten, että niitä on mahdollista käyttää verkossa erilaisilla tietokonekokoonpanoilla. Tämä on kiinteä osa Java-kielen ideologiaa. Tutkielmaan kuuluvalla web-sivustolla kaikki ohjelmat lähdekoodeineen ovat kiinnostuneiden käytettävissä. Sivustoa on mahdollista kehittää ja laajentaa entisestään, sillä monet numeriikan osa-alueet jäivät vielä käsittelemättä. Ohjelmat lähdekoodeineen sekä kaikkien valmiiden luokkien lähdekoodit löytyvät myös tutkielman mukana tulevalta CD-ROM-levyltä. Esimerkkien pohjalta saatujen kokemusten perusteella todettiin, että Java-kielellä on mahdollista toteuttaa matemaattisia ohjelmia, vaikka kielellä onkin puutteensa; esimerkiksi Javan omat matemaattiset luokat ovat sellaisenaan riittämättömät vaativiin sovelluksiin. Tämä saattaa osittain selittää laimean kiinnostukseen kielen mahdollisuuksiin tieteellisessä käytössä. Java on kuitenkin vielä kehittyvä kieli, joten tulevaisuudessa aukeavat mahdollisuudet jäävät nähtäväksi.
Resumo:
Irtokartta