在阅读过程中,我经常看到他们提到所谓的Business Objects
。我已经在维基百科等地方查找了相关信息,但仍然不知道什么是Business Object
。
对于一个对软件架构毫不了解的人来说,有没有简单的解释呢?
此外,Business Logic
是什么?
在阅读过程中,我经常看到他们提到所谓的Business Objects
。我已经在维基百科等地方查找了相关信息,但仍然不知道什么是Business Object
。
对于一个对软件架构毫不了解的人来说,有没有简单的解释呢?
此外,Business Logic
是什么?
这很简单
系统中的每个实体都代表着该系统预期与之交互的人类世界对象,这些实体被称为业务对象。
处理业务对象相关的人类世界逻辑被称为业务逻辑,而不是实现细节的一部分。
例如,在多层交易系统中,订单/交易将成为业务对象,但心跳将是实现细节。
对于将订单/交易对象编码为流的逻辑将是实现细节,而在交易到达后将订单状态更改为“已完成”的逻辑则是业务逻辑。
一般来说,Business Object被认为是代表实体的类,例如书籍或商店。这样的类有特定的属性,如价格、颜色、宽度、ISBN编号等。在Java或.NET中,它由所谓的setter和getter组成,即设置或获取这些属性的方法。
另一方面,Business Logic是程序中处理这些属性的部分,也就是这本书是如何销售的。业务逻辑层使用Business Object来访问数据库。
嘿,devoured,我在开始开发时也遇到了这个术语的问题。
基本上,之所以使用“业务”这个词,是因为该术语是在商业软件的背景下发展起来的。因此,在这种意义上,假定软件是为商业目的而建立的...而不是艺术、美学或创造性目的。
因此,业务对象是现实世界“业务”对象的简单代码表示。因此,您可能会有一个产品类或员工类。
业务逻辑是应用程序中特定于软件设计的“业务”的逻辑。所以,像税收计算或产品与客户的关系之类的东西。
请注意,业务对象或业务逻辑的概念不适用于视频游戏开发或艺术开发。
它也不适用于某些框架或库,例如ORMS或单元测试库,因为它们是可重用的组件,不特定于任何“业务”。
业务对象:
class User {
long id;
String fullNames;
int age;
}
class Book {
long id;
String bookTitle;
}
class Sales {
long id;
long userID;
long bookID;
}
业务逻辑:
class BookSalesController {
private User user = new User();
private Book book = new Book();
private Sales sale = null;
public Sale sale(long saleID) {
String query = "SELECT * FROM Sales s WHERE s.id = :saleID";
....
.... execute the query
// Assuming we have our Result Set here by now
if (rs.next()) {
sale = new Sales(rs.getString("User Names"));
sale.setUserID(rs.getLong(userID));
sale.setBookID(rs.getLong(bookID));
}
return sale;
}
}
业务对象的定义很难在搜索引擎上找到,因为它会告诉你Business Objects是SAP收购的一家公司。但这不是大多数人寻找的。
业务对象是业务逻辑模型业务场景的封装。
例如:在采购领域中:有一整套需要执行的活动清单。从支出分析到为产品请求信息再到生成协商期限的合同。因此,在这种特定情况下,像RFI(信息请求)这样的文件可以被视为RFI业务对象的一个实例(它将具有与流程相关的所有逻辑,如验证等)。
SAP系列业务对象与Oracle核心设计模式内的业务对象不同,后者与应用服务层交互...是的,业务对象确实可以与复合实体一起使用,但它具有业务逻辑,可以携带业务状态,一些简单的调整方法,并且它们是业务信息载体,可以交换动态状态并跨越应用程序层或域,但在不同的上下文中,它具有不同的详细指定名称,例如,我们可以说Web服务请求是XML格式的业务对象...它与数据实体不同。