javascript vs actionscript
Sziasztok!
Mostanában csinálok egy olyan webes alkalmazást, amiben a háttérben számításigényes bonyolult algoritmus fut le. Tartalmaz gráfban keresést, prototípusosan öröklődő objektumok tömegét, closure-t, sztringműveleteket stb.
Látszik a különbség a böngészők között a lefutási időben. Még korántsem vagyok a projekt végén, és előre el kell gondolkodnom azon, hogy mi van akkor, ha a végső algoritmus futási ideje bizonyos böngészőkön már elér a felhasználók számára egy megengedhetetlen szintet? Chrome-ban úgy tűnik, hogy szépen fog menni, de mi van, ha valaki egy lassabb böngészőt kénytelen használni?
Felvetődött bennem, hogy ebben az esetben megkövetelném a flash jelenlétét és az algoritmus abban futna le. Actionscriptben viszont semmi tapasztalatom nincsen, és ezért szeretnék tájékozódni, a véleményeteket kérni, hogy elképzelhessem hogy mivel jár ez, érdemes-e ebben gondolkodni.
1: Tényleg gyorsabban futna le flash-ben, actionscripttel ugyanaz az algoritmus?
Ilyen linkeket találtam a neten javascript vs actionscript témában:
http://oddhammer.com/actionscriptperformance/set4/
http://jacksondunstan.com/articles/534
http://coolwebdeveloper.com/tag/javascript-vs-flash-performance/
Nem tűnik egyértelműnek a gyorsulás.
2: A flash külön processzen fut a böngészőtől? Vagyis ha többprocis gépet használ valaki, akkor hatékonyabban tudom kihasználni vele az erőforrásokat?
3: Nehéz átírni egy javascript kódot actionscriptre? Mire kell vigyázni? Ha úgy döntök hogy mindkét platformon futtatható kódot készítek, mi az, amit nem érdemes használnom, mert nehéz lenne átírni?
4: Actionscript kódból hogyan csinálhatok swf állományt, van erre ingyenes eszköz? Mit ajánlotok?
Köszönöm a véleményeteket, gondolataitokat!
■ Mostanában csinálok egy olyan webes alkalmazást, amiben a háttérben számításigényes bonyolult algoritmus fut le. Tartalmaz gráfban keresést, prototípusosan öröklődő objektumok tömegét, closure-t, sztringműveleteket stb.
Látszik a különbség a böngészők között a lefutási időben. Még korántsem vagyok a projekt végén, és előre el kell gondolkodnom azon, hogy mi van akkor, ha a végső algoritmus futási ideje bizonyos böngészőkön már elér a felhasználók számára egy megengedhetetlen szintet? Chrome-ban úgy tűnik, hogy szépen fog menni, de mi van, ha valaki egy lassabb böngészőt kénytelen használni?
Felvetődött bennem, hogy ebben az esetben megkövetelném a flash jelenlétét és az algoritmus abban futna le. Actionscriptben viszont semmi tapasztalatom nincsen, és ezért szeretnék tájékozódni, a véleményeteket kérni, hogy elképzelhessem hogy mivel jár ez, érdemes-e ebben gondolkodni.
1: Tényleg gyorsabban futna le flash-ben, actionscripttel ugyanaz az algoritmus?
Ilyen linkeket találtam a neten javascript vs actionscript témában:
http://oddhammer.com/actionscriptperformance/set4/
http://jacksondunstan.com/articles/534
http://coolwebdeveloper.com/tag/javascript-vs-flash-performance/
Nem tűnik egyértelműnek a gyorsulás.
2: A flash külön processzen fut a böngészőtől? Vagyis ha többprocis gépet használ valaki, akkor hatékonyabban tudom kihasználni vele az erőforrásokat?
3: Nehéz átírni egy javascript kódot actionscriptre? Mire kell vigyázni? Ha úgy döntök hogy mindkét platformon futtatható kódot készítek, mi az, amit nem érdemes használnom, mert nehéz lenne átírni?
4: Actionscript kódból hogyan csinálhatok swf állományt, van erre ingyenes eszköz? Mit ajánlotok?
Köszönöm a véleményeteket, gondolataitokat!
Gyorsabb
Másik kérdés, hogy sokkal több helyen van JavaScript, mint ahol Flash. Vannak olyan platformok, ahol egyáltalán nincs Flash, JavaScript viszont van, fordítva ez nem igazán igaz.
köszi értem
Az algoritmusban nincs semmi böngészőhöz kötődő, csak objektumok, ciklusok, ternális operátorok, bitműveletek, closure, object és tömbliterál forma, prototype öröklődés -- gondolom ezek még szintaktikában is egyformák. Mik azok az elemek, amik copy-paste után nem működnének?
Ha nem akarok semmilyen grafikai stb elemet, akkor milyen eszközzel lehet legolcsóbban kipróbálni az swf-gyártást?
(Alapvetően javascriptre gondoltam, és csak akkor csinálnám meg actionscriptre is, ha megéri, érezhetően gyorsabb lesz, és nem kerül túl nagy anyagi-/munkabefektetésbe az "áttérítés"
Környezet
Ami a flash egyértelmű előnye lehet, hogy külön szálon fut, mint az UI, amég a JS blokkolja a böngészőt (jó esetben is az aktuális tabot).
Különbségek
szomorú
Köszi az infót, ez legalább segített abban, hogy ne foglalkozzak a kérdéssel és ez azért sok munkától megkímélt (majd megpróbálok beleférni az időkeretbe javascripttel)
Köszönöm mindenkinek, szép jövőhetet!
Sebesség
A típusosságot
Reménykedtem, hogy egyszerű lesz az átállás, de sajnos nem, ez van (pedig érdekes, ígéretes ötletnek tűnt)
Köszi a segítséget!
AS2
na lám nem értek hozzá ez eszembe se jutott
AS2-ben szépen benne van a prototype ezek szerint?
Kösz hogy említetted, utánanézek...
(Egy mai swf fordító is tud AS2-ből dolgozni, vagy keresnem kell egy régit?)
(most 12:45 van és a post bejegyzésnek 13:39-et rögzített, rosszul jár a szerver óra)
Pl.
--
Kár hogy a kódszínezőben JS-nek kellett cimkézni a kódot...
--
Kiváncsiságból kipróbáltam AS3ban is... lefordul, lefut gond nélkül, csak Warningokat generál a hiányzó tipusdeklarációk miatt.
Köszi a példát
Ahogy itt olvasom:
http://studiokoi.com/blog/comments/making_anonymous_functions_and_closures_work_in_actionscript_20/
figyelni kell az anonymous függvényekre és a closure-ra is, de azt hiszem ezeket megoldom.
Belekerül egy pár napba, míg kipróbálgatom és belejövök, majd postolok, hogy mire jutottam.
köszi, kipróbálom