Автор оригинала: FreeCodeCamp Community Member.
Джона Вандивии
ЗАМЕТКА: Май 2018: Читать Из двойника в обратную связь: ретроспектива Для обновленной перспективы!
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Эта статья Отзывы Объект реляционный сопоставление (ORM) Решения в javaScript Ecosystem и идентифицируют идеальное решение на основе конкретных требований.
Что такое ORM и почему это так важно?
Решения ORM полезны для облегчения разработки API, ориентированной на данные. Пользователи имеют конкретные потребности, которые управляют моделью данных приложения. В устаревших разработках эта архитектура данных обычно реализована и версия, управляемая с использованием сценариев базы данных, таких как SQL Scripts. Затем для приложения сервера используется отдельная библиотека для выполнения действий CRUD в базе данных.
ORMS Работает как API высокого уровня для выполнения CRUD, и в наши дни Quality Orms также позволяет нам инициализировать данные через код. Комплексные данные манипуляции, уборка и так далее, часто проще в коде. В то время как выделенный экстракт, преобразование и нагрузка ( etl ) инструменты существуют, одинаковые задачи ETL могут быть легко реализованы в ORM.
Реализация экстракта, преобразования и нагрузки с кодом позволяет системе более легко интегрировать данные из очень разных источников. Базы данных SQL из нескольких ароматизаторов, данные NoSQL, данные файловой системы и данные третьих сторон могут быть интегрированы под единый язык с помощью JavaScript ORM.
Наконец, Code-ориентированный контроль данных также позволяет системе реализовывать использование данных во время выполнения или в процессе сборки, и гибко адаптировать использование во время процесса разработки по мере необходимости.
Чтобы повторяться, ORMS улучшает производительность разработчика, предоставляя API высокого уровня, на одном языке, с функциональными возможностями, которые традиционно потребуются несколько различных инструментов и наборов навыков. Меньше потребностей навыков, потребностей инструментов и требуются часы облегчает маржу проекта. Непредвиденные требования и графика проекта лучше подготовлены с помощью гибких конфигурации данных по сборке и время выполнения.
Предпочтительные возможности ORM
Конкретный контекст проекта, ведущий к этому обзору ORM, требует внедрения режущего края, подобного CMS, Универсальный JavaScript заявление.
Режущий кромки Универсальные JavaScript Frameworks поступают в основном 3 ароматы: угловые, реагирующие и Vue. То есть Угловой универсальный , Следующий и Nuxt Отказ
Узел врасника поддерживает операции файловой системы, поэтому требования к данным системы управления контентом составляют предпочтение широкомасштабной поддержки базы данных. Всего рассматриваются следующие требования:
- Поддержка Mongo и MySQL, с предпочтением поддержки дополнительных вариантов
- Интеграция с помощью WebPack
- Интегрироваться с экспресс
- Минимальный ударить к исполнению во время выполнения
- Интуитивно понятный синтаксис
- Дополнительные особенности
- Высокий GitHub Star для выпуска соотношения
- Активно поддерживается без сбоев сборки или устаревших зависимостей
Кандидаты и результаты
Каждый кандидат получил оценку от 0 до 10 для каждой предпочтительной способности. Оценка 5 означает приемлемое. Среднее значение для столбца может быть более или менее 5. Например, ORM с поддержкой нескольких баз данных NoSQL и поддержки любой поддержки любой базы данных SQL будет получать оценку от 2 до 4. 0 указывает на полное отсутствие функции.
Специальный крик на жой , PG и knex Отказ Эти библиотеки не являются полными орами, но они велики в том, что они делают. Если вам не нужен полный взорванный ORM, посмотрите, смотрите, могут ли они решить ваши потребности.
Заключение
Итоги отражают общую полезность каждого решения. Топ-5 результатов были:
- Пестрога
- Ватерлиния
- Мангуста
- Входной
- Секвентифицировать
Сочетание конкретных проектов потребностей, опущенных факторов и личных предпочтений приводит к топ-3 выборам.
Ватерлиния сильно интегрирована в рамки паруса, а мангуст поддерживает только монгодб.
Sequelize и Nodeorm2 ограничены SQL, и им не хватает генерации API.
Из-за синтаксиса TypectScripts введите Telemermate хорошо интегрируются с угловым проектом.
Как разработчик, я рекомендую прототипировать более одного верхнего решения для идентификации настоящего победителя. Топ-3 решения, которые являются всеми кандидатами прототипирования, включают в себя:
- Пестрога
- Входной
- Caminte.
Я представил эту информацию другим разработчикам в проекте, и как команда, которую мы решили попробовать вприниматься в первую очередь. Проверьте позже для ретроспектива!
Что вы думаете об этом результате? Оставьте комментарий или внесите вам мысли на Это наклонное сравнение Отказ
Оригинал: “https://www.freecodecamp.org/news/a-comparison-of-the-top-orms-for-2018-19c4feeaa5f/”