博客:
❝
沉淀、分享、成长,让你和他人有所收获!
❞
大家好,我是技术UP大师付哥。
10月1日国庆假期过后,付哥在星球:码协发布的课程项目中新嵌入了一个小型电商系统。 支持用户产品订购、微信扫码支付、异步信用充值的全流程。 而且这套支付已经上线,而且支付是真实的!
该项目连接支付和开发小电商,将在DDD领域进行分层实施,非常有学习价值。
之前在面试的时候,看到很多合作伙伴写的电商或者外卖项目都提到了支付。 这也增加了面试求职者的兴趣。 但实际面试后,大部分校招简历的付款都是模拟付款,或者根本没有付款。 结果在采访过程中,当被问及支付流程、掉单处理、配送补偿等真实场景时,却无法回答。 所以我开高了,开低了!
针对这种情况,付哥在缩小了电商场景后,想在一个项目中重点关注支付流程的设计和实现。 并且在整个支付的设计中,采用了领域驱动设计的思想来进行设计和实现。 让您拥有丰富的业务流程知识和扎实的解决方案实施。
当我拿出投稿记录的时候,你该怎么回复!
本课程内容非常丰富,包括你可以学习的技术栈内容、简历写作案例、在线操作和监控。
接下来,付哥将重点介绍如何在领域驱动设计下实现产品订单支付。
文章最后还有一个加入项目学习的方法。 加入后可以学习工程代码。 除此之外,还有项目学习、源码学习、简历优化等6项服务!
1.产品支付效果演示
该项目具有前后端+Dev-Ops全栈开发实践,采用DDD架构进行设计和实现,采用设计模式编写干净的代码。 并结合技术和微信支付渠道来设计和实现产品。 非常有学习价值!
1. 产品页面
2. 支付页面
3. 对话页面
4. 监控-热图
通过热力图,可以了解用户的点击偏好。 (欢迎和付哥一起做实际项目,学习工作所需的实用东西!)
接下来,付哥会重点讲一下产品支付相关的整体领域模型和细节设计。也可以让合作伙伴和其他一些项目进行对比,看看这样一个小而美、小而精的项目设计得有多好。
一、项目覆盖范围
星球上的项目和服务功能已经越来越完善。 既能满足校招作为面试项目的需求,又能学习深度拓展的结构。 而且这种DDD架构是已经在互联网公司实践过的架构设计选择,非常容易实现。 支付体验地址:#/商城
2、订单支付如何设计?
在做业务功能开发时,我们首先可以只考虑核心主流程。 所以这一部分的核心功能就是用户选择商品下单,然后生成支付URL,用户扫描二维码进行支付。 收到支付成功回调后,用户购买的订单将会发货【充值】。
这是一个非常核心的主流程。 有了主流程,我们就在思考可能出现的异常流程。 喜欢;
用户订单创建成功,但由于HTTP超时,支付订单创建失败。
当付款被回调时,系统宕机或者自身服务出现问题。
支付成功后,发送MQ消息。 如果消息丢失,用户付费,订单就会丢失。
订单长时间未付款,已逾期。
所以,这些都是可能发生的异常过程。 虽然概率很低,但随着使用规模的增大,概率很低的问题也会产生更大规模的客户投诉。 因此,需要对这些过程进行补偿。
3、DDD工程结构设计
讲完业务流程和DDD领域驱动设计,我们再看一下系统的工程层次结构。 只有有了这个东西,你才能感受到DDD的设计。
4.代码实现设计及细节体现
讨论了业务流程并审查了项目结构。 接下来我们看一下代码在DDD模型结构中是如何体现的。
5. 参与学习
请注意,该项目只是【星球: Club Lock】中众多项目之一。 其他项目包括:API网关、抽奖、IM通讯、组件开发、IDEA插件开发等,以及开源项目学习。
如果你想通过做有价值的编程项目来提高你的编程思维和编码能力,你可以加入福哥的【星球:程序员俱乐部】。 加入后,所有过去的项目都将被解锁,你还可以了解未来开发的新项目。