📜 ⬆️ ⬇️

Interesting JS frameworks for learning

On my twitter, there was a link to ten JS frameworks that are interesting in terms of learning and extending capabilities, so that developers are not limited to the top of the mainstream (meaning jQuery / Prototype / Mootools / YUI). It is likely that something from this list tomorrow will be no less popular, and just to improve their skills or peep interesting solutions. The original in English is here , and I will try to consider the most interesting from my bell tower.

SproutCore is an interesting framework focused on creating front-end solutions on the web that are close to desktop ones, in this case MacOS, since SproutCore is considered, in many publications, to be a web continuation of the Socosa desktop framework used in MacOS. Apple itself uses this framework to implement its web applications, in particular, precisely because they look as close as possible to native applications, blurring the line between the web and the desktop. In terms of widgets, SproutCore looks, frankly, very, very pale, judging by the examples on the site, although it works quickly. He was still very far from the beauty of ExtJS , but this was not intended to be the goal - if we assume that the goal was to simulate the interface of Cocoa programs on the web, the library handles it perfectly.

sprout_widgets

In principle, for the development of simple web applications, especially on the Mac platform (although the restriction on the platform in the web environment is odd), the framework is perfect. And even if we think that the MacOS is also on the iPhone, and the web applications are the most familiar there, and with the main rival of JavaScript, the Adobe Flash platform Apple / iPhone is experiencing difficulties, mainly theoretical / conceptual, then the orientation to the web already looks more correct. Well, let's see.
')
adobespry Adobe Spry - a framework from Adobe, which is designed to simplify the work of designers and developers to create AJAX applications. If we take into account that Adobe has focused a lot of key technologies for this market, including Flash and AIR, then the market for the framework suggests itself - creating applications for the AIR. The strength of the project is integration with development environments, in particular, with Dreamwever, and the library itself is based on a declarative model for describing widgets. Spry functionality is sufficient for most projects, and contains both widgets and effects, modules for data processing (HTML, XML, JSON). The examples look good, in terms of speed, everything is also good, so when creating applications on the Adobe infrastructure, you can seriously consider Spry as the main framework. However, I didn’t notice any serious innovations or unique aspects, so for now the project’s trump cards are only integration with Adobe development tools and platforms.

spry_rssreader

JavaScriptMVC is interesting from the conceptual side as an example of transferring the popular design pattern (or architecture) to the client side. The framework itself consists of a fairly large number of classes, in particular, extensions of standard objects for abstraction from browsers, its own class system and other interesting things. For example, an interesting dependency loading system is similar to that implemented in the Dojo Toolkit . In general, the project is interesting precisely from the point of view of architecture, the practical necessity and general applicability of MVC in JavaScript can still be discussed for a long time. But to study the package is still worth it.

qooxdoo Qooxdoo - this project can hardly be called new. Frankly, it all started with my dating about the web world and JavaScript. And let it have a sophisticated object structure and poor performance, but if you forget about ExtJS, it first comes to mind as a candidate for building visual interfaces that are indistinguishable from their desktop counterparts. I remember when studying his examples, I was just amazed - when I came from the world of Delphi, I had little idea what could be done in the browser. Of course, many versions have already passed since that time, and I think that performance has become much better there (yes, not really, I’ve been testing examples in Google Chrome), but with the inside, it’s probably not - there’s quite a serious and complex architecture inside, unlike modern solutions. But, anyway, thanks to the developers - it was this decision that pushed me to switch to web technologies.

qooxdoo_widgets

In the original review, several more libraries were considered - the Archetype JavaScript Framework (interesting precisely by the component architecture and the system for working with dependencies), June , UIZE , SimpleJS , Fleegix - but these libraries did not seem interesting enough for me to consider. The basic functionality is almost the same everywhere, and if it is considered, then it may be in the context of specific speed tests. But to base the development of a serious project on even a promising, but rarely used library is, at least, bad. But to look at the source code and think about how to apply good architectural techniques in your project - it is always useful, and if you consider other libraries, then pay attention first to the above projects, suddenly there is everything you need?

Source: https://habr.com/ru/post/47782/


All Articles