Dojo против YUI фреймворк для JavaScript - PullRequest
13 голосов
/ 09 июля 2010

Я хочу знать, что вы, ребята, думаете об этих двух платформах, с точки зрения:

  • надежность,
  • качество кода,
  • разработчиков ядра, продвигающихся с новыми функциями,
  • кросс-браузерные проблемы,
  • компоненты модуля,
  • проще всего выучить и интегрировать

Я уже знаю и использую jQuery, недавно обнаружил, что в нем отсутствуют компоненты, готовые к работе с предприятием, для большого веб-приложения.

Теперь я не хочу начинать дискуссию о jquery, или почему mootools не существует, я хочу знать, что вы, ребята, думаете об этих двух фреймворках конкретно.

Спасибо!

Ответы [ 5 ]

24 голосов
/ 16 июля 2010

Отказ от ответственности: я приверженец Додзе.

Каким-то образом никто не представил сторону Dojo в этом сравнении & mdash; это не сравнение без одного, не так ли? Позвольте мне перейти ваши очки.

Надёжность

Dojo используется во многих IT-проектах крупных международных корпораций. Я лично участвовал в проектах для VMware, IBM, Cisco, Reuters Thomson и многих других. Вместо того, чтобы направлять вас в «маркетинговую литературу», я могу показать вам фактический список авторов: http://docs.dojocampus.org/developer/contributors & mdash; прокрутите вниз, чтобы увидеть корпорации, которые вносят (и используют) Додзё.

Мы ведем список индивидуальных и корпоративных участников, чтобы наши пользователи могли быть уверены, что IP-линия кода Dojo чистая & mdash; каждый участник подписывает CLA о том, что он / она / она написал предоставленный код и / или имеет право внести его по двойной лицензии AFL / BSD. До сих пор у нас не было никаких проблем с этим.

Насколько я могу судить, YUI в основном разрабатывается одной компанией: Yahoo! YUI начал принимать внешние вклады только два года назад находится в разработке с 2005 года и теперь также требует CLA.

Я не эксперт по фондовому рынку, но с Yahoo всегда что-то не так !: однажды он пытается заключить союз с Google, на следующий день он убивает свой поисковый бизнес и идет с Microsoft, даже продавая всю компанию Microsoft обсуждалась еще в 2008 году & mdash; кто может предсказать, что он будет делать завтра. Теперь, в 2010 году, цена акций снизилась с 2008 года & mdash; он снова появится в продаже? Некоторые говорят, что Microsoft станет лучшей матерью для YUI, если она решит оставить ее. С другой стороны, у Microsoft есть собственные программные свойства, и она не совсем поддерживает проекты JavaScript с открытым исходным кодом.

В отличие от YUI Dojo поддерживается несколькими компаниями, причем наиболее влиятельной из них является IBM & mdash; эта компания наняла несколько видных коммиттеров. Хотя Dojo имеет сильную корпоративную поддержку, он по-прежнему является проектом, управляемым его сообществом, частными лицами. Если какая-либо компания или даже несколько компаний столкнутся с рыночными сбоями, мы все равно будем идти вперед.

Dojo распространяется по двойной лицензии AFL / BSD и бесплатен для любого использования. Все официально выпущенные версии Dojo обслуживаются AOL и Google CDN.

Код качества

Я пристрастен :-) и считаю, что код очень хорошего качества. Поскольку Dojo - это проект с открытым исходным кодом, вы всегда можете судить о нем сами и улучшать его, если чувствуете, что можете.

Исходный код хранится в Subversion , официальные зеркала поддерживаются на Github (git) и Bitbucket (hg) . Для удобства имеется зеркало на Launchpad (bzr) .

Разработчики ядра движутся вперед с новыми функциями

У Додзё есть активное активное сообщество, которое, так сказать, поддерживает движение колеса. Будучи одним из разработчиков ядра, я лично заверяю вас, что мы продолжим двигаться вперед, продвигая пресловутый охват еще дальше.

Dojo имеет проверенный послужной список инноваций, и мы не собираемся останавливаться.

Кросс-браузерные проблемы

В настоящее время Dojo 1.4 поддерживает следующие браузеры :

  • Поддержка Firefox 2 прекращена. Поддерживаются Firefox V3 и V3.5.
  • Поддерживается последняя версия Safari (Safari v4) и последняя версия Chrome (Chrome v3), но не предыдущие версии.
  • IE6, IE7, IE8 все поддерживаются.
  • Последняя опера (Opera v10) (только ядро ​​Dojo).

Предстоящий Dojo 1.5 (будет выпущен через несколько дней) был тщательно протестирован со следующими браузерами:

  • Firefox 3.5 / 3.6
  • Safari 4 / Safari 5 и Chrome 5
  • IE6, IE7, IE8
  • Opera 10.53 и более поздние версии (только для ядра Dojo)

Чтобы подчеркнуть различия с браузерами YUI A-grade:

  • Dojo поддерживает Linux в дополнение к Windows и Mac.
  • Dojo поддерживает Google Chrome во всех поддерживаемых ОС.
  • Dojo поддерживает Firefox на всех поддерживаемых ОС.
  • Dojo Core поддерживает Opera на всех поддерживаемых ОС.

