Введение
Концепция в программировании В программировании активный шаблон записи является архитектурным шаблоном. Он содержится в программном обеспечении, которое хранит в памяти объекты данных в реляционных базах данных. Он был назван Мартином Фаулером в его книге 2003 года "Patterns of Enterprise Application Architecture". Интерфейс объекта, соответствующий этому шаблону, будет включать в себя такие функции, как Вставка, Обновление и Удаление, а также свойства, которые более или менее непосредственно соответствуют столбцам в базовой таблице базы данных. Активная модель записи - это подход к доступу к данным в базе данных. Таблица или вид базы данных упаковывается в класс. Таким образом, экземпляр объекта привязан к одной строке в таблице. После создания объекта, новая строка добавляется в таблицу при сохранении. Любой загруженный объект получает информацию из базы данных. Когда объект обновляется, соответствующая строка в таблице также обновляется. Класс wrapper реализует методы или свойства аксессуара для каждого столбца в таблице или представлении. Этот шаблон обычно используется инструментами постоянства объектов и в объектно-реляционном отображении (ORM). Обычно отношения иностранного ключа будут представлены как объектный экземпляр соответствующего типа через свойство.
In software engineering, the active record pattern is an architectural pattern. It is found in software that stores in memory object data in relational databases. It was named by Martin Fowler in his 2003 book Patterns of Enterprise Application Architecture. The interface of an object conforming to this pattern would include functions such as Insert, Update, and Delete, plus properties that correspond more or less directly to the columns in the underlying database table. The active record pattern is an approach to accessing data in a database. A database table or view is wrapped into a class. Thus, an object instance is tied to a single row in the table. After creation of an object, a new row is added to the table upon save. Any object loaded gets its information from the database. When an object is updated, the corresponding row in the table is also updated. The wrapper class implements accessor methods or properties for each column in the table or view. This pattern is commonly used by object persistence tools and in object–relational mapping (ORM). Typically, foreign key relationships will be exposed as an object instance of the appropriate type via a property.
Большие файлы
Поскольку данные и методы доступа к базе данных находятся в одном файле, эти файлы становятся больше.
Принцип единой ответственности и разделение интересов
Еще одна критика модели активных записей заключается в том, что из-за сильной связи взаимодействия базы данных и логики приложения объект активных записей не следует принципу единой ответственности и разделения интересов. Это противоположно многоуровневой архитектуре, которая должным образом рассматривает эти практики. Из-за этого активный шаблон записи лучше всего и чаще всего используется в простых приложениях, которые являются формами над данными с функциональностью CRUD или только как одна часть архитектуры. Обычно эта часть - доступ к данным и почему несколько ORM реализуют активную модель записи.