Просмотров: 24269

Обзор и сравнение ведущих Javascript Frameworks. TOP 6


Продолжаем сравнение ведущих Javascript Frameworks для 2011 года. В прошлой статье мы выделили строго научными методами, избежав субъективности и ненужного экспрессизма, этих самых мировых лидеров, ну, а сегодня мы рассмотрим их уже непосредственно и в близи — шесть ведущих мировых javascript-библиотек в порядке убывания их популярности.

1 место: jQuery

Размер: 155Kb (миним.версия – 72Kb), лицензия: MIT и GNU GPL, Последняя версия: 1.6 (3 мая 2011)

jQuery – самая популярная и распространенная библиотека на JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML. Также jQuery предоставляет удобный API по работе с Ajax. Данный фреймворк один из первых удачно реализовал принцип ненавязчивого JavaScript. Другой секрет популярности этой библиотеки, это реализация очень выдержанного баланса между хорошей функциональностью и при этом удачной попыткой создания достаточно компактного универсального ядра. Если дополнить сюда компромиссную возможность очень просто расширять функциональность базовой библиотеки за счет включения дополнительных плагинов (количество которых сейчас зашкаливает уже за 1000) – то на выходе мы получаем по-настоящему очень универсальный, гибкий и быстрый продукт.

Для желающих получить более продвинутые UI-эффекты (UI, user interface), такие как масштабирование, сортировка, поддержка drag and drop, и стандартные виджеты, такие как закладки, слайдер, прогрессбар и т.д., — рекомендуется использовать родственную библиотеку jQuery UI, которая специализируется именно на графических эффектах и созданию сложного пользовательского интерфейса.

В целом, jQuery очень выгоден для малых и средних проектов, но при разработке крупных проектов может быть проблематичен, так как приводит к дефициту проектирования, хотя весьма производителен благодаря простому содержанию и коду. Ну, о популярности продукта говорит хотя бы то, что былые конкуренты, например xajax (xajaxproject.org), сами переходят в итоге на использование jQuery, Microsoft собирается популяризовать совместное использование jQuery со своими технологиями, а Nokia заявляет о намерении интегрировать jQuery для своих мобильных виджетов.

Примеры известных сайтов на базе этого фреймворка: Digg, BBC, Dell, IsoHunt, Break.com, TinyPic, eMusic, Box.net, Яндекс Карты.

Ключевики для SEO: меню jquery, ойгукн, jquery примеры ajax, javascript справочник, ойгукн

2 место: Prototype JS

Размер: 278Kb (миним.версия – 56Kb), лицензия: MIT, последняя версия: 1.7 (22 ноября 2010)

Второй по популярности js-фреймворк, который существенно упрощает работу с Ajax и некоторыми другими продвинутыми js-возможностями. Несмотря на его доступность в виде отдельной библиотеки, он чаще всего используется программистами вместе с Ruby on Rails, Tapestry, script.aculo.us и Rico. Часто именно близкой интеграцией с распространенным Ruby on Rails, пытаются объяснить его популярность (хотя уже рассмотренный jQuery на уровне плагинов также может взаимодействовать со многими популярными платформами, например, с тем же Ruby on Rails или PHP (jquery.hohli.com)).

С точки зрения проектирования фреймворк очень удобен для средних проектов, так как предоставляет элементарный способ эмулирования классического ООП вдобавок к своему простому функционалу. Производительность у него несколько нестабильна, т.е. на некоторых операциях он может быть быстрым, на других – производительность заметно падает. Prototype один из немногих фреймворков, который не включает в себя UI-компоненты или UX-улучшения, — для использования подобных эффектов рекомендуется использовать его дочернюю библиотеку — script.aculo.us (или Scripty2), которая добавляет огромное количество графических эффектов, поддержку drag-and-drop, слайдеры, Ajax-редакторы и т.д.

Примеры известных сайтов на базе этого фреймворка: CNN, The New York Times, Apple, Fox News Channel, Last.fm, Twitter, Hakia.

Ключевики для SEO: джава скрипт, prototype скачать, javascript js, js document, script js, сравнение фреймворков

3 место: Mootools

Размер: 101Kb (миним.версия – 60Kb), лицензия: MIT, последняя версия: 1.3 (11 октября 2011)

MooTools является модульным, объектно-ориентированным фреймворком. Он очень похож в своем подходе к дизайну ядра на jQuery и Prototype – он не включает в себя UI-контролы и виджеты, ограничиваясь минимальным набором эффектов и возможностей.

Это очень хорошая JavaScript-библиотека - шустрая, небольшая, разбита на множество маленьких модулей, отлично документирована. По нашему единодушному мнению код здесь более понятен и лучше организован по сравнению с лидером - jQuery. Модульность это отдельный жирный плюс: есть возможность скомпилить нужную для конкретной цели библиотеку - хотя экономия килобайт по сравнению с jQuery практически никакая. Сложилось стереотипное мнение, что новичкам лучше использовать jQuery, а опытным программистам - MooTools, мы же считаем, что MooTools лучше подходит и тем и другим.

Кроме того, этот фреймворк содержит очень интересный плагин MooTools.More.js, который на самом деле несколько больше чем просто плагин: он позволяет очень сильно наращивать возможности сторонними библиотеками, и имеет при этом очень интересные add-ons, для манипуляций с массивами, датами, хэшеми, строками и т.д. Нас очень впечатлила возможность локализовать англоязычный синтаксис языка самого mootools на любой национальный язык, что позволяет программировать на нем максимально комфортно, например, на русском языке.

Примеры известных сайтов на базе этого фреймворка: MooTools используется в CMS Joomla, поэтому таких сайтов чрезвычайно много. Его также использует w3c (Консорциум Всемирной паутины)

