JQuery проти ExtJS [закрито]


77

Ми плануємо розробку абсолютно нового графічного інтерфейсу. Ми були дуже задоволені JQuery, який ми використовували у своєму старому продукті. Це було легко, стильно і швидко.

Ми чули про ExtJS . Він також має AJAX і великий перелік інших функцій.

Ми хочемо використовувати лише один із них.

Що найкраще базується на вашому досвіді?

Відповіді:


88

Я широко використовую jQuery і люблю його. Я кілька разів переглядав ExtJS і хотів би мати можливість скористатися цією бібліотекою. Це моя думка.

jQuery

Ящик сміття для програмування javascript. У них є все, що вам потрібно, якщо ви хочете копати, скористатися скотчем та суперклеєм, і загалом є група розробників, здатних і бажаючих забити код. jQuery чудовий!

Він використовується в більшій кількості місць, ніж ви думаєте. Однак, як і Drupal та інші фреймворки / бібліотеки, що підтримуються спільнотою, коли ви отримуєте безкоштовну підтримку, ви отримуєте те, за що платите. Ви можете зробити все це за допомогою jQuery, але іноді потрібна лопата, ліхтарик та наполегливість.

Крім того, дуже хороша документація (нарівні з онлайн-документами PHP), а також багато, буквально тонни, прикладів коду та записів у блогах.

Звернеться до майстрів та "просунутих сценаристів", котрі не соромляться гуглу, щоб знайти приклад, який можна використати, щоб вирішити проблему та пришвидшити розвиток.

ExtJS

Професійно розроблені комерційною компанією, вони більше схожі на елементи керування (у контексті Visual Studios), ніж віджети чи плагіни. Навмисно повний і надійний, з увагою до деталей та організаційною структурою вищого рівня, ніж я думаю, що існує в нетрях jQuery, ExtJS - це те, за що ви платите: професійно розроблений і підтримуваний продукт, який живе і вмирає завдяки своїм здібностям повернути значення.

Звернеться до професійно підготовлених "програмістів", які очікують масштабних випробувань та вищого порядку або строгості в розробці засобів управління.

Остаточна рекомендація

Це справді пов’язано з вашим магазином та клієнтами. Якщо ваша група більше "зроби сам" і любить склеювати речі і витягувати це з-під дверей, йди з jQuery. Це надійно для будь-якої ситуації. Якщо у вас дуже впорядкований і професійний магазин, ExtJS може бути хорошим вибором, але jQuery також буде життєздатним. Я не бачу необхідності розділяти вашу базу знань і використовувати обидва, але насправді, якщо ви це робите, використовуйте ExtJS для клієнтської частини та jQuery для консолей адміністратора. Я не бачу користі навпаки.

Крім того, для адміністративних консолей загляньте в TIBCO . Можливо, надмірно, але дуже цікаво.


6
Хороший запис на обох .. Як не дивно, я дійшов протилежного висновку re: client VS admin :)
Бен,

1
Думаю, рішення пов’язане з тим, що бачать клієнти, і з чим доручена консоль адміністратора (коригування облікових записів користувачів проти SCADA). Я думаю, що клієнт повинен бачити гроші, і що адміністративні консолі мають бути саме тим, що потрібно, але це не важко. Чесно кажучи, мені було б важко підкріпити розділення коду, якщо це не було застарілим. Навіщо переписувати код, який у вас вже є в jQuery? Це звучить як марно витрачений $$, якщо ExtJS не надає практичних та передбачуваних удосконалень у показниках часу доставки та / або підтримки клієнтів.
Джаред Ферріш

До речі, загальний інтерфейс TIBCO - найкраща точка входу, якщо ви зацікавлені в ньому. developer.tibco.com/gi/default.jsp
Джаред Ферріш

7
Лише деякі додаткові примітки, якщо ви плануєте використовувати доп. Починаючи з Ext 4, є над чим подумати з точки зору продуктивності. Як візуалізація, так і фактичне корисне навантаження. Це насправді не fire'n забути. Для зовнішнього веб-сайту, де потрібна реакція, я б не рекомендував ext над jquery. Для внутрішніх інструментів та інших додатків корпоративного типу ext добре.
Запитано

1
@asken ... Xero використовує ExtJS на всьому їх веб-інтерфейсі, і він дуже чуйний.
Dawesi

23

Відповідь Джареда Ферріша вже досить обширна.

