Jump to content

RedBeanPHP

RedBeanPHP
Стабильная версия
5,7 / 3 апреля 2021 г. ( 03.04.2021 )
Репозиторий
Написано в PHP
Операционная система Кросс-платформенный
Тип объектно-реляционного сопоставления Библиотека
Лицензия БСД GPLv2
Веб-сайт Redbeanphp

RedBeanPHP — это независимое бесплатное BSD (ORM) с открытым исходным кодом, имеющее лицензию программное обеспечение объектно-реляционного картографирования , написанное Габором де Муой . Это отдельная библиотека, не являющаяся частью какой-либо структуры. RedBeanPHP — это объектно-реляционный преобразователь «на лету», это означает, что предварительная настройка не требуется. Система полностью полагается на соглашения и адаптирует схему базы данных в соответствии с потребностями программы. Таким образом, достигается баланс между NoSQL и традиционными решениями РСУБД .

RedBeanPHP отличается от других систем ORM , поскольку не требует настройки в XML , YAML или JSON . Он адаптирует схему базы данных в соответствии с потребностями программы. Все таблицы и столбцы создаются «на лету», без предварительной настройки или сопоставления. При необходимости он автоматически добавляет столбцы в таблицы и изменяет тип столбца в соответствии с требованиями к его содержимому. Когда разработчик завершит разработку и больше не ожидается изменений схемы, схему можно заморозить для развертывания в производственных средах. После заморозки базы данных изменений схемы больше не происходит. Отношения между таблицами отображаются одинаково: по соглашению. Например, чтобы создать связь «один ко многим» между двумя таблицами, присваивается массив свойству, имеющему имя целевой таблицы. При этом автоматически создается таблица, а также необходимые столбцы.

Пример кода, демонстрирующий простую операцию CRUD и отношение:

R::setup();
$movie = R::dispense('movie');
$movie->title = 'Beans in space';
$character = R::dispense('character');
$character->name = 'hero';
$movie->ownCharacterList[] = $character;
$id = R::store($movie);

RedBeanPHP — первая известная библиотека, использующая оперативный подход к ORM. Таким образом, он имеет большое влияние на другие библиотеки. RedBeanPHP вдохновил многие другие проекты использовать этот подход к отображению объектов. Подобные библиотеки появились и для .NET , [ 1 ] Питон , [ 2 ] JavaScript , [ 3 ] Ява , [ 4 ] Эрланг , [ 5 ] КолдФьюжн [ 6 ] и Objective-C . [ 7 ]

Интеграция

[ редактировать ]

Будучи независимой библиотекой, модули плагинов были разработаны для различных популярных фреймворков, таких как: Laravel , [ 8 ] КодИгнитер , [ 9 ] Как место, [ 10 ] Флинт [ 11 ] и Zend Framework . [ 12 ] Помимо модулей интеграции, некоторые платформы поставляются с RedBeanPHP «из коробки», например The Nibble Framework. [ 13 ]

RedBeanPHP впервые появился на GitHub в 2009 году. [ 14 ] Первой общедоступной версией была 0.3.3. RedBeanPHP был разработан Габором де Муой, разработчиком программного обеспечения из Нидерландов . Поскольку RedBeanPHP очень доступен и не скрывает язык SQL , он используется университетами для обучения программированию баз данных. [ 15 ] Согласно сообщению на форуме самого Габора, создание библиотеки было вдохновлено напыщенной речью Теда Ньюарда о системах реляционного отображения объектов , названной «ORM, Вьетнам информатики». [ 16 ] [ 17 ]

Судя по обзорам и презентациям, доступным в сети, RedBeanPHP в целом воспринимается положительно. [ 18 ] [ 19 ] [ 20 ] [ 21 ] Однако библиотека менее подходит для проектов с существующими базами данных и не поддерживает пользовательские сопоставления таблиц и столбцов, например, невозможно использовать префиксы таблиц. [ 22 ] Кроме того, ни одна из основных платформ не включает эту библиотеку.

См. также

[ редактировать ]
  1. ^ LimeBean, уровень доступа к данным на основе RedBeanPHP для .NET.
  2. ^ PyBean, RedBeanPHP вдохновил ORM для Python
  3. ^ «Тайр» . НПМ . Проверено 2 июля 2016 г.
  4. ^ RedBean4J RedBean вдохновил ORM для Java (сейчас заброшен)
  5. ^ RedBean-Эрланг
  6. ^ RedBeanCF
  7. ^ CocoaBean, библиотека, вдохновленная RedBeanPHP, для Objective-C.
  8. ^ Пакет RedBeanPHP для Laravel
  9. ^ плагин codeigniter-redbean для CodeIgniter Framework
  10. ^ Модуль интеграции Kohana
  11. ^ Поставщик услуг RedBean для Silex
  12. ^ Интеграция Zend Framework с RedBeanPHP
  13. ^ Nibble Framework: платформа для PHP на основе плагинов.
  14. ^ [1] Первый коммит RedBeanPHP на Github.
  15. ^ http://www.cs.wcupa.edu/rkline/wp/mysql-php.html Курс RedBeanPHP факультета компьютерных наук Западно-Честерского университета.
  16. ^ Сообщение на форуме с подробным описанием вдохновения для RedBeanPHP.
  17. ^ Вьетнам компьютерных наук. Архивировано 30 апреля 2010 г. в Wayback Machine.
  18. ^ Обзор SitePoint RedBeanPHP
  19. ^ Интервью с генеральным директором Зурмо, упоминает RedBeanPHP.
  20. ^ Обзор RedBeanPHP от Dreamincode
  21. ^ Обзор RedBeanPHP с существующей базой данных.
  22. ^ Контрольный список подходящих проектов на сайте RedBeanPHP.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c9e990944c593fce7dd73f11a289c010__1711163940
URL1:https://arc.ask3.ru/arc/aa/c9/10/c9e990944c593fce7dd73f11a289c010.html
Заголовок, (Title) документа по адресу, URL1:
RedBeanPHP - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)