Adobe AIR. Web Application Development -seminaari 24.10.2007 Tuomas Turto, Panu Åkerman

Samankaltaiset tiedostot
Järjestelmäarkkitehtuuri (TK081702) AJAX, Asynchronous JavaScript And XML. AJAX, Asynchronous JavaScript And XML

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245

Laiteriippumaton UI Ajaxilla ja Javalla

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

Selainpelien pelimoottorit

Windows Live SkyDrive - esittely

Dart. Ryhmä 38. Ville Tahvanainen. Juha Häkli

PLA Mobiiliohjelmointi. Mika Saari

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

String-vertailusta ja Scannerin käytöstä (1/2) String-vertailusta ja Scannerin käytöstä (2/2) Luentoesimerkki 4.1

ELM GROUP 04. Teemu Laakso Henrik Talarmo

ADOBE AIR FOR ANDROID SOVELLUSKEHITYS

Tikon Web-sovellukset

JS-kehitys - yleiskuvaus. TIEA255 - Juho Vepsäläinen

ZENworks Application Virtualization 11

RIKKAAT INTERNETSOVELLUKSET

P A R T. Professional Assault Response Training Seppo Salminen Auroran koulu. Valtakunnalliset sairaalaopetuksen koulutuspäivät

Käyttöliittymien uusi sukupolvi Logicalla Rondo-tuotteessa

VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu

VMwaren keskitetty työasemaratkaisu

Selaimen asetukset. Toukokuu (7) Selaimen asetukset Tikon Oy. All rights reserved.

WWW-Sivustojen suunnittelu. Miten WWW toimii. Suunnittelun lähtökohdat

WWW-Sivustojen suunnittelu

Osion kaksi kertaus. Jukka Juslin. Jukka Juslin

OHJ-1151 Ohjelmointi IIe

Eclipse 3.2 pikku opas versio 1.0. Esittely Uuden projektin perustaminen Sovelluksen luominen Koodin siistiminen Vinkkejä

A Linux-järjestelmät WINE ja VIRTUALISOINTI OHJELMISTOT

Miten korkeakoulujen yhteishaun ja erillishakujen kokonaisuutta tulisi kehittää?

ULVILAN KAUPUNGINVIRASTON JOHTOSÄÄNTÖ

HTML5 Tutkielma Centria ammattikorkeakoulu Paavo Räisänen

Pedacode Pikaopas. Web-sovelluksen luominen

Adobe Flex ja Microsoft Silverlight sovelluskehityksessä

Alkuun HTML5 peliohjelmoinnissa

Tikon Web-sovellukset

KiVa Koulu tilannekartoituskysely 2016 sivu 1/31. KiVa Koulu tilannekartoituskysely 2016 sivu 2/31. KiVa Koulu tilannekartoituskysely 2016 sivu 3/31

HTML5 - Vieläkö. Antti Pirinen

PLA Mobiiliohjelmointi. Mika Saari

ISACA Finland OWASP The OWASP Foundation. Timo Meriläinen Antti Laulajainen.

Luonnollisten lukujen laskutoimitusten määrittely Peanon aksioomien pohjalta

Eclipse 3.1 Pikaopas versio 1.0

Kokemusasiantuntijan tarina. Kasvamista kokemusasiantuntijaksi

Huomaathan, että ohjeessa olevat näytöistä otetut kuvat voivat poiketa sinun koulutuksesi vastaavien sivujen kuvista.

L models. Käyttöohje. Ryhmä Rajoitteiset

Matematiikan tukikurssi

TVT maasto-opetuksessa

- Valitaan kohta Asetukset / NAT / Ohjelmallinen palvelin - Seuraavassa esimerkki asetuksista: valitaan käytössä oleva ohjelmistorajapinta

Javan asennus ja ohjeita ongelmatilanteisiin

Visual Basic -sovelluskehitin Juha Vitikka

Miten työni on muuttunut. Selvärajaisesta ruudusta.

Ohje kehitysympäristöstä. Dokumentti: Ohje kehitysympäristöstä.doc Päiväys: Projekti : AgileElephant

Mobiiliturva Palvelun käyttöönotto

HTML5 video, audio, canvas. Mirja Jaakkola