Я використовував обидва для різних проектів.

ExtJS набагато важчий як за розміром, так і за тим, що дозволяє вам робити. Це чудово, якщо вам потрібен складний інтерфейс веб-програми, він має чудові елементи керування для вікон, таблиць тощо, і виглядає елегантно.

Спільнота зовнішніх форумів дуже корисна завдяки своєму форуму.

Це говорить про те, що він набагато "жорсткіший", ніж jQuery, і для початку існує значно довша крива навчання, але якщо ви розглядаєте складні інтерфейси, це окупиться.

Отже, перевагами jQuery є те, що ваш проект швидше рухатиметься, і буде легше «експериментувати», впроваджуючи нові функції.

Вони обидва підходять для власного типу додатків. Я насправді використовував як для проекту, розширений адміністратор (безліч вікон та розділів) вбудований у ExtJS, а інтерфейс, який потребує швидшого розгортання, щоб налаштувати речі, але обмежена взаємодія інтерфейсу користувача вбудована в jQuery.

Сподіваюся, це допомагає


12

Я не згоден з тим, що крива навчання jQuery швидша, ніж ExtJS. Кожен компонент у ExtJS має відпрацьований приклад на сайті, а документи API абсолютно чудові, структуровані, прості у використанні та повні.

Те, що ви оберете, залежить від ваших інтерфейсів. Більш блискучі інтерфейси веб-2.0, можливо, трохи простіші в JQuery, інтерфейс ExtJS гарний, але дуже схожий на додаток. Тим не менш, я думаю, що між ними немає порівняння, якщо ви хочете створити серйозно складний, важкий для даних інтерфейс. ExtJS дозволяє запрограмувати ваш інтерфейс так само, як і ваш сервер, повністю об'єктно-орієнтований. Якщо вам не подобається якась поведінка компонентів за замовчуванням, ви їх замінюєте. Надзвичайно просто створити багаторазові компоненти самостійно. У ExtJS 3 було введено рівень Direct, який забирає всі постійні клопоти зв'язку клієнт-сервер Ajax і автоматично поєднує для вас кілька викликів, зменшуючи кількість запитів сервера, необхідних для подачі вашого інтерфейсу. Я можу продовжувати і продовжувати, але ExtJS для мене є знахідкою,

Успіхів у всьому, що ти обереш, Роб


2
Спробуйте використати TreeLoader з альтернативним форматом даних, вони підтримують лише один, і це навіть не звичайне повернення json у стилі REST. Документації щодо цього немає. Як тільки вам потрібна альтернативна функціональність із будь-якого з методів їхнього класу, вам доведеться "перевизначити", тобто копіювати / вставити, і змінити її на свій власний. Це може бути не завжди, я впевнений, що деякі методи можна замінити супер, але Крокфорд сказав, що це нерозумно робити в JS.
Дрю

@Drew Мені було б цікаво побачити суть JQuery та ExtJS 4 щодо цього. Я розглядаю можливість використання ExtJS4 для мого проекту, який сильно орієнтований на форму. Thx
cbmeeks

8
Ну, це яловичина, я б, мабуть, порушив авторські права, якби опублікував суть w / ExtJS4. Я переглядав ExtJS3 протягом двох місяців щодо поточного проекту, і структура відчувала себе дуже жорсткою та невблаганною. Я виявив, що змінюю віджети, щоб зробити їх розширюваними, і приклади працюють лише для конкретних типів справ. Крім того, багато прикладів Сенча не робив, а розміщував їх за форумами на своїх форумах. Я б порекомендував YUI, вони набагато більше пропонують свою продукцію та пропонують сайти з документацією.
Дрю

2
Як і будь-що інше, ExtJS не для всіх. Якщо вам здається занадто жорстким, існує безліч інших можливостей, які можуть вам підійти більше. Для мене ExtJS є чим завгодно, але не жорстким. Там немає жодної основи, яка дозволить мені створювати дуже складні додатки структурованим способом і не перетворюючи колесо в 100 разів. Поряд із цим, я вважаю, що рамки надзвичайно гнучкі та прощають. Ваша думка щодо документації, яку я справді не розумію, я вважаю, що документація краща за все, що я знаю,
Роб Боерман,

12

