| AngularJS | React | Ember JS | Backbone JS | Ractive JS | CanJS | Knockout JS | batman js | rAppid JS | SproutCore |
Изображение | | | | | | | | | | |
Общая информация |
Имеет автоматическую фильтрацию просмотраИмеет механизм для фильтрации просмотров, на основе переменных (например, при поиске) без необходимости написания дополнительных кодов. |
Имеет автоматическую фильтрацию просмотраИмеет механизм для фильтрации просмотров, на основе переменных (например, при поиске) без необходимости написания дополнительных кодов. | ✔ | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ | ✔ | ✖ | ✖ |
Использует движок ( механизм) шаблоновДвижок шаблонов позволяет легко и гибко создать UI. |
Использует движок ( механизм) шаблоновДвижок шаблонов позволяет легко и гибко создать UI. | ✖ | ✖ | ✔ | ✔ | ✔ | ✔ | ✔ | ✖ | ✔ | ✔ |
Расширяет HTMLНекоторые люди рассматривают это как преимущество, так как это позволяет избежать накладных расходов из другого языка шаблонов. |
Расширяет HTMLНекоторые люди рассматривают это как преимущество, так как это позволяет избежать накладных расходов из другого языка шаблонов. | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✔ | ✔ | ✖ | ✖ |
Опубликован под лицензией MIT LicenseЛицензия MIT License является очень разрешающей лицензией, которая позволяет все виды использования, в том числе бизнес-использование, без гарантии. |
Опубликован под лицензией MIT LicenseЛицензия MIT License является очень разрешающей лицензией, которая позволяет все виды использования, в том числе бизнес-использование, без гарантии. | ✔ | ✖ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
Интегрируется с другими MV* структурамиМожет быть использован для замены части другой структуры, не удаляя существующих функций. |
Интегрируется с другими MV* структурамиМожет быть использован для замены части другой структуры, не удаляя существующих функций. | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ |
Общий балл за "Общая информация" |
Общий балл за "Общая информация" | | | | | | | | | | |
Плагины |
Имеет популярный плагин для поддержки анимации.Имеет плагин, который включает в себя объекты для быстрого создания просмотра анимации. |
Имеет популярный плагин для поддержки анимации.Имеет плагин, который включает в себя объекты для быстрого создания просмотра анимации. | ✔ | ✔ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ |
Количество плагиновПлагины предлагают простой способ расширить функциональность или интегрироваться с другими сервисами. Большое количество плагинов может указывать на активное сообщество пользователей. Учитываются только официальные плагины. |
Количество плагиновПлагины предлагают простой способ расширить функциональность или интегрироваться с другими сервисами. Большое количество плагинов может указывать на активное сообщество пользователей. Учитываются только официальные плагины. | 213 | N.A. | N.A. | 153 | N.A. | 7 | 33 | N.A. | N.A. | N.A. |
Имеет специальный плагин.Это показывает, что программное обеспечение имеет живую экосистему, большую поддержку сообщества и разрешение для более гибкого и быстрого развития. |
Имеет специальный плагин.Это показывает, что программное обеспечение имеет живую экосистему, большую поддержку сообщества и разрешение для более гибкого и быстрого развития. | ✔ | ✖ | ✖ | ✔ | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ |
Встроенный RESTful синхронизирует абстракции для моделейВключает утилиты для подддержания моделей в синхронизации с их представлением на сервере, без необходимости написания шаблона jQuery и Аjax. |
Встроенный RESTful синхронизирует абстракции для моделейВключает утилиты для подддержания моделей в синхронизации с их представлением на сервере, без необходимости написания шаблона jQuery и Аjax. | ✔ | ✖ | ✖ | ✔ | ✖ | ✔ | ✖ | ✔ | ✔ | ✖ |
Поддерживает анимациюВключает объекты для легкого просмотра анимации. |
Поддерживает анимациюВключает объекты для легкого просмотра анимации. | ✖ | ✖ | ✖ | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ |
Общий балл за "Плагины" |
Общий балл за "Плагины" | | | | | | | | | | |
Библиотеки и Системы управления пакетами |
Является свободным для DOM манипуляцийНе требует и не рекомендует специального использования конкретной библиотеки (например, JQuery, MooTools, Zepto ) для обработки DOM манипуляций и может быть использован с той, которая предпочтительней для разработчика. |
Является свободным для DOM манипуляцийНе требует и не рекомендует специального использования конкретной библиотеки (например, JQuery, MooTools, Zepto ) для обработки DOM манипуляций и может быть использован с той, которая предпочтительней для разработчика. | ✖ | ✔ | ✖ | ✖ | ✔ | ✔ | ✖ | ✖ | ✖ | ✖ |
Работает с AMD библиотеками, такими как require.jsAMD библиотеки позволяют легкое, модульное, чистое программирование. Если структура не работает с такими библиотеками, возможно, есть некоторые другие средства, чтобы модулировать ее компоненты и устранять зависимости, такие как Dependency Injection. |
Работает с AMD библиотеками, такими как require.jsAMD библиотеки позволяют легкое, модульное, чистое программирование. Если структура не работает с такими библиотеками, возможно, есть некоторые другие средства, чтобы модулировать ее компоненты и устранять зависимости, такие как Dependency Injection. | ✔ | ✔ | ✖ | ✔ | ✔ | ✔ | ✖ | ✖ | ✔ | ✖ |
Официально поддерживает управление зависимости BowerBower прост в использовании, как npm менеджер пакетов для сетевых приложений. |
Официально поддерживает управление зависимости BowerBower прост в использовании, как npm менеджер пакетов для сетевых приложений. | ✔ | ✔ | ✖ | ✔ | ✔ | ✔ | ✖ | ✖ | ✖ | ✖ |
Имеет официальный, обновленный на сегодняшний день, npm менеджер пакетовМенеджер пакетов может также использоваться для управления фронтенд скриптами. |
Имеет официальный, обновленный на сегодняшний день, npm менеджер пакетовМенеджер пакетов может также использоваться для управления фронтенд скриптами. | ✖ | ✖ | ✔ | ✔ | ✔ | ✖ | ✔ | ✖ | ✔ | ✖ |
Включен jQuery LiteИспользует JQuery Lite элементы там, где необходимы манипуляции DOM. Таким образом, разработчики получают JQuery с удобными вспомогательными функциями, без необходимости включать в себя всю библиотеку. Во многих случаях, это устраняет зависимость проекта от JQuery |
Включен jQuery LiteИспользует JQuery Lite элементы там, где необходимы манипуляции DOM. Таким образом, разработчики получают JQuery с удобными вспомогательными функциями, без необходимости включать в себя всю библиотеку. Во многих случаях, это устраняет зависимость проекта от JQuery | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ |
Общий балл за "Библиотеки и Системы управления пакетами" |
Общий балл за "Библиотеки и Системы управления пакетами" | | | | | | | | | | |
Привязка данных |
Имеет двустороннюю привязку данныхМодели и представления могут быть привязаны друг к другу для обновления. |
Имеет двустороннюю привязку данныхМодели и представления могут быть привязаны друг к другу для обновления. | ✔ | ✖ | ✔ | ✖ | ✔ | ✖ | ✔ | ✔ | ✔ | ✔ |
Поддерживает одностороннюю привязку данныхОбъекты могут быть связаны для автоматического обновления при изменении наблюдаемого объекта. |
Поддерживает одностороннюю привязку данныхОбъекты могут быть связаны для автоматического обновления при изменении наблюдаемого объекта. | ✔ | ✔ | ✔ | ✖ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
Модели - это простые объекты JavaScriptЭто упрощает передачу данных между приложением и REST-Services или LocalStorage. Это также снижает сложность getter и setter функций. |
Модели - это простые объекты JavaScriptЭто упрощает передачу данных между приложением и REST-Services или LocalStorage. Это также снижает сложность getter и setter функций. | ✔ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ |
Позволяет использовать примесиПримеси - это технология программирования, которая позволяет различным объектам иметь общие поведения, без необходимости объектно-ориентированного наследования. |
Позволяет использовать примесиПримеси - это технология программирования, которая позволяет различным объектам иметь общие поведения, без необходимости объектно-ориентированного наследования. | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ |
Может быть дополнен популярным плагином для того, чтобы иметь двустороннюю привязку данныхМожет быть дополнен для поддержки обновления друг другом модели и представления. Это увеличивает размер файла, но добавляет больше гибкости в работе. |
Может быть дополнен популярным плагином для того, чтобы иметь двустороннюю привязку данныхМожет быть дополнен для поддержки обновления друг другом модели и представления. Это увеличивает размер файла, но добавляет больше гибкости в работе. | ✖ | ✔ | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✖ |
Общий балл за "Привязка данных" |
Общий балл за "Привязка данных" | | | | | | | | | | |
Производительность |
Уменьшенный размер файла, исключая зависимостиМеньший размер файла означает более быстрое время загрузки. |
Уменьшенный размер файла, исключая зависимостиМеньший размер файла означает более быстрое время загрузки. | 81KB | 78KB | 235KB | 19KB | 65KB | 69KB | 43KB | 247KB | 120KB | N.A. |
Поддерживает маршрутизацию (навигацию) и создание вложенных ссылокМаршрутизация позволяет взаимодействие с браузером URL. Это очень важно для положительного опыта пользователя, если вы создаете одностраничное приложение. |
Поддерживает маршрутизацию (навигацию) и создание вложенных ссылокМаршрутизация позволяет взаимодействие с браузером URL. Это очень важно для положительного опыта пользователя, если вы создаете одностраничное приложение. | ✔ | ✖ | ✔ | ✔ | ✔ | ✔ | ✖ | ✔ | ✔ | ✔ |
Использует PromisesИмеет внутреннюю реализацию Promises/А+ спецификации. Promises -это популярная альтернатива для обратных вызовов при работе с ответами серверов. |
Использует PromisesИмеет внутреннюю реализацию Promises/А+ спецификации. Promises -это популярная альтернатива для обратных вызовов при работе с ответами серверов. | ✔ | ✖ | ✔ | ✖ | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ |
Шаблоны могут предварительно компилироваться на сервереПоддерживает шаблоны, которые могут быть предварительно вынесены на сервер. Это возможно увеличивает скорость страницы, особенно на устройствах с низкой вычислительной мощностью. |
Шаблоны могут предварительно компилироваться на сервереПоддерживает шаблоны, которые могут быть предварительно вынесены на сервер. Это возможно увеличивает скорость страницы, особенно на устройствах с низкой вычислительной мощностью. | ✖ | ✔ | ✔ | ✔ | ✖ | ✔ | ✔ | ✖ | ✖ | ✔ |
Имеет внедрение зависимостиЭто улучшает проверяемость и модульность. |
Имеет внедрение зависимостиЭто улучшает проверяемость и модульность. | ✔ | ✖ | ✔ | ✖ | ✖ | ✖ | ✖ | ✖ | ✔ | ✖ |
Общий балл за "Производительность" |
Общий балл за "Производительность" | | | | | | | | | | |