.

Adobe Apollo tõotab liita veebi ja desktop’i

27.03.2007  |  Lembit

19. märtsil tuli Adobe Labs -lehel saadavale kauaoodatud (või – ammuhaibitud) Apollo platvormi alfa-versioon. Apollo rakendused toimivad opsüsteemi töölaual (desktop), ent teostatakse eelkõige veebiarendajatele tuttavate tehnoloogiatega, nagu HTML, Flash, Flex, JavaScript ja Ajax. Toimimiseks vajavad rakendused tasuta Apollo runtime‘i, tasuta jagatakse ka arendajatele vajalikku SDK-d (Software Development Kit). Kokkuvõtte eri komponentidest, mis üllitati, annab Mike Chambers: Introducing Apollo (Mike’i blogi).

Apollo stickerAdobe kirjeldab Apollo’t kui platvormi, mis võimaldab tuua veebilahendused kiiresti ja valutult desktop‘ile. See on lihtsustatud seletus, aga hakatuseks käib ka – kuni me Apollo pakutava uudse lähenemisega natuke harjume. Kui mõelda sellele power‘ile, mis Adobe lubab aasta lõpus ilmuvasse Apollo 1.0 versiooni lisada, näeme, et uuele platvormile võib ehitada igat masti rakendusi, ka tekstiredaktori, meediapleieri või graafikaprogrammi.

Siiski on platvormi tuum suuresti veebiga suhtlevates rakendustes, on ju ka Apollo loomise juures tuginetud Macromedia Central‘iga (Flash Player’ile toetuv desktop widget‘ite platvorm, mis ei saanud tuult tiibadesse) saadud kogemustele.

Veebitehnoloogiate gemüüse serveeritakse töölauale

Apollo API-de abil saab lisada Flash’i, Flex‘i ja/või HTML-i, CSS-i ning JavaScript’i abil teostatud rakendustele erinevaid opsüsteemi pakutavaid funktsionaalsusi – suhtlus failisüsteemi ja teiste rakendustega, drag and drop jms. Kuidagi saab sellesse kompotti sobituma ka PDF-indus, aga Apollo alfas PDF-ide tuge veel pole. Selles Digital Producer Magazine’i artiklis räägib Apollo tootejuht Mike Downey (selle Mike’i blogi), et native PDF-i tuge Apollo’sse siiski ei tule, küll aga saab Apollo rakendus suhelda PDF-idega tegutsemiseks Adobe Reader’iga. Viidatud artikkel on üldse parimaid-põhjalikumaid selgitama Apollo tehnilist poolt.

Esimene Apollo demorakendus, mida Adobe avalikkusele näitas, on eBay Desktop (video). Koos alfaga lisandus veel rida Apollo demosid. Samalaadseid, töölaua jaoks tuunitud, veebiga suhtlevaid rakendusi oleme näinud demotavat ka seoses teiste tehnoloogiatega nagu Windows Presentation Foundation (WPF, ehk .NET + XAML) või Mozilla loodud XUL, mis meie lemmikbrauseri ja selle laiendite taga.

Desktop 2.0

Lisaks on igasugused startup‘id, aga ka suured tegijad, loonud terve müriaadi lahendusi töölauavidinate (enamasti nimetatud widget‘iteks) valmistamiseks. Ometi ei ole veebist tuttavad lahendused töölaual revolutsiooni teinud. Saab näha, kas Apollo suudab tuua kaasa murrangu ses vallas. Loota ju võiks, sest Apollo tuum näikse olevat selles, et töölauarakenduste loomise võimalus tuua laiade arendajate masside käeulatusse.

Üks hea moodus Apollo mõistmiseks võiks olla selle võrdlemine teiste sarnaste tehnoloogiatega. Seda teeb oma blogis Adobe’i Andrew Shebanow, kes võrdleb Apollo’t väidetavate konkurentidega ja toob välja Apollo erinevused-erilisused. Apollo võrdlemine WPF-iga on mulle arusaadav, ka Firefox 3 ambitsioonidest toimetada failisüsteemis on räägitud, aga teistest selles TechCrunch’i artiklis välja toodud tehnoloogiatest, mis Andrew ette võtab, pole ma mitte midagi kuulnud. Seega saan vaid tõdeda, et desktop näib olevat tõotatud maa liigagi paljudele – kas äkki on desktop järgmine haip ja buzzword, sest Web 2.0 ei kõla enam seksikalt?

Apollo südameks Flash ja ActionScript 3

