Не смог спокойно пройти мимо блога товарища mycoding на сайте уважаемого Ильи Кантора, посвященному javascript — так зацепили меня его слова.
Решил ответить на его статью «Почему мне не нравится JQuery» по порядку на все вопросы.
В jQuery Используется знак $ (доллар)
Если вас не устраивает доллар, то всегда можно переопределить на любой другой символ или слово. Например так:
var ExtJS = jQuery.noConflict(); ExtJS("div p").hide();
Теперь вместо знака $
(доллар) вы можете использовать ExtJS
Все исходники, которые встречал очень запутаны и трудно понять
Это зависит от криворукости программистов, пишуших плагины, но никак не от создателей самого jQuery.
Применяется метод цепочного вызова любой длины — плохой стиль
И чем же он так плох? Аргументируйте.
JQuery был хорош для 2006 года, когда его только сделали. Сейчас же это старье, которое невозможно исправить. Надо полностью переписать стиль программирования для это framework-а
Ядро довольно часто обновляется, переписывается и дополняется — все идет в ногу со временем.
Программисту надо заморачиваться на всяких низкоуровневых штуках вроде селекторов и прочего
Селекторы — это не заморочки, это очень удобно, и никто не мешает вам использовать идентификаторы.
$('#id').css ('display', 'none');
Насколько мне известно, в ExtJS
адекватные люди тоже используют селекторы, например, доступ ко всем тегам с классом .msg
var msgLinks = Ext.query('.msg'); Ext.each(msgLinks, function(item,index) { // Делаем что-нибудь с полученными элементами });
Кто сказал, что работать с id плохо, а с селекторами хорошо?
Кто сказал наоборот? Это уже лично ваше мнение. У элемента просто может не быть идентификатора. Да и идентификатор — уникальный элемент. Как по вашему выбрать группу? В jQuery это делается достаточно просто:
$('.class').css ('boder', '1px solid red');
Здесь мы выбрали все теги с классом class
и задали им красную рамку.
Проект может вырасти до 1-ого мегабайта.
Любой проект может вырасти до мегабайта и значительно больше, это не зависит от фреймворка и даже конкретного языка программирования.
Отчасти это может зависить от того какой говнокод вы взяли у индусского програмера.
Я стараюсь писать короткий, чистый и понятный код. Проект с 20ю плагинами весит менее 500 кБт
Работа с JQuery не удобна. Стиль программирования очень не приятен.
Сугубо личное Ваше мнение без единого аргумента и примера.
В JQuery UI отвратительные плагины. Они не красивые и глючат. И не доработаны.
Красивости задаются через CSS
, глюки если и есть, то исправляются по мере появления. В вашем ExtJS
тоже не все гладко.
Многое из того, что мне надо нет в JQuery.
А что конкретно вас интересует? Может нужно было погуглить?
Если я буду писать свои проекты на JQuery, а не на ExtJS, то времени у меня уйдет минимум раза в 2 больше.
Это от банального незнания предмета. Естественно, если вы 1.5 года использовали ExtJS
и не удосужились изучить хотя бы основы jQuery
Попробуйте сделать на JQuery нормальную красивую форму обратной связи
Делали, никто еще не жаловался. А если что-то не получается — так это от нехватки опыта или незнания технологии.
И каким боком здесь ваши красивости? Ими занимается дизайнер, а потом пишется код на CSS
, например.
Сайт http://jquery.com/ с его API и прочим имеет очень не приятный для глаз черный фон. Все проекты, которые заботятся о своих пользователях, используют белый фон. Черный фон был и есть вреден для глаз.
Чушь и бред. Меня бесит красный, но это не значит, что он «вреден». А как же консоль Windows и Linux? Они — черные!
Почему же JQuery так популярен? Потому, что он был первым
Он прост, легок, лаконичен и понятен даже для новичков.
ExtJS не совсем предназначен для сайтов
Тогда о каком сравнении вы говорите? Основа то одна — javascript
, а применение — разное! Это все равно, что сравнить ежа и ужа.
У ExtJS очень большой размер.
И что в этом хорошего? Не в размерах ведь дело.
Но даже очень большой проект на ExtJS можно сжать до 300-350 кб
А jQuery код по-вашему мнению сжать нельзя? Например тем же YUI Compressor.
Вы можете разработать свои стили для проекта
И для jQuery
, jQuery UI
можете сделать тоже самое.
Разработка проекта на ExtJS экономит от 42% времени разработчика по сравнению с тем, если бы тоже самое делалось на чистом js или JQuery.
Что это за цифры с потолка? Откуда вы это взяли? Могу сказать, что с jQuery
аналогично — экономия 99.9%. Это не показатель. Главое разбираться в теме вопроса.
Все модули,виджеты какие только Вам могут понадобится уже есть и доступны в примерах.
По jQuery, на мой взгляд, еще куда больше информации и плагинов (в том числе на русском, что немаловажно)
Давайте использовать современный framework ExtJS и Ext Core, а про JQuery забудем.
Давайте не будем хамить пользователям jQuery
! Вы будете спокойно «программировать» на ExtJS
, а все остальные использовать jQuery
по мере надобности.
JQuery — это плохой framework. Как бы для Вас это не звучало.
Это лично ваше мнение, а где ваши аргументы?
Понять Вы меня сможете только, когда начнете программировать на ExtJS и Ext Core.
К счастью, использовал ExtJS
— остался доволен, но опять же ExtJS
— это не язык программирования, это фреймворк, написанный на javascript, поэтому на нем не программируют! Да и на сайты его особо не прилепишь вы сами это сказали.
ExtJS и все framework-и компании Sencha — это самые лучшие в мире framework-и
Одни из наиболее хороших, причем не единственные!
Их пишут профессионалы, которые работали долгое время в Yahoo и других очень известных фирмах.
jQuery
разрабатывают тоже не ламеры и работали они и работают в очень известных компаниях.
Сегодня (30.06.2011) статьи по указанному ранее адресу уже нет — видимо, товарищ понял, что он был не прав.
Ссылки
Источник: https://www.kobzarev.com/programming/jquery-vs-extjs/