Я тільки почав використовувати їх 2 у 2 різних проектах, по одному на кожному. (Ext 4 та JQuery). І так, Ext, здається, є більш "корпоративним", але документи та навчання jquery були приємними та приємними .. З іншого боку, ext було дуже заплутаним, оскільки більшість документів буде посилатися на ext 3, і я намагаюся робити щось на ext 4 .

Всі книги та навчальні посібники з jquery дозволили мені зробити більше, ніж просто досі.

Важливо відзначити, що мій досвід роботи з js обмежений.


4

Подивимось. EXT має круту криву навчання, щоб правильно це зробити, і він надзвичайно потужний. Це єдина бібліотека JavaScript, якою я користувався, яку я б назвав фактичною структурою (подібною в цьому сенсі до YUI, яку я не використовував). У версії 4.x Sencha повністю взяв на себе зобов'язання щодо шаблону MVC, що подобається багатьом досвідченим програмістам.

З іншого боку, jQuery дозволяє легко робити прості речі, а на мій досвід практично неможливо зробити щось складне.

Чому ви обмежуєтесь лише цими двома? Погляньте, наприклад, на MooTools. Це потужна, гнучка та розширювана бібліотека, і вам не потрібно здогадуватися про те, як вона робить щось, наприклад, з jQuery, або вдаватися до необробленого JS, щоб робити що-небудь, крім простих маніпуляцій DOM або завантажень JSON (наприклад, з jQuery!) .

Я зауважую, що ніхто не згадував Dojo, який також є досить потужним, дуже складним, і з того, що я бачив під час серфінгу в інших командах у своєму офісі, дуже важкий у браузері.

EXT використовує деякі додаткові інструменти, такі як компас (працює в рубіні) та YUI-компресор, щоб допомогти вам вивести надзвичайно ефективні, розібрані пакунки для завантаження після того, як ви «закінчите» свій сайт. Я ставлю готові в лапки, тому що я думаю, що це падіння для EXT. Зрештою, сайти майже ніколи не закінчуються, і цей процес приблизно аналогічний компіляції програми Java, оскільки, якщо ви щось змінили, вам доведеться пройти весь процес виведення знову.

Завдяки EXT ви отримуєте багато чого прямо з коробки, але це також означає, що потрібно багато чому навчитися, а також виконати певний обсяг планування та продуманості, щоб виконати чуйний, красивий проект. За старих часів це називали "дисципліною", але в наш час це не надто модно (докладнішу інформацію див. У "jQuery").

Але у мене немає думок!


3

Я відповім лише на це запитання, оскільки воно відображається як перший результат для "jquery vs extjs". Як і деякі люди тут, я використовував обидва професійно. Особливо сподобався перший відгук. Для мене, якщо я збираюся створити дуже маленький додаток із дуже маленькою командою, тоді я точно піду з jQuery. Однак ... якщо ви працюєте у великій команді, то розподіл роботи jQuery може бути нетривіальним для реалізації однієї історії користувача. Завдяки ExtJS вони по-справжньому охоплюють парадигму ОО та роблять її легкою в обслуговуванні. Крім того, ви можете використовувати їх MVC, щоб використовувати їх для розподілу роботи між розробниками. Однак він поставляється зі стрімкою кривою навчання. Люди, які сказали: "Подивіться на зразок, і ви золоті!" явно не розуміє, як писати ДОБРИЙ код extjs. Людям дійсно потрібно вивчити ExtJS Core перед тим, як вирішити проблему з користувацьким інтерфейсом ExtJS ... хоча насправді це вина компанії за відсутність належної документації для розробників ... хороша новина полягає в тому, що на допомогу приходять такі книги, як ExtJS In Action. Загалом, я буду використовувати ExtJS, оскільки він набагато більш структурований, ніж jQuery. Звичайно, перевага jQuery полягає в гнучкості ... Однак занадто велика гнучкість може вбити проект ... Те, що ти можеш супер клеїти шматочок лего в свої очі, не означає, що ти повинен. Якщо у вас є гроші, перейдіть на ExtJS. перевага jQuery полягає в гнучкості ... Однак занадто велика гнучкість може вбити проект ... Те, що ти можеш супер клеїти шматочок лего в свої очі, не означає, що ти повинен. Якщо у вас є гроші, перейдіть на ExtJS. перевага jQuery полягає в гнучкості ... Однак занадто велика гнучкість може вбити проект ... Те, що ти можеш супер клеїти шматочок лего в свої очі, не означає, що ти повинен. Якщо у вас є гроші, перейдіть на ExtJS.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.