In sfarsit am terminat de facut suita de teste de rulat testele pe cele 4 navigatoare web majore la ora actuala:chrome,firefox,safari si internet explorer.
Nu ma asteptam sa existe diferente asa de mari intre interpretoarele de pe navigatoare. Pe primele locuri au fost Chrome si Safari,urmate de Firefox si pe ultimul loc a fost Internet Explorer. Inca mai are mult de recuperat Internet explorer. In unele teste a rula extrem de incet fata de celelalte browsere iar nu suporta deloc tehnologii moderne.Inteleg ca in spate e o corporatie mare care deserveste un numar mare de clienti si ca schimbarile trebuie facute treptat si doar cand tehnologiile si-au dovedit utilitatea si s-au maturizat. Dar in cazul de fata,lucrurile sunt diferite.
Insa s-a descurcat mai bine decat m-am asteptat.Totusi ramane incet si personal nu as face aplicatii care necesita mai multa procesare in javascript.Testul 7,cel de simulated annealing si vectorizare cu algoritmi genetici demonstreaza cel mai bine lucrul asta. O aplicatie desktop care face cam acelasi lucru,a mers de 20 de ori mai repede cu un output de 4 ori mai mare care necesita mai mult timp pentru calcularea fitness-ului.Dar nu pentru asta a fost creat.
Si am mai gasit ceva interesant pe internet despre garbage collection. Orice limbaj care are garbage collection,dealoca si distruge automat obiectele. Si javascript are un asemenea garbage collector. In general ele pot fi considerate de 2 feluri: "generational" si "nongenerational".Cele "generational" sunt utile mai ales pentru aplicatii unde obiectele persista mai mult timp si se bazeaza pe algoritmi euristici,ideal pentru aplicatiile desktop care pot rula un timp indelungat dar cu utilitate mica pentru limbaje de scripting unde timpul de rulare este foarte mic in general.
Jscript,implementarea Microsoft pentru ECMAScript, in schimb utilizeaza un garbage collection "nongenerational"si "mark-and-sweep" gandit special pentru aplicatii cu durata de executie mica,cum ar fi javascript,jscript etc.
Inca nu sunt foarte sigur ca toate testele au rulat corespunzator pe fiecare browser. In Firefox nu am gasit erori facand debugging cu firebug dar nu stiu daca in celelalte browser-ere difera implementarea javascript care are putea cauza niste erori si erona total rezultatele. Mai ales in internet explorer,desi pe internet nu am gasit nimic legat de ce am facut eu.
Niciun comentariu:
Trimiteți un comentariu