当前位置 »威客网 » 新闻中心 »使用面向对象的提取业务算法

使用面向对象的提取业务算法

2017年12月5日来源:bd5029685ef27cfa2be3e91ccdf9a34f威客网小分类:[$-小分类-$]

新闻摘要:这并不是说接口只能有一个方法,实际上,有些方法是成对的,甚至是几对。 如果您发现两个接口组合在一起只是为了表示一个完整的东西,那么您可以将两个接口合并为一个接口
描述

我们已经提取了域中的名词,并确定了业务流程中涉及的核心对象。
但对象只是静态描述,总有很多业务操作,部分算法,我们之前讲过
域中的对象往往比较稳定,但业务流程和业务操作通常是相同的
我们如何及时发现这些系统的变化,以及如何使用它们
抽象的方法,封装它?
以下是我们伟大的上帝的一些个人经历。

目的

关注系统中的变化点或业务流程中的节点的变量算法,
提供系统的可维护性和可扩展性。

一步

首先,步骤,然后是一些场景,尝试理解步骤。

找到改变的意义

这是第一步,也是关键的一步,如果你甚至不能找到系统中的变化点,下面的工作就是这样
没有办法谈论它,所以我们要仔细观察这些公司在这个阶段的变化,
一般来说,我们可以从产品的原型中发现:
关注与描述不同的场景,做同样的事情。

去限定符

在没有限定符的情况下,查找出场景或算法的每一个时间和域名词和动词。
最简单的方法是删除场景中重复出现的域名,然后离开动词。

提取的动词

根据前面的步骤,我们需要抽象出场景中的动词,并以统一的方式概括它们。

提取接口

此操作作为一个接口显示,以确定接口中的方法及其输入和输出。
坦率地说,您定义函数的名称、参数和返回值。
通常,如果您输入一个在抽象中每次出现的名词,输出就是这个抽象需要的。

聚合接口

这并不是说接口只能有一个方法,实际上,有些方法是成对的,甚至是几对。
如果您发现两个接口组合在一起只是为了表示一个完整的东西,那么您可以将两个接口合并为一个接口。

实例分析

场景描述

它为用户提供了很多网站上的服务,例如:http://www.uxuexi.com
你可以买一段视频观看,
你也可以打包视频观看,
您可以购买打标服务,并要求老师为用户审阅测试报告
你也可以购买课程的服务,让老师上门或在线辅导
这个业务场景是一个可变性的点,因为平台可以向用户添加任何具有服务性质的东西来购买。
商品的概念可以在这里画出来,但用户实际购买产品,无论是视频,卷轴服务,辅导服务是商品。
让我们这样做。

限制:

购买xx产品以获得xx产品的服务

提取的动词:

购买、服务

提取接口:

IBuy
接口中的方法:
方法名称:goToBuy
参数:大宗商品
执行:完成购买
回报:一个空
IService
方法名称:供应
参数:大宗商品
执行:商品提供的服务
回报:一个空

结合界面

我们会发现,当我们需要添加单个产品时,我们需要实现这两个接口,这是我们可以做到的
要将两个接口提取到接口中,这是聚合接口。

支付是电子商务网站的一个重要环节,通常有以下要求:
用户可以使用支付宝完成订单支付
用户可以使用微信完成订单支付
用户可以使用银行卡完成订单支付

找到改变的意义

这个场景的重点是用户可以通过多种方式完成支付。

去限定符

使用xx完成订单支付

提取的动词

这个场景强调支付,所以动词应该是:付钱
然而,我们知道每笔付款都要求我们提供一个付款完成的回调支付平台,以通知付款结果,
所以增加一个行动:支付

提取接口

接口中的方法:
方法名称:goToPay
参数:订单
执行:完成购买
回报:一个空
方法名称:完成
参数:订单
执行:完成购买
回报:一个空


当我在做一个优秀的学习网站时,有这样一个场景,每一个视频都需要播放,
也就是说,当用户点击一个视频时,背景决定他是否能访问视图。