A good developer has no problem to move from a programming language to another. The choice to focus on a particular language, framework and development environment, is dictated more by availability of time and type of work that takes place. However, an important factor that may influence the choice of "framework" like, is the sympathy or the illness which can mature over time.
Specifically, I wanted to analyze some - not all - Javascript framework available today, because "advised" to look primarily at jQuery.
The creators of mootools (one of the most popular Javascript framework) has made available a tool to run a test of speed and validity of five known framework Javascript: Slickspeed. This test, the results do not discount at all, is important as the operating framework Javascript client-side, which is run by our browser. It is precisely for this reason that some find Safari faster than Internet Explorer or Google Chrome faster than FireFox. However, this often depends on the type of page you are viewing. In fact, may very well happen that a particular site is really more "fast" when displayed in Safari, but this does not mean that "all sites will be faster with Safari! Of course, this speech is valid for any other browser.
The benchmark
In tests I conducted with Slickspeed I have compared the browser available on my machine (Utilmate Windows Vista 64bit - Intel Core 2 Quad 2.4GHz with a 8Gb RAM).
Unfortunately, the tests are not able to run it with Internet Explorer 7, because blocking the car, even going out of scale with the results! Once again, congratulations Microsoft.
I crercato identical to maintain the status of the PC during the test, opening the browser separately and not sending anyone else running process.
Note: If you feel like you do one or more of these tests, you can comment on this post in case of "curious" and different results.

Google Chrome is truly fast, with a value of 68 (average) in the test with jQuery. The slower, however, it appeared Flock, despite coming from the same "mother" Mozilla. This bad result for Flock is truly curious given its cutting Social Network; because it is the Social Network Web 2.0 exploit many of Javascript framework available, so as to provide a navigation and interaction truly innovative.
A surprise beat FireFox and Opera also has a lot ', even getting a 74 in the Dojo! FireFox and Safari, after all, are alike, with Safari faster in tests with Mootools and jQuery.
What framework to choose?
If not badiamo to test the speed of execution and we do not care about the size in Kbytes of the same framework, the answer might be "what's for you" or, if you prefer, "what you know best or is more harmonious with your style of programming. "
Ultimately, these frameworks will look somewhat 'all (see the use of $ for example), despite some important and substantial differences that can jump in the eyes of an expert or really pushed in a particular library. In principle, in fact, everything that can be achieved with jQuery, for example, you can do well with mootools or prototype! If jQuery has a very compact syntax, as all methods always return the jQuery object basis, thus creating endless files of oggetto.metodo().metodo().metodo()... is not told that this is at all costs a strength, especially for those who will have to debug!
Libraries as prototype.js sin perhaps in the absence of graphic effects, even simple, forcing the developer to implement spinoff as scriptaculous.js, heavy and distant from the library first choice.
An example
Just this last reason, for example, took me to replace the coupled prototype / scriptaculous with jQuery to make the panels interactive / animated here in the sidebar of undolog.com. Indeed, even using Google API to import libraries, is a waste load the entire library scriptaculous for a slideDown and slideUp. For information and sample, here yesterday Javascript code coupled with the prototype / scriptaculous:
JavaScript: / / Prototype / scriptaculous
) . each ( $ $ ( 'H2.dropdown'). Each (
element ) { function (element) (
= "pointer" ; element. style. cursor = "pointer";
'click' , element. observe ( 'click',
event ) { function (event) (
this . next ( ) . style . display == "" ) new Effect. BlindUp ( this . next ( ) , { duration:. 5 } ) ; if (this. next (). style. display == "") new Effect. BlindUp (this. next (), (duration. 5));
Effect. BlindDown ( this . next ( ) , { duration:. 3 } ) ; Effect else new. BlindDown (this. next (), (duration:. 3));
event ) ; Event. Stop (event);
)
)
)
);
and it is now with jQuery:
JavaScript: / / JQuery
) . each ( $ ( 'H2.dropdown'). Each (
i ) { function (s) (
) . css ( 'cursor' , 'pointer' ) . click ( $ (This). Css ( 'cursor', 'pointer'). Click (
function () (
$ ( this ) . next ( ) . is ( ':hidden' ) ) $ ( this ) . next ( ) . slideDown ( ) ; else $ ( this ) . next ( ) . slideUp ( ) ; if ($ (this). next (). is ( ': hidden')) $ (this). next (). slideDown (); else $ (this). next (). slideUp ();
)
);
)
);
After all, at all, I do not think there is a lot of difference! But as I said before ... question is "well" of personal taste.
Related Post