尝试运用ddd(domain driven design)来描绘支付宝转账功能背后的领域模型。
首先看下目前支付宝的转账功能。它支持的转账方式有多种,比如支付宝账户转支付宝账户号,支付宝账户转银行卡账户,银行卡账户转支付宝账户,而支付宝账户转出可以是余额宝,或者是余额账号。
然后分析上述的功能,可以发现显性名词有账户(Account),动词有转账(Transfer),而一个转账操作涉及转出账户金额的扣减(Decution),以及转入账户金额的增加(Increment),这两个操作是属于账户上的。而前面的转账操作涉及多个对象,所以将它归于Service里。
网友评论