Что такое ActiveRecord?

Мартин Фаулер
ActiveRecord (AR) – это довольно удобный и достаточно мощный инструмент в web-разработке. AR является посредником для связи базой данных (БД), реализующим подход ORM (объектно-реляционное проецирование). Паттерн ActiveRecord обеспечивает возможность производить операции создания, добавления, изменения и удаления информации БД, а так же ее чтения из таблиц, без непосредственного написания SQL -запросов.
Это реализуется благодаря работе, основанной на следующих соответствиях:
  1. Каждая таблица в БД – это класс в AR
  2. Каждая строка таблицы БД – это экземпляр класса AR
  3. Основные операции CREATE, INSERT, UPDATE и DELETE – это методы AR

Особенностью AR является то, что данный инструмент работает с различными СУБД – можно использовать MySQL, Oracle, PostgreSQL или любые другие.

Достоинства ActiveRecord

Достоинства у данной реализации ORM подхода принципиально те же, что и у любой другой платформы, служащей промежуточным слоем между двумя другими. Во-первых, самое главное – это удобство и простота работы с объектами баз данных. Благодаря этому, можно не сильно разбираться в синтаксисе и правилах построения SQL-запросов и сильно сэкономить время. Вторым достоинством является более чистый код, который значительно меньше того, который состоит из чистого синтаксиса SQL. В-третьих АR формирует более безопасный код запросов.

Благодаря всем вышеописанным плюсам, шаблон проектирования АR широко используется всеми популярными фреймворками (например, Cohana, Codeigniterи Yii) и наиболее успешно в RoR. Различные инструменты web-разработки каждый по своему модифицируют АR, а так же имеют возможность отключения этого расширения для управления данными в таблицах БД напрямую.

Недостатки ActiveRecord

  1. Сложность SQL-запросов ограничивается возможностями ActiveRecord для каждой платформы web-программирования;
  2. Использование AR требует выделения большей производительности и памяти ПК, чем применение чистого SQL или менее “умных” инструментов для управление данными;
P.S. Сегодня мы рассмотрели технологию web программирования - ActiveRecord. Не менее интересную информацию о сайтостроении вы сможете найти на сайте seofine.ru. Так же, на данном сайте вы сможете прочитать статьи на темы: продвижение и монетизация сайтов.

Опубликовано: 3 Апрель, 2014 | Просмотров: 5185 |     | Печать

Это интересно