Mul pole olnud aega Adobe Labs’i wiki’sse tekkivasse Apollo dokumentatsiooni väga süveneda ja üldtutvustavatest infomaterjalidest ei õnnestu head ülevaadet saada, kuidas Apollo ikkagi täpselt üles ehitatud on. Apollo-rakenduse AIR-laiendiga installer näib aga olevat ei enamat, kui punt HTML- ja/või Flash-faile (SWF), millised seob kokku XML-kirjeldusfail (application descriptor file), ootuspärase nimega application.xml. Demovideode peamine “staar”, eBay demorakendus, on teostatud Flash’i ja Flex’iga ning videodes on näha vilksatamas tuttav Flash Player’i sätingute aken.

Seega, Apollo südameks näikse olevati ikka vana hea Flash-mängija. Muuhulgas jääb Apollo KKK-st mulje, et Flash’is teostatud rakendus oskab “süüa” ja kuvada HTML-i, aga HTML-is kirjutatud rakenduse sees Flash’i faile alfa puhul veel kasutada ei saa. HTML-i renderdamise eest hoolitseb Apollo’s vabavaraline HTML-mootor WebKit, mille peale on ehitatud Apple’i brauser Safari. Sama mootorit kasutab oma mobiilses brauseris Nokia. Muide, kelleltki Adobe’i insenerilt pärineb teravmeelne ütlus, et Apollo pole brauser, aga Apollo baasil saab hõlpsasti luua brauseri.

Lubatakse nutikat installerit ja kiiret levikut

Arendajad saavad runtime‘i ka Apollo-rakenduse installeriga kaasa pakkida. Pealtnäha sarnane süsteem Flash’i või Director’i projektoritega, millega saab kaasa pakkida vastavalt Flash’i või Shockwave’i player‘i, ent nagu selgitab Apollo KKK, on erinevus selles, et Apollo runtime‘i puhul piisab ühekordsest installist.

Paraku ei seleta KKK installimise mehhanismi täpsemalt lahti, ent teatab rõõmsalt, et tänu säensele süsteemile võivad Apollo rakenduste installerid jääda failisuuruselt märkimisväärselt väiksemaks kui Flash’ist-Director’ist tuttavad projektorid. Minu arust on siin ainus võimalus see, et rakenduse installer laeb runtime‘i vajadusel veebist…mis aga juhtub siis, kui netiühendust pole? Runtime‘i enda lõplikuks suuruseks lubatakse 5-9 MB, mis on märksa enam Flash player‘ist, ent Adobe’i oskuses tarkvara kiiresti massidesse viia ei maksa muidugi kahelda.

Apollo alfa on veel üpris toores

Praegune Apollo alfa ei suuda veel suhelda andmebaasidega, kuid vastavat funktsionaalsust lubatakse valmis 1.0 versiooniga (see on ka segane koht, veel olevat lahtine, kas mängu tuuakse mingi embedded lahendus või saab kasutada väliseid baase). Seni saab katsetada platvormi XML-tuge. Juba viidatud Apollo KKK-st ka alljärgnev olemasolevate/töösolevate võimaluste võrdlus.

Features included in Apollo alpha

Some of the features in the Apollo alpha:

  • Full HTML support within Flex- and Flash-based content.
  • Full file I/O API
  • Multiple window chrome modes (including native and custom/transparent)
  • Native windowing API (partially implemented)
  • ActionScript/JavaScript script bridging
  • Flex components
  • Low-level update APIs
  • Icon support

Features not included in the Apollo alpha

Partial list of features planned for Apollo 1.0, not implemented yet in the alpha:

  • PDF support
  • Online/offline APIs
  • Full top-level HTML application support
  • Settings/data persistence APIs
  • Drag and drop support
  • Copy and paste support
  • Native file picker dialog boxes
  • Full native window support
  • File extension registration
  • Launching an application to handle a file type
  • Full control of the right-click menu
  • Transparency in HTML

Kokkuvõtteks

Adobe’i esmane ärihuvi Apollo loomise juures näib ilmne – eesmärgiks on leida uusi kundesid arendusvahenditele nagu Flash IDE, Flex’i tootepere, Dreamweaver jne. Platvormi enese tarbeks killer app‘e välja mõelda on muidugi keerukam. Üks jalad-maas, proosaline mõte oleks see, et ehk saab Apollo abil luua apetiitseid presentatsioone (u know, firmatutvustused, aastaraamatud jms) suuresti HTML-i abil, mis oleks hõlpsam, kiirem ja odavam kui Flash’i või Director’i kasutamine.

Laiemas plaanis jääb mind aga kummitama mõte, et Apollo praegu justkui varjatud siht võib olla mobiilseadmetes. 5-9 MB ja mobiilid!? Tõepoolest, hetkel võib see tunduda meelevaldne, aga Apollo occasionally connected olemus paneb siiski vägisi mobiilidele mõtlema. Saame näha…

Veel viiteid

Kommenteeri

sulge
Saada link e-postiga

© DT 2006-2008 | Creative Commons Attribution-Noncommercial 3.0 License | WordPress