2005-04-12

Ajaxin ja Flashin suhteesta

Re: JavaScript is not the devil's plaything, This is not another XMLHttpRequest article ja Drawing a line in the sand: No more IE 5.x support in Basecamp and our future products.

Rakennetaanko tulevaisuuden web-sovellukset JavaScriptistä, jonka seassa on vähän HTML:ää tai XML:ää, eikä toisin päin? Johtuuko tämä palvelimen kanssa suoraan kommunikoivia JavaScript-sovelluksia käsittelevien artikkelien tulva uudesta hienosta nimestä ja uutuuksien seuraamisesta, vai onko nyt vain hyvä tilaisuus kirjoittaa jo kauemmin mieltä vaivanneesta asiasta?

En tiedä, jään seuraamaan vielä tilannetta. Toivoisin vain, että joku artikkeli vihdoin vastaisi yhteen pitkään minua mietityttäneeseen asiaan. Lähes jokainen JavaScriptiä tukeva selain tukee myös Flashia. Miksi siis Flashia edellyttävillä sovelluksilla (saati sitten sivustoilla) on edelleen huono maine, mutta JavaScriptin edellyttäminen on askel kohti parempaa tulevaisuutta?

Ei minulla periaatteessa ole mitään nyt visioitua uutta uljasta maailmaa vastaan. Oikeastaan olisi aika mukava lähteä liikkeelle suunnittelutyöhön siitä oletuksesta, että JavaScriptiä saa käyttää kaikkeen missä se tuntuu hyödylliseltä. Haluaisin kuitenkin tietää, miten tämä visio eroaa eilisen toteutumattomasta visiosta.

Lisäys 13.4.: Lisätty pitkähköä, puolivalmista pohdintaa kommentteihin. Kannattaa myös lukea myös ensimmäiset kommentit.

Kommentit:

Anonymous Anonyymi totesi...

Niin. Se on kyllä hyvä kysymys, miksi Flashiä sorsitaan. Etenkin kun otetaan huomioon, että object-elementti mahdollistaa vaihtoehtoisen esitystavan Flashittömille selaimille. Lisäksi Flash tuntuu jopa paremmalta työkalulta noin selainyhteensopivuutta ajatellen: JavaScriptin käsittelyssä selaimissa on eroja, mutta Flash Player toistaa Flashit aina samalla tavalla.

No, onhan Flash kehitysympäristönä älyttömän surkea: kaamea XML-parseri, jumalattoman buginen käyttöliittymä, aikajana-ajattelu ja hirvittävä Action Script -editori tekevät kehitystyöstä tuskaa.

Flashissä on paljon huonoa, mutta silti se on minusta aliarvostettu. Tosin, en ole Flashillä muuta tehnyt kuin satunnaista kikkailua.

12:26 ip.  
Anonymous Anonyymi totesi...

Olisiko ongelma se, että Flash sitoo sisällön tiukasti tiettyyn muotoon?
Toimii tietyissä sovelluksissa, jos käyttöliittymää ei ole onnistuttu ryssimään.

JavaScript loppupeleissä tuottaa uutta ja muokkaa vanhaa html:ää ja kun se toimii selaimessa, niin se mahdollistaa aina paremman kontrollin kuin FlashPlayer.

Oikea työkalu oikeaan paikkaan. Toivottavasti historiasta on opittu jotain, eikä nähdä Ajaxia Ajaxin takia. Ei niin hyvin toimivia palveluita tulee varmasti. Kaikki ei JavaScriptiä kuitenkaan hallitse, joten purkalta ei voi välttyä.

4:45 ip.  
Blogger Aapo Laitinen totesi...

Näissähän artikkeleissa on nyt esitetty, että web-sovellusten osalta voitaisiin laajemminkin "tehdä gmailit". Siten siis, että käyttöliittymässä lähes kaikka ruudulla näkyvä on tavalla tai toisella JavaScriptin kautta luotua tai muokattua.

Eli normaalista JavaScriptistä, myös XMLHttpRequestia hyödyntävästä sellaisesta, joka liittyy tekijän ja tilanteen mukaan enemmän tai vähemmän siististi pohjana olevaan HTML-sivuun siirrytään todella yksinkertaiseen sivuun, joka toimii pelkästään JavaScript-koodin lataajana ja tämä JavaScript sitten rakentaa näytöt (ei siis enää sivut, koko sovellus toimii yhdellä sivulla).

Flash tai Ajax, kumpikin tulisi näissä tilanteissa täyttämään koko selainikkunan, eli JavaScriptin hyvistä mahdollisuuksista sivun manipulointiin DOM:in kautta ei enää ole hyötyä, koska varsinaista sivua ei enää ole :)

Kun asiaa olen miettinyt, on Flashissa ainakin se ongelma, että kunnollista avoimen lähdekoodin playeria ei ole olemassa. Kuitenkin erityisesti tuossa ensimmäisessä artikkelissa (Devil's Plaything) puhutaan kohdeyleisön valitsemisesta ja aivan samalla lailla kuin JavaScriptittömät voi myös Flashittomat jättää pois kohdeyleisöstään.

Ehkä perusteita perusteita voisi tosiaan hakea siitä, että Flash on aika hirveä kehitysympäristö sovelluksille. Toisaalta en kyllä ole vieläkään nähnyt yhtään hyvää JavaScript-IDE:ä (myös Venkman on hieman ikävä Delphiin tottuneelle).

Tai ehkä voimakkaasti dynaamisten web-sovellusten laatimiseen tottuneet henkilöt tuntevat JavaScriptiä laajemmin kuin Flashia. Mutta taas toisaalta, Flashin mahdollisuudet on tunnettu jo kauan ja kyllä siinä ajassa olisi ehtinyt opetellakin, jos olisi ollut kiinnostunut "HTML:än ulkopuolelle" menemisestä.

Vai onkohan noita Flash-sovelluksia jo olemassa, mutta ne ovat vain niche-tavaraa, jota tavallinen webin käyttäjä ei kohtaa? Silloinkin on tosin hyödyllistä kysyä kysymys, miksi Ajaxin mahdollisuuksia pidetään parempina. Minä jotenkin muistelen, että Flash-sovellusten hypetyksen yhteydessä paljon useampi ilmoitti suoraan jäävänsä aluksi sivustakatsojaksi.

Tai sitten kyse on kaltevasta tasosta: laitat sivulle yhden XMLHttpRequestia käyttävän jutun ja kohta skriptiä on enemmän kuin HTML:ää :) Ja missään kohtaa ei tarvinnut opetella mitään radikaalisti uutta, kuten Flashiin siirtyessä...

6:41 ip.  
Anonymous Anonyymi totesi...

Flex on Macromedian ratkaisu perinteisen Flash-ympäristön kankeuteen RIA-kehityksessä ja keino (tosin todella kallis sellainen) päästä irti aikajana- ja sivumetaforista.

Itse liputan kuitenkin Laszlon puolesta, joka on avoin softa. Laszlo-sovellusten kehittäminen onnistuu vaikkapa Eclipsellä, johon löytyy Laszloa varten näppärä plugin.

On huvittavaa, että vielä hetki sitten JavaScript nähtiin Internetin kaiken pahan alkuna ja juurena ja nyt sama teknologia uusin maustein onkin jotain uutta ja mullistavaa :)

sad-hu

12:34 ap.  
Blogger Aapo Laitinen totesi...

Tässä kohtaa kannattaa varmaankin mainita myös Macromedia Central, joka on jonkinlainen alusta super-web-sovelluksille. Erikoisuutena offline-tuki.

2:17 ap.  

Lähetä kommentti

<< Etusivulle