Lue ohjeet huolellisesti ennen laitteen käyttöä.


Järjestelmäarkkitehtuuri (TK081702)

Liittyminen Sovelton Online-tapahtumaan Microsoft Lync Web App -selainlaajennuksella (Windows, MAC ja ipad)

Java Runtime -ohjelmiston asentaminen

SAITA OY:N OSAKASSOPIMUS. 1. Sopijaosapuolet. Tämän sopimuksen osapuolina ovat:

CT50A2601 Käyttöjärjestelmät Androidin ja Symbianin vertailu Seminaarityö

Tikon Web-sovellukset

Tietoturva langattomissa verkoissa. Anekdootti

Yleistä paineilmajärjestelmästä. Paineilmajärjestelmän rakenne. Määritelmät PGRT. Paineilmasäiliö. APS (Ilmankäsittelyjärjestelmä) Ilmankuluttaja

SOA & Ajax Sanahelinää vai toimivaa käytäntöä sähköisessä asioinnissa? Fenix hankejohtaja Harri Juuti Projektipäällikkö Teemu Karvonen

Arkkitehtitoimistojen Liitto ATL ry Julkisten hankintojen lainsäädännön vaikutus arkkitehtipalveluihin Kesä-elokuu 2010, vastaajia: 66

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

Esityksen tiivistelmä Elina Hiltunen

Tavoite. Monitorit. Monitori Hoare Monitori. Minimoi virhemahdollisuuksia. Monitori Synkronointimenetelmiä Esimerkkejä

-versiot) Mozilla Firefox Safari Chrome. selaimista. Windows. Windows. Vista. Windows

AINEISTOJEN TEKNINEN OHJEISTUS 2009

TEKNIIKAN JA LIIKENTEEN TOIMIALA. Tietotekniikka. Ohjelmistotekniikka INSINÖÖRITYÖ TYÖPÖYTÄSOVELLUS ADOBE AIR -TEKNIIKALLA

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Visma Fivaldi. Ohjeet Java web startin ja HTML5-työkalun aktivointiin

Perusopetuksen aamu- ja iltapäivätoiminnan laadun arviointi 2016 Västankvarns skola/ Tukiyhdistys Almus ry.


Racket ohjelmointia. Tiina Partanen 2014

Miksi kysyttäisiin sosiaalityön asiakkailta?

Yleinen osa - Kuntoutuksessa tukena,

Energiatehokkuus ja lämmitystavat. Keski-Suomen Energiatoimisto

Kiekun arkkitehtuuri ja tekniikka. Ghita von Gerdten projektipäällikkö

Mitä uutta ConfigMgr 2012 SP2 ja 2016? Panu Saukko ProTrainIT Oy

Mac-tietokoneiden hallinta

Esimerkkejä derivoinnin ketjusäännöstä

Puffin selaimella voi osallistua kuuntelijana Android, iphone ja ipad mobiililaitteilla Broadcastissa ja konferenssissa.

Lausuntopyyntö STM 2015

Virtualisointiympäristössä on kolme pääosaa: isäntä (host), virtualisointikerros ja vieras (guest).

Finnan trendiraportti 2015 Yhteenvedot

4.1 Mitä autopaikalle saa pysäköidä?

Tutustu merkintöihin! Tärkeää tietoa siitä, miten varmistat pesu- ja puhdistusaineiden käytön turvallisuuden kotona

SQLite selvitysraportti. Juha Veijonen, Ari Laukkanen, Matti Eronen. Maaliskuu 2010

EUROOPAN YHTEISÖJEN KOMISSIO. Ehdotus: NEUVOSTON ASETUS. neljännesvuosittaista julkista velkaa koskevien tietojen laatimisesta ja toimittamisesta

Veto-visualisointityökalu

Rich Web Applications in Server-side Java without Plug-ins or JavaScript

Ennakkovaroitustoimintojen sekä. uuden teknologian hyödyntäminen. toteutuspöytäkirjamenettelyssä

Käyttöönotto-ohje. DNA Sähköposti

Huomaa, että 0 kitkakerroin 1. Aika harvoin kitka on tasan 0. Koska kitkakerroin 1, niin

JOENSUUN SEUDUN HANKINTATOIMI KOMISSIOMALLI