Лично я могу добавить, что я все еще тестирую dojox.gfx (кроссплатформенный графический пакет) на Firefox 2 & mdash; он включает в себя Dojo Core и работает как положено. И я тестирую Dojo Core на нескольких экзотических браузерах, таких как Midori .

Другое отличие состоит в том, что Dojo можно использовать (и он используется) в настольных и серверных средах. Очевидно, что компоненты, специфичные для браузера, в этих средах не используются.

Компоненты модуля

С первого дня Dojo предоставлял классы, модули и пакеты (коллекции модулей). Dijit предоставляет виджеты: упакованный HTML + JavaScript с унифицированным интерфейсом.

Все строительные блоки открыты для пользователей, поэтому они могут создавать свои собственные компоненты, которые будут гражданами класса 1 st : они могут быть загружены как любые другие модули, обработанные сборщиком (отслеживаемые зависимости, минимизированный, предварительно обработанный CSS и т. д.), даже экзотические сборки CDN могут быть сделаны пользователями. Все, что вы можете делать со стандартными компонентами Dojo, вы можете делать со своими собственными компонентами.

Само Dojo разделено на 3 подпроекта, которые можно использовать отдельно:

  • Dojo (включая базу Dojo в виде одного файла)
  • Dijit : коллекция виджетов
  • DojoX : еще больше виджетов и ~ 50 пакетов, охватывающих все - от кроссплатформенных графиков до шифрования.

Самый простой для изучения и интеграции

Dojo - это просто JavaScript и обычный HTML / DOM (для виджетов). Это не притворяется чем-то другим, это не культ с фюрером у руля, это не «фреймворк», который берет под контроль ваше приложение и заставляет вас делать какие-то странные вещи, а Додзё не хочет » улучшая «несовершенный» JavaScript, Dojo не хочет маскировать браузер под что-то другое. Вместо этого Dojo предоставляет практические инструменты для повышения производительности труда программиста, облегчения работы с RAD, решения общих проблем и поддержки полезных методов и методологий.

У каждого опытного программиста обычно есть мини-библиотека вещей, которые хорошо ему работали в предыдущих проектах. Он или она знает, чего следует избегать и что использовать. Это «щелкнуло» в моей голове, когда я понял, что Dojo - это библиотека стероидов & mdash; Вроде несколько экспертов собрались и тщательно соединили свои личные библиотеки. Конечно, в нем много разных модулей, но я могу использовать только то, что хочу для своего конкретного проекта & mdash; Меня не заставляют использовать все, и я не плачу за вещи, которые не использую. Даже не штраф за абстракцию.

Если вы знаете JavaScript и знакомы с HTML, CSS и DOM & mdash; Вы будете прямо дома.

9 голосов
/ 09 июля 2010

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

Однако у меня большой опыт работы с YUI (2 и 3) и я думаю, что это может соответствовать вашему варианту использования.

  • Надежный - YUI используется внутри компании Yahoo, так что он должен дать некоторые подсказки относительно его надежности.
  • Качество кода - я участник проекта и кодкачество очень хорошееПоскольку это открытый исходный код, вы можете взглянуть на себя .
  • Движение вперед - оно поддерживается Yahoo (но также включает вклады сообщества), поэтому продвижение вперед довольно безопасно.Опять же, вы можете отслеживать разработку и участие сообщества самостоятельно.
  • Кросс-браузер - он поддерживает все браузеры Yahoo A-grade
  • Модули - тамтонны, и (особенно в YUI 3) легко включить только те части, которые вам нужны.Если вам нужны в основном модули с графическим интерфейсом, вам все равно нужно будет смешать несколько YUI 2 (что легко сделать).Тем не менее, скоро появятся виджеты в YUI3.
  • Легко изучать и интегрировать - YUI, вероятно, имеет лучшую документацию из всех библиотек JS, которые я когда-либо видел.Тем не менее, YUI 3 очень самоуверен в том, как вы пишете свой JavaScript.Он самоуверенный в хорошем смысле и дает вам большую отдачу, но просто «зайти» в существующий проект YUI 2 может быть проще.
1 голос
/ 04 сентября 2013

Зная, что JQuery является самым простым в использовании и чрезвычайно популярным, у Dojo есть преимущество в интеграции с Zend Framework.Кроме того, разница в том, чтобы быть библиотекой или структурой, имеет значение.- Библиотека о функциональных возможностях многократного использования, но инфраструктура о многократно используемых поведениях. - Библиотека - это то, что вы называете / наследуете из своего кода, но инфраструктура - это то, что вызывает ваш код или предоставляет услуги для вашего кода.и классы, где фреймворк - это то, как абстрактные классы и компоненты взаимодействуют друг с другом.

1 голос
/ 24 октября 2010

YUI обладает отличным набором инструментов для тестирования и не загрязняет глобальное пространство имен. Кроме того, результаты тестирования YUI могут быть прочитаны JUnit, что является плюсом в моей книге. Я не использовал Dojo, поэтому не могу комментировать его подробно, но способ его интеграции с DOM заслуживает примечания.

0 голосов
/ 09 июля 2010

Нет однозначного ответа.Проверьте эту страницу и выберите ту, которая соответствует вашим потребностям:

http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks

...