Подтвердить что ты не робот

В чем разница между инфраструктурой JavaScript и библиотекой?

Возможный дубликат:
Framework vs. Toolkit vs. Library

Я хотел бы знать, в чем разница между инфраструктурой JavaScript и библиотекой, используя некоторый пример.

Например, jquery, backbone.js и jasmine являются фреймворком или библиотекой JavaScript? И почему?

Можете ли вы привести пример структуры JavaScript и библиотеки, используя предложение Don't call Us, We'll call You.

4b9b3361

Ответ 1

Даже этот вопрос очень субъективен, мое личное мнение об этих двух заключается в следующем:

  • Framework: это описывает заданную структуру "как" вы должны представить свой код. В значительной степени, как шаблон кода, некоторые помощники, конструкторы и т.д., Чтобы решить/упростить конкретную проблему или привести вашу архитектуру в "порядке". Примеры, "Магистраль", "requireJS", "socketIO".

  • Библиотека. Это целый набор инструментов, который сильно абстрагирует разные слои, такие как браузеры/модели DOM и т.д. Также как хороший инструментарий, он предлагает множество инструментов и аккуратных вещей для работы с, что в целом упростит ваш опыт кодирования. Примеры "jQuery", "MooTools", "YUI"

Ответ 2

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

В этом отношении:

  • jQuery - это библиотека, потому что она абстрагирует много несовместимости браузера, но не накладывает никакой структуры на ваш код.
  • underscore.js - это библиотека, потому что она представляет собой набор утилит для управления структурами данных и другими положительными эффектами.
  • backbone.js - это фреймворк, потому что он структурирует ваш интерфейсный код в соответствии с шаблоном MVC.
  • Jasmine - это фреймворк, потому что он структурирует ваш код, чтобы вы могли легко делать BDD.

Что касается вашего предлагаемого примера, рамки подходят для парадигмы don't call us, потому что большинство из них накладывает поток кода (своего рода инверсию управления). Вы вызываете библиотеки, они не вызывают ваш код.

Это субъективное мнение, поэтому возьмите его как таковое.

Ответ 3

Структура инкапсулирует общую функциональность приложения, позволяя разработчику сосредоточиться на тех частях, которые уникальны для их применения. Это означает, что разработчик пишет фрагменты кода, которые вызываются инфраструктурой, когда происходят разные вещи; Пример: backbone.js или jasmine. Библиотеки представляют собой пакеты кода, которые обычно вызываются вашим приложением для выполнения задачи, например манипуляции с DOM или HTTP-запросы. Пример: jQuery.

Ответ 4

Библиотека JavaScript - это библиотека предварительно написанного JavaScript, которая позволяет упростить разработку приложений на основе JavaScript.

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

Ответ 5

JavaScript - это язык сценариев.

JQuery - это библиотека JavaScript, которая обрабатывает многие часто используемые функции, а также обрабатывает различия между, например, Internet Explorer и стандартизованными браузерами. Это то, что вы можете использовать для уменьшения объема работы при создании веб-приложений.

Ответ 6

Нет реального определения разницы между этими двумя, но в целом я бы сказал, что структура - это более общая вещь с несколькими инструментами, чем библиотека, которая обычно очень специализирована.

Например, Sylvester - это матричная и векторная математическая библиотека. Это очень специфично в его функциональности.

A framework, например Prototype, предлагает гораздо больше, чем просто ограниченный набор очень специализированных функциональность. Он может даже использовать или состоять из нескольких библиотек внутри.

Важно: В конце концов, люди используют "рамки" и "библиотеку" по своему усмотрению. К сожалению;)