Dojo против Yui JavaScript framework
Я хочу знать, что вы, ребята, думаете об этих 2 рамок, в отношении:
- надежность,
- качество кода
- основные разработчики продвигаются вперед с новыми функциями,
- проблемы с кросс-браузером,
- компоненты модулей,
- простой в освоении и интеграции
Я уже знаю и использую jQuery, недавно я обнаружил, что ему не хватает с точки зрения "enterprise ready" компоненты для большого веб-приложения.
теперь я не хочу начинать дебаты о jquery, или почему mootools там нет, я хочу знать, что вы, ребята, думаете об этих 2 рамках конкретно.
спасибо!
5 ответов
отказ от ответственности: я коммиттер Dojo.
Почему - то никто не представил сторону додзе в этом сравнении-это не сравнение без одного, не так ли? Позвольте мне изложить ваши соображения.
надежность
Dojo используется во многих ИТ-проектах крупных международных корпораций. Я лично участвовал в проектах для VMware, IBM, Cisco, Reuters Thomson, чтобы назвать несколько. Вместо того, чтобы направить вас в "маркетинговую литературу", я могу показать вам фактический список участников:http://docs.dojocampus.org/developer/contributors - прокрутите вниз, чтобы увидеть корпорации, которые вносят вклад (и используют) Dojo.
мы сохраняем список индивидуальных и корпоративных вкладчиков, чтобы наши пользователи могли быть уверены, что IP - линия кода Dojo чиста-каждый вкладчик подписывает CLA заявив, что он/она/она написал внесенный код и/или имеет право внести его по двойной лицензии AFL / BSD. До сих пор мы не есть какие-то проблемы с этим.
насколько я могу судить, YUI в основном разработан одной компанией: Yahoo! Юи начал принимать внешние взносы только два года назад находится в разработке с 2005 года и теперь требует CLA тоже.
Я не эксперт по фондовому рынку, но что-то всегда происходит с Yahoo!: один день он пытается создать альянс с Google, на следующий день он убивает свой поисковый бизнес и идет с Microsoft, даже продажа всей компании Microsoft обсуждалась еще в 2008 году - кто может предсказать, что он будет делать завтра. Теперь в 2010 году цена акций упала с 2008 года - он снова будет продаваться? OTOH некоторые говорят, что Microsoft была бы лучшей матерью для YUI, если бы она решила сохранить его. Опять же, Microsoft имеет свои собственные свойства программного обеспечения и не совсем сторонник проектов JavaScript с открытым исходным кодом.
В отличие от Yui Dojo поддерживается несколькими компаниями с IBM является самым влиятельным один-несколько видных коммиттеров были наняты этой компанией. Хотя Dojo имеет сильную корпоративную поддержку, это все еще проект, управляемый его сообществом, отдельными лицами. Если какая-либо компания или даже несколько компаний будут испытывать рыночные икоты, мы все равно будем пахать вперед.
Dojo распространяется по двойной лицензии AFL/BSD и бесплатно для всех целей. Все официально выпущенные версии Dojo обслуживаются AOL и Google CDNs.
качество кода
Я предвзято : -) и я считаю, что код очень хорошего качества. Поскольку Dojo-проект с открытым исходным кодом, вы всегда можете судить об этом сами и улучшать его, если чувствуете себя в состоянии.
исходный код хранится в в Subversion с официальными зеркалами поддерживается на Github (git) и Bitbucket (hg). Для удобства есть зеркало на панель запуска (bzr).
основные разработчики продвигаются вперед с новыми особенности
Dojo имеет активное живое сообщество, которое держит колесо в движении, так сказать. Будучи одним из основных разработчиков, я лично заверяю вас, что мы будем продолжать двигаться вперед, продвигая пресловутый охват еще дальше.
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
- 4 сафари/Safari 5 и Chrome 5
- IE6, IE7, IE8
- Opera 10.53 и более поздних версий (только ядро Dojo)
чтобы выделить различия с браузерами A-класса YUI:
- Dojo поддерживает Linux в дополнение к Windows и Mac.
- Dojo поддерживает Google Chrome на всех поддерживаемых ОС.
- Dojo поддерживает Firefox на всех поддерживаемых ОС.
- Dojo Core поддерживает Opera на всех Поддерживаемые ОС.
лично я могу добавить, что я все еще тестирую dojox.gfx (кросс-платформенный графический пакет) в Firefox 2 - он включает ядро Dojo и работает так, как ожидалось. И я тестирую Dojo Core на нескольких экзотических браузерах, таких как Мидори.
другое отличие заключается в том, что Dojo может использоваться (и используется) в настольных и серверных средах. Очевидно, что компоненты браузера не используются в этих средах.
модуль компоненты
с первого дня Dojo предоставил классы, модули и пакеты (коллекции модулей). Dijit предоставляет виджеты: упакованный HTML + JavaScript с унифицированным интерфейсом.
все строительные блоки подвергаются пользователи, поэтому они могут создавать свои собственные компоненты, которые будут 1st Class citizens: они могут быть загружены, как и любые другие модули, обработанные построителем (отслеживаемые зависимости, минифицированные, предварительно обработанные CSS и т. д.), даже экзотические CDN сборки могут выполняться пользователями. Все, что вы можете сделать с компонентами stock Dojo, вы можете сделать со своими собственными компонентами.
сам Dojo разбит на 3 подпроекта, которые можно использовать отдельно:
- Додзе (включая базу Dojo как один файл)
- в dijit: набор виджетов
- DojoX: еще виджеты, и ~50 пакетов, охватывающих все, от кросс-платформенной карту шифрование.
простой в освоении и интеграции
Dojo - это просто JavaScript и обычный HTML / DOM (для виджетов). Он не претендует на что-то другое, это не культ с фюрером у руля, это не "фреймворк", который берет под контроль ваше приложение и заставляет вас делать некоторые странные вещи, Dojo не хочет "улучшать" "несовершенный" JavaScript, Dojo не хочет маскировать браузер, чтобы быть чем-то другим. Вместо этого Dojo обеспечивает практическую инструменты, чтобы сделать программиста более продуктивным, облегчить RAD, решить общие проблемы и поддержать полезные методы и методологии.
У каждого опытного программиста обычно есть мини-библиотека вещей, которые хорошо работали для него в предыдущих проектах. Он знает, чего избегать и что использовать. Это "щелкнуло" в моей голове, когда я понял, что Dojo это библиотека на стероидах - как несколько экспертов собрались вместе и тщательно объединили свои личные библиотеки. Конечно, он имеет много разных модулей, но я могу использовать только то, что хочу для своего конкретного проекта - я не обязан использовать все, и я не плачу за то, что не использую. Даже не абстрактное наказание.
Если вы знаете JavaScript и знакомы с HTML, CSS и DOM - вы будете ПРЯМО ДОМА.
Я думаю, что ваша причина отказа от jquery звучит подозрительно, и рекомендация фреймворка как "enterprise ready" является двусмысленным комплиментом в моей книге.
тем не менее, у меня есть большой опыт работы с YUI (2 и 3), и я думаю, что это может соответствовать вашему прецеденту.
- Robust-YUI используется внутри Yahoo, так что это должно дать некоторые подсказки относительно его надежности.
- качество кода-я являюсь участником проекта, и качество кода очень хорошее. Как это с открытым исходным кодом вы можете посмотрите сами.
- движение вперед-он поддерживается Yahoo (но также включает взносы сообщества), поэтому движение вперед довольно безопасно. Опять же, вы можете отслеживание развития и участия сообщества себя.
- Кросс-браузер-он поддерживает все Yahoo A-класс браузеры
- модули-тонна, и (особенно в Юи 3) легко включать как раз части тебе нужно. Если вы хотите в основном модули GUI, вам все равно нужно смешать некоторые YUI 2 (что легко сделать). Однако виджеты в YUI3 скоро появятся.
- легко учиться и интегрировать-YUI, вероятно, имеет лучшая документация любой библиотеки JS, которую я видел. Тем не менее, YUI 3 очень самоуверенно относится к тому, как вы пишете свой javascript. Это самоуверенный в хорошем смысле и дает вам много взрыва для вашего доллара, но просто "заглянуть" в существующий проект YUI 2 может быть облегчающий.
YUI имеет отличный инструментарий тестирования и не загрязняет глобальное пространство имен. Кроме того, результаты теста YUI могут быть прочитаны JUnit, что является плюсом в моей книге. Я не использовал Dojo, поэтому я не могу прокомментировать его подробно, но то, как он интегрируется с DOM, заслуживает обозначения.
зная, что JQuery является самым простым в использовании и огромным популярным, Dojo имеет свое преимущество в интеграции в Zend Framework. Кроме того, разница в том, чтобы быть библиотекой или фреймворком. - Библиотека - это многоразовые функции, но фреймворк - это многоразовое поведение - Библиотека-это то, что вы называете/наследуете от своего кода, но framework-это то, что вызывает ваш код или предоставляет услуги для вашего кода - Библиотека представляет собой набор компонентов и классов, где основой как абстрактные классы и компоненты взаимодействуют друг с другом.
нет единого ответа. Проверьте эту страницу и выберите ту, которая соответствует вашим потребностям:
http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks