Komentáře k článku

Flex 4: začínáme

Adobe Flex

V tomto seriálu článků o Flexu 4 projdeme od základů programování ve Flexu 4 – ActionScriptovém frameworku pro tvorbu RIA aplikací. Uvidíte, že programování ve Flexu je zábava a spoustu věcí výrazně zjednodušuje. V prvním díle si probereme základy ActionScriptu, Flexu a ukážeme si vytvoření aplikace zobrazující stavy z Twitteru.

Zpět na článek

87 komentářů k článku Flex 4: začínáme:

  1. Ruthion

    Re: Flex 4: začínáme

    Zatím nic, co by nešlo udělat bez proprietárních pluginů jen v Javascriptu, HTML a CSS.

    Zajímalo by mne, ve kterém díle seriálu budu muset tento komentář upravit na “ … v … HTML5 …“. A také jestli bude díl, pod který bych toto napsat nemohl (a tedy, zda něco ospravedlňuje existenci Flexu a Flashe jako takového).

    1. Pavel Šimek

      Re: Flex 4: začínáme

      Existenci Flashe jednoduše ospravedlňují ty jeho vlastnosti, které neobsahuje HTML (a to ani verze 5), CSS a JS. Předpokládám, že všichni ví, že takové vlastnosti existují. A zároveň, že asi nebudou předmětem první části zevrubného seriálu.

      1. Ruthion

        Re: Flex 4: začínáme

        Možná takové vlastnosti existují, ale zatím jsem je neviděl nikde použité. Jeho existenci (zatím) ospravedlňuje zejména to, že některé věci umí v některých prohlížečích rychleji.
        Je mi jasné, že do prvního dílu seriálu se složité věci nedávají, ale mohl by tam být uveden nějaký důvod, proč se tuto platformu vůbec učit, když pro drtivou většinu aplikací prostě není potřeba.

        1. Pavel Šimek

          Re: Flex 4: začínáme

          Vy jste třeba nikdy neviděl „street view“ na Google mapách?

          Jinak souhlasím, že flashařů není potřeba tolik jako webařů… Takže těžko uvést nějaký důvod, proč se tu platformu učit. Pro někoho může být důvod třeba právě situace na trhu práce… my jsme měli problém sehnat vývojáře flashových her… naopak na web se našli lidi snáze.

          1. Pavel Šimek

            Re: Flex 4: začínáme

            Abyste mě nenachytal na švestkách – bitmapové operace potřebné pro to street view jdou asi i na HTML canvasu, takže to spadá do té vaší kategorii „flash je pouze rychlejší“. Dobře, pak ale určitě jste někdy viděl nějaký audio/video chat nebo hru s peer-to-peer komunikací…

              1. Tom KrchaAutor příspěvku

                Re: Flex 4: začínáme

                Sockety byly ve Flashi od verze 6 (rok 2002) v podobe XMLSocket tridy a od verze 9 (rok 2006) mate k dispozici flash.net.Socket, ktery se umi pripojit na uplne libovolny TCP socket – i telnet, VNC, apod.

                Napr. FVNC se umi pripojit na vas VNC server, cili zobrazit a ovladat vasi plochu:
                http://osflash.org/fvnc

            1. Ruthion

              Re: Flex 4: začínáme

              Jinak s audio/video chatem musím uznat, že neviděl a nedokážu si přepis do JS představit (v současném stavu).

          2. Ruthion

            Re: Flex 4: začínáme

            Viděl. Není to nic, co by nešlo v HTML5 s 3d (a možná i 2d) canvasem udělat pomocí javascriptu. Na IE by to jelo pomaleji (má pomalý JS a canvas se tam musí řešit oklikou), na linuxu (kde je podpora flashe tristní, zvláště na 64b systémech) rychleji. Takže i pro streetview platí, co jsem napsal – existence ospravedlněná pouze rychlostí v některých browserech.

    2. Tom KrchaAutor příspěvku

      Re: Flex 4: začínáme

      jeste jsem se vas chtel zeptat na jednu vec. Jak se dela Binding v JavaScriptu a HTML5?

      1. František Kučera

        „binding“

        Ručně blbě. S frameworkem snadno. Pro uživatele je důležité, že mu stačí obyčejný webový prohlížeč, nepotřebuje pluginy a nemá zbytečně zatížený procesor – co je za framework na serveru ho nezajímá ani zajímat nemusí. Dá se použít třeba GWT nebo nějaký jiný z nepřeberného množství frameworků pro Javu (nebo jiné platformy).

        BTW: HTML5 s tím nějak moc nesouvisí, resp. není potřeba. Dost zajímavá technologie je XForms – i když nemají podporu v prohlížeči, dají se „vyrenderovat“ do XHTML a JavaScriptu (XSLTForms, Orbeon, Chiba…). Ukázka: http://www.orbeon.com/orbeon/xforms-controls/

        1. Tom KrchaAutor příspěvku

          Re: „binding“

          jsem zkusil, ale zas tak cool mi to neprijde – je to pomale, porad si to neco loaduje ze serveru a vysledne chovani neni az zas tak user-friendly.

          Zkuste si napr:
          https://timesreader.nytimes.com/ – spickova usability

          i Reiffeisen si uvedomuje, ze jednotne a funkcni prostredi je dulezite pro jeho zakazniky a preklopil tak do Flexu cely e-banking:
          http://www.riaspace.net/2009/10/r-quick-first-adobe-air-based-e-banking-solution-from-raiffeisen-bank-polska/
          download: https://www.r-bank.pl/web/en/air/

          doporucuju mrknout na enterprise Flex dema:
          http://www.adobe.com/flashplatform/technology/enterprise/

          napr. Nasdaq bezi kompletne na Flexu:
          http://www.adobe.com/flashplatform/apps/nasdaq/

          Taky hezka ukazka vyuziti Flexu – Realtime Dashboard s mapou sveta – kdyz nekdo klikne na nejaky tutorial v TourDeFlex aplikaci, objevi se info o tom zde:
          http://visudemos.ilog.com/tourdeflex/TdFDashboard/TourDeFlexDashboard.html

          Jinak doporucuju i TourDeFlex – plno tutorialu na Flex:
          http://www.adobe.com/devnet/flex/tourdeflex/

          1. Ruthion

            Re: „binding“

            Hm, adobe air … ale to už tedy nesrovnávejme s čistě webovými technologiemi. Pokud potřebuji něco stáhnout a nainstalovat, tak to klidně mohlo být napsáno v C++, unreal enginu nebo v programovacím nástroji Petr.
            Adobe air je, jestli se nemýlím, IDE, které umožňuje vytvářet DESKTOPOVÉ aplikace. Proti tomu nic nemám, někdo rád dělá v haskellu, jinému více sedí actionscript.

            Kromě toho, jak je na tom flash s přístupností, poradí si s ním čtečka obrazovky ?
            A co SEO, umí googlebot parsovat swf soubory ?

            A když už jsme u příkladů, co dokáže holý prohlížeč bez flashe, …

            Mnoho drobností …
            http://www.chromeexperiments.com/

            Tyto stránky NEJSOU ve flashi…
            http://www.worldofmerix.com/

            Hezká ukázka použití JavaScriptu, hra, která generuje nepřátele, když někdo použije službu digg:
            http://blog.nihilogic.dk/2008/11/digg-attack-javascript-game.html

            E-banking, ke kterému není potřeba nic instalovat
            https://www.servis24.cz
            E-banking v jednotném funkčním prostředí (java)
            https://www.mojebanka.cz/InternetBanking/?ai=002&L=CS#

            1. Pavel Šimek

              Re: „binding“

              Ne, AIR není IDE, je to runtime – zjednodušeně řečeno Flash Player běžící mimo browser.

              Jinak ukázky jsou hezké, kdyby tak ještě běžely všude…

              Kdyby Flash posloužil jen k tomu, že ukazuje JavaScriptu cestu (stejně jako Chrome slouží k vybuzení konkurence, aby zrychlila JavaScript), tak to bude jen dobře. A i Adobe si určitě uvědomuje, že hlavní dojnou krávu má ve vývojářských nástrojích a přepnout výsledný export ze SWF na JS bude relativně snadné… Největší škoda je podle mě v tom, že byl odmítnutý ten chystaný standard, který by JavaScript přiblížil ActionScriptu, protože současný JS je jazyk, ve kterém bych fakt nechtěl psát např. hry nebo cokoliv většího.

              A co se týče SEO, ano, googlebot umí parsovat SWF, ale nepochopil jsem, k čemu je dobré indexovat aplikace a texty v nich… jako „Game Over“ nebo „Vytvořit trvalou platbu“ nebo „Chybná vstupní data“… :)

          2. František Kučera

            Uzavřenost

            Moje hlavní výhrada k Flashi je to, že se jedná o uzavřený plugin – přičemž nejde ani tak o slovo „plugin“ jako o „uzavřený“. Internet by měl stát na otevřených standardech a možnosti vytvářet vlastní implementace – např. máme HTTP a různé implementace klientů i serverů – nevadí, že je na jednom konci IIS a na druhém Firefox, nebo že Apache a MSIE, prostě se díky standardu domluví. Podobně fungují SMTP, HTML, MIME atd. Flash do tohoto světa nezapadá. A nemyslím si, že by to byl nějaký zbytečný idealismus – otevřenost má praktický smysl.

            Po technologické stránce je Flash samozřejmě zajímavá věc a nedivím se, že má i dost nadšených vývojářů. Ale i když přestaneme řešit jeho uzavřenost, tak jsou tu i praktické problémy – hlavně na ne-windows platformách. Kromě občasné nestability nebo přehnaného vytěžování CPU mě trápí hlavně nemožnost zadávat české znaky (nebo jiný unicode) do flashových formulářů. To prakticky brání v používání těchto aplikací v Linuxu. Chyba FP-40 je prý už opravená (po dvou letech?), ale jestli tomu tak skutečně je, se mi nepodařilo zjistit, protože pro vstup do jejich JIRy je potřeba se přihlásit (zaregistrovat se). Chápu, že psát komentáře nebo zadávat chyby nemůže každý… ale vyžadovat registraci/přih­lášení jen kvůli tomu, aby se člověk podíval v jakém stavu „bug“ je nebo si přečetl jeho popis?? Na takové technologii má stát internet, který slouží ke komunikaci všech lidí?

            1. Pavel Šimek

              Re: Uzavřenost

              „Na jednom konci IIS, na druhém Firefox“ – když tohle převedeme do světa Flashe, tak jeden konec toho řetězce je otevřený úplně stejně (servery či vývojářské nástroje produkující SWF může vytvořit kdokoliv) a jak to vypadá na té druhé straně (klient), to upřímně řečeno nevím úplně přesně (líp by asi odpověděl Tom Krcha), ale tak úplně uzavřené to asi taky nebude, když existuje třeba Gnash.

              Chyba FP-40 už prý opravena je. To, že se do bugtrackeru musím registrovat, mi nepřijde divné. Je to analogické jako třeba bugtracker Mozilly, apod. ne? Prostě je to konkrétní software od konkrétní společnosti. Infrastruktura (formáty, protokoly) je ale otevřená, nebo aspoň čím dál otevřenější (viz nedávno uvolněné standardy RTMP, AMF pro komunikaci a remoting).

              1. Tom KrchaAutor příspěvku

                Re: Uzavřenost

                tak vidim, ze si stihl odpovedet zatimco jsem si v prubehu rozepsaneho komentare povidal s kolegou :)))

              2. Ruthion

                Re: Uzavřenost

                Analogické to není …
                Srovnejte, bez registrace a přihlášení dostupné informace zde:

                http://bugs.adobe.com/jira/browse/FP-40
                a zde
                https://bugzilla.mozilla.org/show_bug.cgi?id=4040

                Dokážete, jakožto běžný, anonymní návštěvník, říci, jestli je odkazovaný bug vyřešen ? Něco jiného je registrace, pokud chci ohlásit bug, ale pro čtení ??

                Pak se člověk diví, že existují služby jako bugmenot
                http://www.bugmenot.com/view/bugs.adobe.com

                1. Pavel Šimek

                  Re: Uzavřenost

                  Já nevím, mě to prostě nevadí a především to je už trochu off topic. Klidně si udělejte vlastního Flash klienta s vlastním bugtrackerem, pokud se vám nelíbí tento. :) To, že ve světě Flashe existuje více alternativních vývojářských nástrojů a pouze jeden klient (nepočítáme-li ten Gnash), svědčí nejspíš o tom, že to tak drtivé většině lidí vyhovuje, jinak by tomu bylo jinak. Ostatně svět webu pomalu také směřuje k jednomu renderovacímu jádru (WebKit), nebo se pletu?

                  1. pr.rybar

                    Re: Uzavřenost

                    > To, že ve světě Flashe existuje více alternativních vývojářských nástrojů a pouze jeden klient (nepočítáme-li ten Gnash), svědčí nejspíš o tom, že to tak drtivé většině lidí vyhovuje, jinak by tomu bylo jinak.

                    To ze je vo svete Flash iba jeden klient (ak nepocitame Gnash) moze svedcit aj o tom, ze drtivu vacsinu ludi Flash nezaujima.

                    > Ostatně svět webu pomalu také směřuje k jednomu renderovacímu jádru (WebKit)

                    Flash a WebKit maju rovnaky vyvojovy model? Je Adobe Flash open source a pod GPL/LGPL? Myslim ze porovnavate neporovnatelne. Na jednej strane uzavrety kod Flashu a na druhej strane otvoreny komunitny projekt WebKitu.

                    1. Pavel Šimek

                      Re: Uzavřenost

                      Adobe Flash Player vyvíjí firma Adobe jako konvenční software. Kdyby chtěl někdo vyvíjet alternativního klienta jako open source, tak klidně může. A právě to chci říct – nikdo nechce. Stejně jako se v dnešní době nikdo nechce pustit do alternativního renderovacího jádra HTML – k tomu směřovalo moje přirovnání. Komunita vývojářů ve světě Flashe se mnohem radši upírá k užitečnější činnosti, jako je např Flex Framework, který jako open source projekt vzniká.

                      Samozřejmě, že Flash nezajímá tolik lidí jako web a je to tak správně. To jen v těchto diskusích je ten zájem pro mě nepochopitelně zvýšený. V záhlaví tohoto článku nebylo napsáno, že by měl zajímat 100 % čtenářů, natož že by čtenáři měli na úkor Flashe přestat používat nějakou jinou technologii. :)

                  2. František Kučera

                    Re: Uzavřenost

                    „To, že ve světě Flashe existuje více alternativních vývojářských nástrojů a pouze jeden klient (nepočítáme-li ten Gnash), svědčí nejspíš o tom, že to tak drtivé většině lidí vyhovuje, jinak by tomu bylo jinak.“

                    IMHO to spíš svědčí o tom, že do května 2008 licence ke specifikaci výslovně zakazovala její použití pro vytváření přehrávačů – specifikace se směla použít jen pro vytváření nástrojů na tvorbu flashů, ne jejich přehrávání. A ani teď není bez problémů možné vytvořit svobodnou implementaci.

                    Situace se možná pomalu zlepšuje a jednou se třeba dočkáme toho, že Flash bude stejně svobodný jako třeba XHTML nebo JavaScript, kde existuje otevřený standard a pak řada implementací. To bude jedině dobře – ale do té doby je Flash zlo, byť někdy nutné a člověk se k němu z pragmatických důvodů uchýlí (flashové hry pro děti :-))

                    1. Pavel Šimek

                      Re: Uzavřenost

                      No je to zajímavé, co je pro vás kritériem pro „zlo“. Pro mě to je spíš něco okolo efektivity práce, přínosů pro uživatele, atd. Myslím, že do alternativního flashového klienta se nikdo nepustí. Ale já to pro vás udělám, aspoň ho začnu psát – bude-li to stačit, aby ve vašich očích přestal být Flash zlem. ;-)

                      1. František Kučera

                        Re: Uzavřenost

                        S tímhle přístupem se můžeme vrátit do 90. let, donutit lidi, aby používali Internet Explorer (resp. Flash), tedy jedinou implementaci. Vždyť je to přece paráda, vytvářet web pro jediný prohlížeč (resp. Flash) a nemuset se ohlížet na alternativy, ne?

                        Naštěstí z toho webaři vyrostli a dnes by se člověk musel stydět za web, který uživatele nutil použít jeden konkrétní prohlížeč. Flash je v tomto směru trochu pozadu, protože udělat web ve Flashi prakticky znamená, nutit uživatele, aby použil implementaci od firmy Adobe. Jasně, dá se na to kašlat, odříznout těch „pár“ uživatelů, kteří flash nemají, dá se na tom i založit byznys*… ale není to správná cesta. Stejně jako nebyla správná cesta vytvářet weby „optimalizované pro MSIE a rozlišení 800×600“, ale to se ukáže časem…

                        *) jak jsem psal výše, někdy se k němu člověk z pragmatických důvodů uchýlí, ale rozhodně to není nic, co by mi dělalo radost nebo něco, co bych se s nadšením učil a chtěl to používat pro svoje aplikace (člověk občas dělá věci, které nechce).

                        1. Pavel Šimek

                          Re: Uzavřenost

                          Já nevím, jestli mi nerozumíte nebo se jen tak tváříte. Bude vám stačit, když to shrnu tak, že schvaluji otevřenost standardů, schvaluji svobodu možnosti tvorby softwaru nad těmito standardy (a pouze se nedomnívám, že by to v případě flashového klienta někdo reálně chtěl využít)? Co to má společného s MSIE, který si svého času implementoval standardy po svém, to opravdu nechápu.

                        2. Tom KrchaAutor příspěvku

                          Re: Uzavřenost

                          ad „open-web“, je nutno dodat, ze treba iPhone ani iPad neumoznuji beh zadnych jinych prohlizecu nez Safari… taky clovek nema na vyber – je to trochu z jineho soudku, ale presto velmi related.

            2. Tom KrchaAutor příspěvku

              Re: Uzavřenost

              FP-40 je opravena: http://georgik.sinusgear.com/2009/11/17/flashplayer-10-1-skutocny-prielom-slava-adobe/ … bohuzel jsem nebyl v dobe vzniku bugu na sve aktualni pozici drive a nemohl jsem zatlacit na reseni. Budu rad, kdyz mi podobne veci budete posilat na mail at na ne muzu tlacit a vyresi se co nejdriv.

              Flash pouziva radu otevrenych standardu a otevrel radu protokolu jako RTMP, AMF apod. SWF i FLV je otevrene. Navic zdrojaky se poskytuji vyrobcum HW a chipsetu v ramci http://openscreenproject.org/ – proto je FP10.1 HW optimalizovany napr. pro Nvidia karty, Nexus One, Palm Pre atp.

              Flex je kompletne open-source.

              Jinak open veci od Adobe najdete taky zde: http://opensource.adobe.com/

              Btw: iPhone je kompletne uzavreny a nikomu to nevadi – dokonce si diktuje jake aplikace pro nej vzniknou. Safari je postavene na open-source webkitu, ale taky neni otevrene – ani k Internet Expoloreru nesezene zdrojaky, nebo se mylim?

              1. František Kučera

                Re: Uzavřenost

                „iPhone je kompletne uzavreny a nikomu to nevadi“

                Netvrdil bych, že to nikomu nevadí… ale v případě iPhonu mám na výběr, nemusím si ho kupovat, nemusím se zajímat o jeho aplikace… a přesto si můžu telefonovat a SMSkovat s lidmi, kteří si iPhone koupili.

                „ani k Internet Expoloreru nesezene zdrojaky“

                Už hodně dlouho se mi nestalo, že bych narazil na stránku, která by vyžadovala IE a nutila mě ho použít. Existuje standard a řada implementací (Firefox, Opera, IE, Safari…) a mezi webaři se stalo módou (v dobrém slova smyslu) vytvářet weby, které nejsou optimalizované pro konkrétní prohlížeč, ale které fungují obecně a podle standardů. Nemám žádný problém s tím, že vedle otevřených implementací existují i uzavřené – nikdo mi ten IE totiž nenutí (alespoň dnes – ne vždy tomu tak bylo).

                Kdežto na stránky, které mě nutí k použití Flashe, narážím velmi často. Je to vlastně podobná situace jako kdysi, když člověk narážel na weby „optimalizované pro MSIE“. Situace u XHTML, CSS, JS je dnes uspokojivá – ale Flash má před sebou ještě velký kus cesty, než se dotáhne na tuhle úroveň standardizace a otevřenosti.

                P.S. vím, že pláču tak trochu na špatném hrobě – Adobe dělá jen svoji práci – lobovat má smysl spíš u tvůrců webu, aby publikovali obsah (např. video) i v jiných formátech a mysleli na to, že ne každý má (nebo chce mít) Flash – stejně jako si kdysi museli uvědomili, že ne každý má (nebo chce mít) Internet Explorer.

                1. Pavel Šimek

                  Re: Uzavřenost

                  Ne každý má (nebo chce mít) počítač, na něj bychom měli taky myslet (prý vyšel Facebook v tištěné podobě :)).

                  Ano, chcete-li si zahrát hru nebo prohlédnout panoramatickou fotku, musíte mít Flash. Když mi řeknete, jak srovnatelně efektivně a levně vytvořím daný obsah bez použítí Flashe, já to začnu dělat. To asi spíš bude ten správný hrob, na kterém brečet, ne?

                  1. Tom KrchaAutor příspěvku

                    Re: Uzavřenost

                    Hlavne to neni jenom o pluginu, ale o rychlosti a snadnosti vyvoje. Mam zkusenosti i s vyvojem v JavaScriptu a uprimne to bylo pro me vzdy zlo v nem neco vubec delat.

                    Me by zajimalo jake mate vy zkusenosti s JavaScriptem … ale opravdu se to neda srovnat s ActionScriptem 3.0, Javou ani C# – ktere se pouzivaji v pluginech – to je uplne jina basen.

                    Navic mate pro tyto „lepsi“ jazyky i mnohem pokrocilejsi vyvojove nastroje nez pro JS.

                    Zkuste si napr. tento tutorial o propojeni Flexu s databazi na serveru pres PHP. Je to cista radost http://zdrojak.root.cz/clanky/spojeni-flex-4-a-php-ve-flash-builderu-4/

                    1. František Kučera

                      Java FX

                      Pro mne je zase čistá radost psát v Javě s EJB na straně serveru. Java FX na straně klienta dokáže moc pěkné věci – třeba tahle hra. Doufám, že v sobotu bude pod komixem místo Pacmana Dukeman a místo kokeše kafe :-D Každý prostě máme to svoje. Tak doufám, že se čtenáři touhle exhibicí pěkně baví :-) Další příklady. BTW: souhlasím s tím, že psát v JavaScriptu něco složitějšího je tak trochu peklo – web prostě není primárně platforma pro aplikace.

                    2. pr.rybar

                      Re: Uzavřenost

                      > Zkuste si napr. tento tutorial o propojeni Flexu s databazi na serveru pres PHP. Je to cista radost http://zdr­ojak.root.cz/clan­ky/spojeni-flex-4-a-php-ve-flash-builderu-4/

                      Tak presne tent typ aplikacie aky je v tom tutoriali je ten, ktory by som vo Flashi nikdy nerobil. :(

                      Myslim ze je podstatne jednoduchsie a bez akehokolvek generovaneho kodu je vyrobit v PHP REST sluzby vracajuce data v JSON formate a klientska cast aplikacie (HTML, CSS, AJAJ, Javascript) je hracka pre niekoho, kto pozna trosku Javascript. A pozor, staci mi na to textovy editor … zadarmo!

                      Ten tutorial je ukazkou ako robit jednoduche veci zlozito.

                      1. Pavel Šimek

                        Re: Uzavřenost

                        Proč zdůrazňujete, že v textovém editoru a zadarmo, když flexové aplikace se taky můžou psát v textovém editoru a kompilátor je zadarmo?

                        O zbytek se hádat nebudu – mám rád Flash, ale s Tomem Krchou se malinko rozcházím v tom, že tam, kde není potřeba, bych ho na web nepoužíval (různé formulářové aplikace ve Flexu dělám taky, protože nic snazšího neovládám, ale jen např. různé neveřejné administrační rozhraní, apod.). Naštěstí mě živí hry, takže tam při volbě platformy žádné dilema nemám.

                        1. pr.rybar

                          Re: Uzavřenost

                          > Proč zdůrazňujete, že v textovém editoru a zadarmo,

                          Lebo v tutoriali sa pise:

                          „Klikneme na Generate sample PHP class.“
                          „V panelu Data/Services přibyla služba EmployeesService a na serveru se vygeneroval kód EmployeesServi­ce.php (ve složce services), obsahující následující funkce“

                          Vas textovy editor vie vygenerovat EmployeesServi­ce.php?
                          Skuste si prosim naprogramovat ten tutorial v textovom editore a mozno ma zacnete chapat.

                          1. Pavel Šimek

                            Re: Uzavřenost

                            No nedivte se, že jsem vás nepochopil, když jste smíchal dohromady kritiku technologie (Flash vs. JS) s kritikou pracovního postupu (textový editor vs. placené IDE), která je obecně platná.

                      2. dc

                        Re: Uzavřenost

                        Myslim ze to je presna poznamka. Vecsinou sa vsade povaluje kopec ukazok do flexu ako spravit jednoducheho klienta na par klikov do gridu ale toto nieje problem ani v JavaScripte, dokonca taky ExtJS moze, co sa tyka moznosti komponentov a tvorby web applikacii, smelo konkurovat (inak ten ich Designer sa asi aj inspiroval flexom). Zatial som nevidel mnoho realnych aplikacii kde by mi aj ukazali realny benefit z toho ze nasadili flex/flash (priznam sa grafika ma teraz moc nezaujima aj ked ta taha ludi). Urcite tvorba vecsieho projektu bude vo flexe asi lepsia a bude to mensi bordel ale bude mat aj svoje zaludnosti. Ale na druhu stranu taky silverlight mi pripada este vecsi chaos a divim sa ludom a spolocnostiam co to nasadzuju.

                  2. František Kučera

                    Re: Uzavřenost

                    Panorama třeba pomocí Java Appletu. Ukázka: Luzern, CH. Chtělo by se říct: „plugin jako plugin, tak co na tom sejde?“ Rozdíl je v tom, že Java je pod GPL licencí – dostupná každému, svobodně. I styl vývoje je mnohem otevřenější a přátelštější (vs. JIRA u Adobe, ve které si člověk bez přihlášení ani nic nepřečte).

                    Nicméně i kdyby Flash zůstal pro hry a reklamy, nepovažoval bych to za takový problém – daleko důležitější je video. To je obsah, který by měl být dostupný co největšímu publiku, není to nic specifického, výjimečného. Video je podobný obsah jako třeba obrázek – na ty taky nepotřebujeme zvláštní proprietární software. A není to nějaký výmysl HTML5, pro video lze normálně používat značku <object/>, ta má navíc výhodu, že značky je možné do sebe zanořovat – takže můžeme mít video v různých formátech a pokud ho prohlížeč neumí přehrát, jde o úroveň níž a tam najde jiný formát nebo třeba objekt obsahující Flash nebo Java Applet, který se o vykreslení videa postará.

                    Význam otevřenosti si naštěstí uvědomují i takoví hráči, jako je YouTube a proto začínají i s ne-flashovými videi (zatím beta).

                    1. Pavel Šimek

                      Re: Uzavřenost

                      Flex (tzn. kompilátor a framework) je pod MPL, takže svobodomyslným vývojářům se také nemusí zvedat žaludek. :) Otázku „přátelskosti“ bych si s dovolením ponechal subjektivnímu zhodnocení vývojářů, kteří mají zkušenosti (a pokud možno můžou i srovnávat).

                      1. František Kučera

                        Re: Uzavřenost

                        „Flex (tzn. kompilátor a framework) je pod MPL, takže svobodomyslným vývojářům se také nemusí zvedat žaludek“

                        To zní jako skvělá pohádka se šťastným koncem – ale aby to někoho nezmátlo, je třeba dodat, že Flex ve výsledku běží v obyčejném flashovém pluginu a ten uzavřený je a jediná použitelná implementace je ta od Adobe. Kdyby ta situace byla obrácená, bylo by to o poznání lepší – vývojový nástroj klidně uzavřený, ale formát a prohlížeč svobodný – což by byla podobná situace, jako když někdo vytvoří grafiku v (uzavřeném) Photoshopu, ale nikoho tím neobtěžuje, protože výstup uloží do nějakého standardního formátu, pro který existuje řada (i otevřených) implementací prohlížečů.

                        1. Tom KrchaAutor příspěvku

                          Re: Uzavřenost

                          Existence vice Flash Playeru by akorat zpusobila totalni zmatek – optimalizoval byste tak vas vytvor pro ruzne verze, v kazde by to bezelo jinak a vysledek nula. Pri dnesnim 98% rozsireni FP mi tohle prijde celkem zbytecne.

                          Jinak jake by podle vas melo vyhody kdyby byl Flash Player open-source? Ja nejakou predstavu mam, ale zajimala by me vase.

                    2. Tom KrchaAutor příspěvku

                      IE a video tag - proc?

                      jen si rikam jednu vec, proc by IE melo podporovat H.264 ve video tagu. Sli by si sami sobe proti SilverLightu, WMV, svym streamovacim serverum atp. A pokud IE nebude video tag podporovat, bude to temer nepouzitelne

            3. Diakritikav vo FLAxi

              Re: Uzavřenost

              Dovolim si poznamenat, ze tato chyba je davno opravena. Sam som s tym mal problem v mojej aplikacii, ale po 10 minutach hladania na webe som to opravil podla pokynov….. je mozne zadavat lubovolne znaky.
              (http://manfin.rozinet.com/)

              1. František Kučera

                Re: Uzavřenost

                Vážně? Leda tak ve snu! Nebo v jejich Jiře, kam se nikdo bez registrace nepodívá.

                Místo češtiny to stále píše paznaky:
                http://disk.jabbim.cz/xkucf03@jabber.cz/flash-unicode.png

                A verzi Flash pluginu mám aktuální:
                http://disk.jabbim.cz/xkucf03@jabber.cz/flash-verze.png

                Ad „som to opravil podla pokynov“

                Což není oprava chyby té platformy, ale jen hack, workaround, náhradní řešení. A jak je vidět z těch obrázků, ani to asi nefunguje. Vím, že tenhle hack existuje (a měl by i fungovat, i když jsem to zatím nikde neviděl), ale je to principielně špatně – každý autor by totiž musel upravovat svoji aplikaci. Tu chyba by se správně měla opravit ve Flashi jako takovém a práce s unicode znaky by měla fungovat všem, aniž by se o to museli nějak snažit a „opravovat podle pokynů“ – ostatně jako to je na jiných normálních platformách. Třeba Java nebo Qt/C++.

                  1. František Kučera

                    Re: Uzavřenost

                    Tak fajn, už tam vidím „Browse without registration“
                    koho bylo potřeba popohnat? :-)

        2. Pavel Šimek

          Re: „binding“

          Mě tam v tom demu třeba vůbec nefungoval ten Rich Text Control (v nejnovější verzi Chromu), teprve po opakovaném reloadu jakž takž začal… Já těmhle frameworkům upřímně držím palce (Flash by klidně mohl zůstat jen na hry, nějaké aplikace s kamerou, peer-to-peer, atd.), ale nemůžu se nějak zbavit blbého pocitu z chatrných základů té „platformy“… ta spousta prťavých souborů, co se pořád stahuje, ten šílený jazyk, v kterém je to napsané… a řekněte, je to normální, abych přes aplikaci přejel myší se stisknutým tlačítkem a ono se mi to zabarvilo domodra? ;-)

          1. František Kučera

            Tlustý klient

            njn, není nad nativní (a otevřené) aplikace. :-) Snažit se použít web (HTTP+HTML) pro tvorbu aplikací místo pro publikaci dokumentů je vždycky trochu krkolomné (jde to ale dře to). Flash se tohle snaží řešit – je to vlastně samostatná platforma* a flashová aplikace je vlastně tlustý klient, který s webem nemá až tak moc společného. Osobně mi trochu vadí tahle mánie cpát všechno na web (nebo alespoň do webového prohlížeče) – prostě si nemyslím, že instalovat aplikaci je zlo…

            *) to, že většinou běží uvnitř nějakého prohlížeče nic neznamená, fakticky stojí vedle nich – můžu psát pro FF nebo pro Operu nebo můžu psát pro Flash – stejně jako můžu psát pro Winforms, Qt nebo GTK…

            1. Ruthion

              Re: Tlustý klient

              Instalovat a udržovat aplikaci není zlo, ale práce. A práce typicky není zadarmo a proto ta mánie …
              A nutnost instalace (potenciálně nebezpečných) aplikací z internetu jen proto, abych měl přístup k informaci, kterou lze pohodlně poslat přes HTTP/HTML JE zlo.

              1. Pavel Šimek

                Re: Tlustý klient

                No a přesně tohle se snaží řešit Adobe AIR (mimochodem, AIR zahrnuje nejen Flash, ale i HTML/JS). Kdyby AIR posloužil ostatním jen jako inspirace, jak spojit výhody obou světů (usability desktopových aplikací + bezpečnost a pohodlí webových aplikací), tak to bude dobře.

                1. František Kučera

                  Re: Tlustý klient

                  Inspirace ostatním? :-)

                  Java Web Start byl uveden v roce 2001, Adobe AIR v roce 2008.

                  1. Pavel Šimek

                    Re: Tlustý klient

                    Ano, máte pravdu, AIR není nová myšlenka, nové jsou jen některé nápady a celková orientace na webové vývojáře a designery a jejich existující znalosti… a díky tomu v něm vznikne asi víc praktických aplikací než ve Web Startu… a pak zas přijde někdo další a poučí se z toho… to je vývoj.

                  2. Tom KrchaAutor příspěvku

                    Re: Tlustý klient

                    tj – ale dulezity je taky fakt, ze Flash ma kolem sebe cely Creative Suite a mraky kreativnich lidi – proto vznikaji „hezci“ veci a tim i vic pouzivanejsi atp atp atp. ale to jen tak na okraj – berte to jen jako doplnujici informaci – ne dogma :)

                    1. dc

                      Re: Tlustý klient

                      presne, java vychadza z ineho prostredia. Bola skor tvorena z pohladu programatora nehovoriac ze zo zaciatku spory Sunu s MS javu podkopali ako aj jej orientacia prevazne na enterprise riesenia a placanie sa s GUI na desktope.
                      Naopak Flash vychadza prave z grafiky a od dizajnerskeho nastroja. A toto je pre
                      mna osobne trochu aj problem. Nezatracujem flex a podla mna ma aj buducnost ale priznam sa tak nejak sa v nom zatial stracam a stale narazam na to flashove pozadie, aj ked sa to snazi dobe flexom dost zakryt.

                      1. Pavel Šimek

                        Re: Tlustý klient

                        Tohle je trochu mýtus – Flex se nesnaží flashové pozadí zakrýt, naopak, jakmile se dostanete k něčemu složitějšímu, musíte ho znát. Vždyť třeba událostní model je definován na flashové vrstvě, ne flexové. Proto byl Flash ve verzi 9 zgruntu překopán a mě se teď zdá jak objektový model, tak i jazyk naprosto v pořádku z pohledu programátora. Co pokulhává, je dokumentace, a určitý zmatek v produktech Adobe (Flash Pro vs. Flash Builder, komponenty …).

  2. tomaash

    Pochybnosti

    Pane Krcho, Vaši snahy o přiblížení ActionScriptu a potažmo celé technologie Flash si velmi cením (už delší dobu jsem se díval po nějakém pěkném seriálu o ActionScriptu), ale i přesto z toho mám poněkud rozporuplné pocity a to ze dvou důvodů:

    1. Má smysl prezentovat tuto technologii lidem, kteří si ji nemohou vyzkoušet (tím narážím na fakt, že podstatná část čtenářů patrně funguje na Linuxu, pro který Flash Builder neexistuje, nebo alespoň to tak vypadá).

    2. Má smysl zabývat se technologií, která defakto duplikuje to, co umí resp. budou umět moderní prohlížeče během cca pěti let takříkajíc „od přírody“? Tím narážím na stále lepší podporu javascriptu, SVG, a HTML5, pomocí kterých je (resp. bude) možné udělat totéž co lze dnes udělat pomocí Flashe.

    Nemůžu se stále zbavit pocitu, že Flash je jen jakýsi cimrmanovský krok stranou na jehož konci budeme nuceni konstatovat „tudy ne, přátelé“…

    Myslím si, že skutečně užitečným počinem od firmy Adobe by bylo vývoj nějakého RIA Builderu, který by stavěl na již existujících technologiích (uznávám, že zatím to nemá smysl, neb ne všechny technologie jsou dostatečně kvalitní a rozšířené).

    1. Tom KrchaAutor příspěvku

      Re: Pochybnosti

      Tak za a) pojem RIA vznikl v Adobe (resp. Macromedii)

      b) Flex Builder 3 pro Linux: http://labs.adobe.com/technologies/flex/flexbuilder_linux/
      SDK pro linux: http://opensource.adobe.com/wiki/display/flexsdk/Setup+on+Linux

      c) za 5 let? a do te doby budete cekat? A pak co? Pak zjistite, ze byste chtel delat napr. P2P aplikace v HTML (dnes Flash uz umi) a zas budete cekat dalsich 5 let? Ve finale skoncite jako stary rozumbrada, ktery akorat do vseho keca a ridi skodovku – Flash je pro ty co chtej delat Cash. Proc je vetsina cool realtime her na Facebooku ve Flashi a ne v HTML5 teda? :)

      d) HTML bylo vzdy o x let zpet. V roce 1996 kdy vznikl Flash, aby umoznil animace na webu ubehlo 14 let. Dnes vidime prvni naznaky vektorovych animaci v HTML5.

      e) Kazda nova verze penetruje trh na cca 95% do 1 roku … browsery penetruji trh na novou verzi do nekolika let. Znam mraky lidi co stale pouzivaj WinXP a IE6.

      f) kdyz pujdete za zakaznikem a ukazete mu nejake cool veci v HTML5, zepta se vas – a komu to bude fungovat? A vy odpovite – no tem co maj Chrome, macistum v Safari no a mozna ve Firefoxu (ale pokud pouzijem video tak ne)… tak to asi neklapne :)

      g) Flash Player 10.1: HW GPU akcelerace, CPU optimalizace, polovicni naroky na pamet, beh na mobilnich telefonech atp… Clovek nemusi pouzivat zadny hacky aby mu to fungovalo nekde jinde (jak musi dnes kdyz optimalizuje pro ruzne browsery)

      h) kdy bude umet HTML normal mapping v 3D? :) http://www.unitzeroone.com/labs/vertexmap/ (klikejte na objekt)

      … muzu klidne pokracovat :)

        1. dc

          Re: Pochybnosti

          Priznam sa ze som sa snazil preniknut viac do Flashu/Flexu ale zatial som to docasne vzdal z nedostatku motivacie a casu a momentalne mam prioritu javascript a jquery (praca).
          Co mne osobne vadi na Flexe, zatial z toho „povrchneho“ pozorovania je miestami az prehnana komplexnost a x roznych ciest ako dosiahnut vysledok. Co principialne neni zle ale dost to dokaze zmiast (nieco mozem spravit cez mxml a aj cez as3 a niektore veci sa daju iba v mxml a zasa niektore iba v as3 nehovoriac o roznych nastrojoch ktore sa prelinaju). A druha vec, ktora je aj napriklad pri Silverlighte, je ten az prehanne prudky vyvoj kde verzia od verzie sa niekdy aj dost zasadne lisia v pristupoch na riesenie toho isteho problemu oproti predchadzajucej verzii.

          A k tomu co sa bude dat v buducnosti s html, to je otazne ale teraz si dovolim tvrdit ze vo velkej casti pripadov moze javascriptovy framework smelo konkurovat flexu (video a animacie ale niesu uplnou podstatou RIA).

          1. Tom KrchaAutor příspěvku

            Re: Pochybnosti

            MXML je XML zapis ActionScriptu 3. Vse jde udelat pres AS3 a zaroven vetsinou existuje zjednodusena implementace pro MXML.

            Zalezi na vas co vam vic vyhovuje – nekdy je MXML mnohem rychlejsi nez psani AS3 a proto se vyplati jej pouzit.

            Zkuste si vyvinout RIA aplikaci optimalizovanou pro vsechny prohlizece s validatory, super grafikou atp. Nejprve v JavaScriptu a pak ve Flexu. Stopnu vam to .)

            1. František Kučera

              Jedna platforma místo několika

              „optimalizovanou pro vsechny prohlizece“

              Je potřeba srovnávat srovnatelné – „všechny prohlížeče“ = několik implementací od různých autorů. Zatímco „Flash“ = jediná implementace od jediného autora. Vyvíjet i pro jiné „implementace“ Flashe, jako je třeba Gnash, to už by tak snadné nebylo a vývojář by se při tom zapotil asi mnohem víc, než když má napsat webovky, které budou fungovat ve FF, Opeře, WebKitu a MSIE.

              1. Tom KrchaAutor příspěvku

                Re: Jedna platforma místo několika

                Ano presne tak. Gnash je super, ale slouzi spis jako platforma pro vyrobce HW, kteri ho chteji pouzit ve svych zarizenich. Roba Savoye znam a na tohle tema jsem s nim pres rok diskutoval, kdyz jsme vyvijeli vlastni set-top-box v mem predchozim zamestnani.

                Nicmene – vyhoda Flashe v tomto pripade je, ze prave jine poradne implementace nejsou.

            2. dc

              Re: Pochybnosti

              no mozno to bude zniet nejak radiklane ale ta nejednoznacnost mi vadi. Netvrdim ze mxml a as3 maju mat striktne vymedzne pole posobnosti ale zasa prelinanie nieje moc dobre.Dnes uz malokto programuje vsetko sam (vecsie systemy) a je bezne pouzvanie roznych kniznic, a ked ma clovek pouzivat niekym inym napisany kod tak jeho jednoznacne pochopenie je velke plus a nemusim potom sa obavat nejakych nepredvidanych problemov.

              Ja ale netvrdim ze flash/flax je zlo, mam len urcite vyhrady. Preco musite hned stupnovat vsetko do extremu? V urcitych oblastiach nema flash zatial moc konkurenciu, to je fakt ale zasa velka vecsina beznych poziadaviek na web alebo web aplikaciu sa da v pohode zvladnut aj s Javascriptom/css s rovnakym vysledkom. Nie vsetky weby potrebuju byt „vyflashovane“ preanimovane a neprehladne.

              1. Pavel Šimek

                Re: Pochybnosti

                Ale vždyť MXML a AS jedno jest. :) Když si uděláte třídu MyClass s proměnnou myProperty, můžete ji pak používat buď v AS syntaxi (procedurálně):

                myClass = new MyClass();
                myClass.myProperty = „abc“;

                nebo v MXML syntaxi (deklarativně):

                <MyClass id=„myClass“ myProperty=„abc“ />

                Čili MXML není nějaký pevně daný jazyk, ale jen jiný (deklarativní) pohled na AS. Jednoznačně krok vpřed, který použily i jiné jazyky a systémy (viz Microsoft s XAML).

      1. tomaash

        Re: Pochybnosti

        Asi to vypadá tak, že jsem nějaký odpůrce Flashe, ale není to tak.

        ad a) kde vznikla nějaká zkratka je naprosto irelevantní.

        ad b) přiznávám, že web Adobe Labs nemám prolezlý celý, nicméně že existuje nějaká linuxová verze jsem tam (aspoň při zběžném procházení) nenašel (plugin do Eclipse je mi k ničemu, nepoužívaje eclipse :).

        ad c) ano HTML5 je technologie která teprve nastupuje, zatím asi nemá smysl s ni nějak zvlášť počítat, ale jako cesta se mi to jeví zajímavější, protože standardizovaná a „otevřená“. Je docela možné, že Flash bude i nadále technologie, která bude posouvat hranice toho, co je možné s webem udělat. Mě se ale více zamlouvají standardizované a otevřené cesty.

        K ostatním věcem nemám co bych dodal. Jak vidno, Adobe Vás neplatí jen tak pro nic za nic ;)

        Mé dosavadní dobré zkušenosti s Flashem by se (za více jak 10 let existence této technologie) daly spočítat na prstech (prakticky mě napadají jen přehrávače multimedií na webu a hry, a ty samy o sobě příliš užitečné nejsou).

        Celý můj příspevěk je pochopitelně off-topic, za který se tímto omlouvám a současně děkuji za seriál materiál k dalšímu přemýšlení a za seriál na jehož další díly se budu těšit. Holt ten Flex Builder vrazím do virtulaboxu, no :)

        1. Pavel Šimek

          Re: Pochybnosti

          Přesně tak, Flash je taková „laboratoř“ nových věcí, které se třeba časem dostanou i do webových standardů. Momentálně jsou nejzajímavější jeho komunikační schopnosti, např. peer-to-peer (proč vše hnát přes servery), v nejnovější verzi dokonce s podporou multicastu (představte si sociální web s prvky dosud známými jen z technologií jako je torrent…). Jenže to jsou všechno tak komplikované věci, že jsem skeptický k vizi jejich jednotné implementace ve všech browserech… jen blbé CSS k tomu potřebuje roky až desetiletí…

        2. Pavel Šimek

          Re: Pochybnosti

          Jinak Flash Builder pro Linux je jen ve formě pluginu pro Eclipse. Ale to je fuk, protože Flash Builder prostě rovná se Eclipse + plugin (i ve Windows). :)

          1. frankiex

            Re: Pochybnosti

            Pokud vím, tak v eclpise s pluginem oproti flash builderu není vizuální mód při návrhu UI.

            1. JT

              Re: Pochybnosti

              Ne. Samostatna verze (= plugin + Eclipse v jednom) i plugin do Eclipse jsou ve vysledku naprosto totozne.

    2. frankiex

      Re: Pochybnosti

      1. Na problém podpory linuxu, bohužel, narážím také a řeším ho spuštení Flash Builderu pod VirtualBoxem. Nedá se říct, že by Adobe na tento problém úplně kašlalo. Minulá verze (Flex Builder 3) vyšla jako plugin pro Eclipse.
      Mimo to existuje Flex SDK pro linux.

      2. Ano, ale předpokládáte, že za těch pomyslných pět let, bude Flash ve stejné fázi jako dnes. Napadá mě, že bych vaši výtku mohl obrátit a říct, proč se HTML5 snaží dělat to, co ve flashi už dávno je? :) Viz video tag.

    3. Pavel Šimek

      Re: Pochybnosti

      Adobe nevsází jen na svou vlastní Flash platformu. Budoucí verze Flash IDE budou umět jednoduché věci (např. bannery) kompilovat nejen do SWF, ale i do HTML 5 / JS. Konečně se tím SWF zbaví odpuzující nálepky „ta věc, ve které jsou bannery“. :) A zůstane využití jen tam, kde HTML nestačí.

      Ostatně už Flash CS5 kompiluje nejen do SWF, ale i do nativního kódu iPhonu. Takže bych řekl, že „divize nástroje“ a „divize platforma“ jsou v Adobe relativně samostatné.

    4. David Grudl

      Re: Pochybnosti

      ad 1) spíš by měla otázka směřovat na „chytráka“, který vymyslel, že Zdroják nebude na http://www.zdrojak.cz ale na zdrojak.root.cz. Nenechte se tím zmást, Zdroják ani jeho čtenáři nemají s Linuxem společného o mnoho víc, než třeba čtenáři Programujte.com.

      ad 2) duplikuje něco, co ostatní budou umět? Neduplikuje teda spíš HTML5? A má smysl se zabývat technologií, která možná bude za pět let umět to, co jiná technologie už uměla včera? ;)

    1. Ruthion

      Re: Hmm. I wonder if HTML5 can do this?

      S 3d kontextem snadno – postupně stahuju framy jako obrázky a použiji je jako texturu pro krychli, ve které je kamera. Otáčení kamery je trivka a ovládání nahrávání framů je také řešitelné.
      S 2d contextem by to také šlo, jen pomaleji.

      Co v HTML5 ale nepůjde, je zvuk.

      1. Ruthion

        Re: Hmm. I wonder if HTML5 can do this?

        Respektive, zvuk půjde, ale zatím to, pokud vím, nikde pořádně nefunguje.

      2. Tom KrchaAutor příspěvku

        Re: Hmm. I wonder if HTML5 can do this?

        tady je to ovsem video textura v 3D. Obrazky by byly pomale a narocne.

  3. Gebauer

    TileGroup chybí

    Flex Builder 4 beta 2 na řádku s <s:TileGroup hlásí chybu „couldn’t resolve“. Nějaký konflikt betaverzí?

    1. SimPod

      Re: TileGroup chybí

      me take hlasi tohle. google mi k tomu nic nerekl
      flex 3 k tomu zase hlasi The prefix „s“ for element „s:TileGroup“ is not bound.

      jsem zmaten

  4. Honza

    Flex - jak vypadá DOBRÁ stránka ve Flexu?

    Znáte někdo nějaké stránky které by posloužily jako dobrý příklad proč použít FLEX?

Napsat komentář

Přihlásit se

Tato diskuse je již příliš stará, pravděpodobně již vám nikdo neodpoví. Pokud se chcete na něco zeptat, použijte diskusní server Devel.cz

Zdroj: http://www.zdrojak.cz/?p=3152