Ключевики для SEO: mootools joomla, mootools jquery, mootools js

4 место:  YUI

Размер: 31Kb, лицензия: BSD, последняя версия: 3.3.0 (1 декабря 2010)

Библиотека Yahoo! UI Library (YUI) – это набор утилит и контролов, написанных на JavaScript и CSS, для создания интерактивных web-приложений, использующих техники DOM-скриптинга, DHTML и Ajax. В этом фреймворке доступны два типа компонентов: утилиты и контролы. Утилиты упрощают браузерную разработку, связанную с DOM, DHTML и Ajax. Контролы – это набор уже готовых, высоко-интерактивных визуальных элементов для проектирования веб-страниц. Все эти элементы создаются и работают только на клиентской стороне и не требуют обновление страницы для их изменения. Вся библиотека распространяется под BSD-лицензией и бесплатна для всех пользователей. YUI создана совместными усилиями ведущих инженеров Yahoo, а также разработчиками со всего мира. Сейчас это один из ведущих js-фреймворков, полностью готовый для промышленного использования, где очень продвинутые UI- и UX-составляющие интегрированы в одно целое в рамках одной поставки, образуя полностью завершенный, независимый и универсальный продукт. Если к этому добавить её очень либеральную лицензию, то понятна та популярность, которую справедливо снискала эта библиотека, особенно в коммерческих разработках и многочисленных форках, где она была взята за основу.

Примеры известных сайтов на базе этого фреймворка: Yahoo! Shopping, Bebo, ImageShack, LinkedIn, Walmart.com.

Ключевики для SEO: скачать yui, нфрщщ

5 место: Ext JS

Размер: 502Kb (миним.версия – 84Kb), лицензия: GPLv3 и коммерческая, последняя версия: 4.0 (26 апреля 2011)

Проект начинался, как попытка расширить вышерассмотренный фреймворк Yahoo! User Interface, но на данном этапе – это уже полностью самобытный, практически никак не связанный с YUI проект. Движущей силой, основателем и бессменным лидером проекта остается Джэк Слоцум, — известный специалист в среде JavaScript-программистов.

ExtJS – это не самый производительный из существующих фреймворков, его главная отличительная черта в том, что он предоставляет собой наиболее приближенную среду к классическому программированию, реализуя очень развитые графические средства отображения и взаимодействия с пользователем в среде Web 2.0. Начиная с версии Ext JS 3.0 библиотека логически разбивается на две части: Ext Core (набор JavaScript-функций, позволяющий создавать динамические веб-страницы с унификацией обработки в различных браузерах и распространяемый по MIT-лицензии) и Ext JS (набор виджетов для создания пользовательских интерфейсов с двойным лицензированием по GPL v3 или по коммерческой лицензии).

В целом же, ExtJS производит весьма благоприятное впечатления – у этого фреймворка действительно большие графические возможности. Здесь грань между веб- и десктоп-приложениями становится всё тоньше.

Ключевики для SEO: ext скачать, ext 4, ext js, ext 3, ext 2, ext yst pfdtltybz

6 место: Dojo

Размер: 123Kb (миним.версия – 65Kb), лицензия: BSD и AFL, последняя версия: 1.6.0 (15 Марта 2011)

Ещё один пример из списка популярных фреймворков, который кроме того что во многом повторяет плюсы своих аналогов, имеет и свои особенности. Среди самых важных хотелось бы упомянуть очень серьёзную попытку добиться полной независимости от каждого конкретного js-интерпретатора, для чего разработчиками проводится просто титаническая работа по тестированию и поиску максимально универсальных и простых решений. Поэтому как следствие – сфера применения этого фреймворка максимально широка: это не только обычные решения на стороне клиента, но также и на стороне сервера и десктопных компьютеров, — везде, где имеется возможность запуска JavaScript. Вторая важная техническая особенность Dojo, это поддержка дизайна множественности точек входа (Multiple Points Of Entry), что дает ему множество очевидных технических преимуществ. Также хочется упомянуть Dojo Extensions for Adobe AIR, призванный помочь разработчикам применять весь потенциал платформы AIR в приложениях с использованием Dojo Toolkit.

Примеры известных сайтов на базе этого фреймворка: Dogo Toolkit активно используется в знаменитом расширении PHP — Zend Framework, поэтому таких сайтов чрезвычайно много.

Ключевики для SEO: скачать dojo подробное руководство, dojo zend dojo toolkit, dojo примеры

 


В заключительной, третьей части этого опуса, я рассмотрю уже не лидеров, но просто — очень перспективные фреймворки. Как всегда в своих статьях, стараюсь смотреть не только под ноги, констатируя при этом подчас банальные факты, но и чуть вперед — заглядывая по возможности в будущее. С этой точки зрения и приводится мой дополнительный Top 3 + философское заключение по теме (специально для молодых js-программистов).

twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru pikabu.ru blogger.com liveinternet.ru livejournal.ru google.com bobrdobr.ru yandex.ru del.icio.us

Подписка на обновления блога → через RSS, на e-mail, через Twitter
Теги: , , , ,
Эта запись опубликована: Понедельник, 1 августа 2011 в рубрике Программирование.

1 комментарий

Следите за комментариями по RSS
  1. Имхо мешать в одну кучу jquery/prototype и Ext JS/Dojo Как-то очень странно

Оставьте комментарий!

Не регистрировать/аноним

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Зарегистрировать/комментатор

Для регистрации укажите свой действующий email и пароль. Связка email-пароль позволяет вам комментировать и редактировать данные в вашем персональном аккаунте, такие как адрес сайта, ник и т.п. (Письмо с активацией придет в ящик, указанный при регистрации)

(обязательно)


⇑ Наверх
⇓ Вниз