Hyvä vesihuoltohanke, suunnittelijan näkökulma

Mielestämme hyvä kannustus ja mukava ilmapiiri on opiskelijalle todella tärkeää.

Transkriptio:

Adobe AIR Web Application Development -seminaari 24.10.2007 Tuomas Turto, Panu Åkerman

Sisältö Esittely Vertailua muihin Komponentit, arkkitehtuuri Turvallisuusmalli Sovelluskehitys ja työkalut Jakelu, asennus Demo-sessio Ajatuksia, mielipiteitä ja kysymyksiä

Esittely Aikaisempi nimi Adobe Apollo AIR=Adobe Integrated Runtime Cross-operating system platform to build and deploy Rich-Internet Applications to the desktop using existing web development technologies (Flash, Flex, HTML, JavaScript, AJAX). Tämän hetkinen versio beta 2

Esittely Cross-operating system Tällä hetkellä saatavana Windowsiin ja Mac OS Xään. Linux suunitelmissa, mutta ei tule 1.0 versioon. Käytännössä Adobe odottaa täyden Flash core -tuen valmistumista Linuxille. Mobiililaitetuki on roadmapissä (mitä ikinä se runtime tarkoittaakaan). Oma ajoympäristönsä eikä tukeudu selaimeen. Virtuaalikone(et) ja kirjastot. to build Adobe AIR käsittää myös SDK:n ja perustyökalut. Määrittelee käytettävät ohjelmointikielet, sekä vähän prosessia ja kirjastoja.

Esittely and deploy Määrittelee ja toteuttaa jakelu- ja asennusmekanismin sovellusten jakeluun webissä. Tästä myöhemmin lisää. Rich Internet Applications Adobe AIR korostaa sovelluksia, jotka käyttävät webiä ja palveluita siellä, vaikkakaan mikään ei estä tekemästä muunlaisia sovelluksia. Kirjastot ja teknologiat tukevat RIA-lähtökohtaa. Webjakelu.

Esittely to the desktop Kyllä, ei selainta! Natiiveja sovelluksia työpöydälle. using existing web development technologies (Flash, Flex, HTML, JavaScript, AJAX). Ei uutta ohjelmointikieltä, vaan kokoelma olemassa olevia kieliä, työkaluja ja metodeja. Määrittelee jollain tasolla yhteentoimivuuden näiden tekniikoiden välillä. Adobe korostaa itse tätä: ei tarvetta opetella uusia kieliä/työkaluja, vaan kehittäjä voi käyttää osaamaansa tuttua ympäristöä. Adoben mukaan kehitys voi pohjautua mihin tahansa edellä mainittuun tekniikkaan.

Vertailua Ei selaimen hiekkalaatikkoa. Tulos on natiivi työpöytäsovellus, jota ajetaan samoilla oikeuksilla kuin mitä tahansa natiivia sovellusta. Työpöytäintegraatio tulee mukana, eli hyvä tuki ominaisuuksille kuten drag-and-drop, system tray ja niin edelleen. Offline-käyttöä korostetaan (kuten nykyään tekee myös Google) Flash/Flex

Vertailua Useita ohjelmointikielivaihtoehtoja, joita ajetaan samassa ajoympäristössä (virtuaalikoneet taitavat olla erillisiä?). Eli vähän samaa kuin MS.NET/Silverlight. Määrittelee myös sovelluksen asennus- ja jakeluprosessin. Työkalukeskeinen (samaa kuin Silverlight:ssa?) Varsin omaperäinen turvallisuusmalli, mikä johtuu varmasti osaksi siitä, että ei ole käytössä selaimen hiekkalaatikkoa.

Arkkitehtuuri, komponentit AIR on Adobe AIR runtime Adobe AIR SDK Työkalut Tärkeimmät ajoympäristön komponentit Virtuaalikoneet Tamarin-projektista ActionScript (Flash runtime), JavaScript Open source ActionScript suoritetaan käännettynä tavukoodina, JavaScript tulkataan Webkit HTML engine Open source. Käytetään esittämään web-sisältöä, ja webajoympäristönä Käytetään myös Safarissa. SQLite tulee mukana

