活动记录模式:简单领域模型的利器

中文名是活动记录, 这是一个领域模型模式。它的特点是一个模型类对应关系型数据库中的一个表,并且这个模型类的一个实例对应表中的一行数据。

它的样子和行记录入口非常相似, 但是前者是一种领域模型, 而后者是一种数据源模式, 这俩是不一样的。关系型数据库通常是通过外键来表达实体之间的关系。在数据源的层面上, 也会把这个关系映射成对象的关联和聚集的情况。。

这个方案适合那些内容非常简单的领域需求, 特别是在领域模型和数据库模型长得特别像这种时候会比较好用。如果真的遇到了结构比较复杂的领域模型, 比如里面包含了继承、策略这些东西, 那么通常就不得不使用那种要把数据源给分开处理的领域模型了, 而且还得配合着 Data (数据映射器)一起使用才行。

驱动框架通常兼具 ORM 框架的功能, 但它并不是简单的 ORM, 这就好像 Row 存在区别一样。有一个著名的实例就是全栈 Web 开发框架 Ruby on Rails, 该框架在默认情况下会使用一个由纯 Ruby 语言编写的框架来驱动 MVC 架构里的模型层。

  在 的 《企业应用架构模式》 一书中曾详细叙述了本模式。  以下是著名的 驱动框架:  ()  Ruby on Rails (Ruby)  Yii (PHP)   (.NET)

相关推荐
特立独行的猫a7 天前
用仓颉语言给娃写了个打字练习游戏:cj-tauri 项目实战
游戏·ui·框架·tauri·仓颉·cangjie·cj-tauri
飞猫的边缘AI8 天前
边缘AI在自动驾驶应用中的行话汇总
人工智能·自动驾驶·芯片·模型·边缘ai·ai场景·城市noa
小北的AI科技分享9 天前
ai搭建服务商怎么选?从技术栈到交付质量拆解
模型·搭建·交付
欢喜躲在眉梢里12 天前
时序数据库选型指南:从大数据架构视角拆解 Apache IoTDB 的适用边界
大数据·人工智能·ai·架构·时序数据库·模型
魔士于安14 天前
经典Game
游戏·游戏引擎·贴图·技术美术·模型
L@ncor16 天前
第六章 框架开发实践 · 学习笔记(AutoGen / AgentScope / CAMEL / LangGraph)
python·框架·autogen·langgraph·agentscope
一个低调的青年16 天前
电池健康状态估计(一)
经验分享·笔记·其他·算法·模型
XLYcmy17 天前
AI 时代,MOM(制造运营管理系统)该如何演进? 上
ai·llm·agent·模型·mom·harness·工业系统