Answers:
CRUD是首字母缩写词,代表创建,读取,更新和删除。这些是您可以对数据库元组执行的四个基本操作。 但是,业务应用程序总是具有比创建,读取,更新和删除数据库记录更多的功能。
让我们从一些基本定义开始,然后看几个示例,看看这些定义如何映射到示例,以及它们如何映射到实际软件。
业务逻辑或域逻辑是程序的一部分,它编码确定确定如何创建,存储和更改数据的真实业务规则。它规定了业务对象之间如何交互,并规定了访问和更新业务对象的途径和方法。
业务规则描述了适用于组织的操作,定义和约束。这些操作共同构成一个过程;每个企业都使用这些流程来形成完成任务的系统。
现在,让我们来看一些示例。
首先,您需要了解(输入)什么?
必须应用哪些“业务规则”?
“原子”是指事务必须完全成功或必须完全失败。您无法进行以下交易:将一笔钱从一个帐户中取出而没有到达另一个帐户(钱消失),或者将钱存入一个帐户,但不从另一笔帐户中借记(钱神奇地从任何地方出现)。
你需要了解什么?
下订单后会发生什么?
发票/运输清单已打印,并与订单一起放置
..等等。
CRUD只是应用程序执行的创建,读取,更新,删除操作。
在某种程度上,错误跟踪器也是CRUD应用程序。创建错误,阅读(显示)错误,更新错误,甚至删除它们。
但是,错误跟踪器不仅仅具有CRUD。
实现以上内容的代码是应用程序的业务逻辑。
工作流程的限制,或者谁可以在CRUD中执行各种操作。这些就是将一个CRUD应用程序与另一个CRUD应用程序区分开的原因。它们是您需要使业务实际说明应用程序如何工作的部分。它是多么合乎逻辑...好吧,这是在项目经理的耳边讨论啤酒的最佳方式。但这就是业务逻辑。
当然,有可能在没有角色的情况下编写“纯” CRUD应用程序,可以修改和查看所有内容-但这是例外,而不是规则。
业务逻辑是您要编写到程序中以处理给定业务规则的逻辑。
当您开始涉足业务规则时,这往往处于比原始或业务逻辑更高的级别。这往往是您从与业务部门合作的业务分析师那里获得的东西。
在此示例中,考虑一个确定如何在商店的退货柜台处理商品退货的程序。
这些是一些业务规则。他们不与应用程序的CRUD部分对话。
使用业务规则时,通常可能会发现它们是用规则引擎(例如Windows Workflow Foundation Rules Engine)编写的,而不是在系统中编写原始代码的。
意识到逻辑/规则的区别是术语之一,并且可以整夜争论不休(最好再喝一杯啤酒)。尽管这不是一个普遍的区别,但是两者可以相互融合。
业务逻辑基本上包括两大类:验证和流。业务逻辑说,数量1必须大于或等于数量2-例如,要购买的商品数量必须小于或等于库存商品数量。
在一个应用程序中,业务人员会说这是一条业务规则,因此您编写代码以强制执行此业务逻辑(验证)。另一个应用程序会说,如果订购的商品数量大于库存的商品数量,则接受订单,然后下定您自己的订单,收取差额加上20%,因此您将编写此业务逻辑(流程) 。
CRUD只是简单地获取和存储数据并对其进行更改。业务逻辑确定您对数据进行的处理以及对数据进行的转换。您的客户将来是否出生于某个地理区域(年龄在5岁以下)(当地人/游客的折扣)。CRUD很简单,要知道孩子只有在日历年中与您同住超过一半的时间(而不仅仅是六个月以上),您才能获得孩子税收抵免,这更加复杂。