Arkkitehtuuri, komponentit Mielenkiintoisia komponentteja kehittäjälle HTMLControl Käytetään peruskomponenttina web-sisällölle ja sen ajamiselle kaikissa tekniikoissa. Ajaa JavaScriptin ja renderöi HTML:n. Tarjoaa pääsyn JavaScriptissä määriteltyihin olioihin. Natiivissa ikkunassa UIkomponetti. WindowContainers Application container Flash/Flex-puolella (ja loppujen lopuksi myös JavaScriptille). ServiceListeners Helpottaa offline-toiminnallisuutta.

AIR-turvallisuusmalli Evoluutio Flashin mallista Sovellukset oikeudet laajemmat kuin selaimessa Virtuaalikonepohjainen eli muistin käyttöä hallitsee ajoympäristö Asennustoiminnallisuus on osa turvallisuusmallia

AIR-turvallisuusmalli Ajonaikaiset oikeudet määritellään tiedostokohtaisesti, perustuen niiden alkuperäiseen lähteeseen. Tiedostot jaetaan turvallisuusryhmiin, joita kutsutaan hiekkalaatikoiksi (sandboxes). Sandboxit Applications Tiedostot sovelluksen omassa hakemistorakenteessa, kaikki oikeudet Remote Local-trusted Local-with-networking Local-with-filesystem Sandboxit (ja tiedostot niissä) on oletusarvoisesti erotettu toisistaan. Koodin dynaaminen evaluointi on rajoitettua.

AIR-turvallisuusmalli Yhteistoiminta application- ja nonapplication- hiekkalaatikoiden välillä Sandbox bridge, toimii gateway-komponettina Tarkoitus on, että kehittäjä voi eksplisiittisesti päättää, mitä toiminnallisuutta tarjotaan hiekkalaatikosta ulospäin, ja tarjota toiminnallisuus ilman että objekti-referenssejä välitetään.

Kehityksen raamit Mahdollisia lähestymistapoja on useita HTML & AJAX Flash Flex Kaikissa lähestymistavoissa on paljon samoja ohjelmistoteknisiä osia Työkaluilla on suuri merkitys

Lähestymistapojen tekniikat HTML & AJAX Flash Flex 1. (X)HTML, CSS jne. 2. Javascript 3. AJAX-kirjastot 1. Flash-animaatiot 2. ActionScript 3.0 1. MXML 2. ActionScript 3.0 3. Flex-luokkakirjasto Tekniikat kohderyhmän mukaan Yhteistä ECMAScriptin / Javascriptin käyttö Flash-tavukoodi Flex on uusin ja mielenkiintoisin

Arkkitehtuuri

Lähestymistapojen työkalut HTML & AJAX Flash Flex Dreamweaver CS3 Flash CS3 Flex Builder Jokaiselle tavalle sitä tukeva Adobe-tuote AIR-paketointi jokaisen kohdalla lisäominaisuus

ActionScript 3 ECMA-262-standardin 4. version toteutus Javascript-kieli höystettynä mm. luokilla nimiavaruuksilla staattisella tyypityksellä

Ohjelmien jako AIR-ratkaisussa ohjelmat asennetaan paikallisesti Ajoalusta asennetaan ensimmäisen AIRsovelluksen yhteydessä AIR-sovellukset allekirjoitetaan digitaalisesti

Demot ja Esimerkki Työpöytäintegraatio Verkkopalvelujen käyttö Itse tehty ristinolla Adobe Flex Builder ActionScript Paketointi

Mielipiteitä Uusi Java? Mikä on iso ero Java Webstartiin. Mainoskalvojen benefit-listat ovat hyvin samanlaiset. Kohdeyleisö enemmänkin graafiset suunnittelijat? Onko tämä sittenkin vain Flex-ympäristö, ja muut häviävät aikanaan Tekniikoiden yhteiskäyttö ei toimi hyvin, tosin saattaa johtua beta-vaiheesta Työkalukeskeisyys Mainospuheista huolimatta ilman työkaluja tekeminen varsin takkuista. Ei loppujen lopuksi tuo juuri uutta, paketoi olemassa olevaa pienin muutoksin ja antaa sille nimen. AIR-kirjasto sisältää 3 uutta luokkaa. Adobe: AIR=uusi paradigma. Hmmm.