最近我一直在研究领域驱动设计,但是很少看到它被应用在Web应用程序中(或者说我没能够找到),我认为我们现在在Web应用程序中已经有足够复杂的问题需要解决。
我需要一种方法来保持我的模型和业务逻辑清晰且耦合度低,并且与框架/库无关。例如,今天我使用AngularJS,明天我可能会切换到ReactJS。
话虽如此,我正在尝试通过一个简单的示例来学习它。假设我要创建以下功能的报价应用程序:
给定一条报价
- 可以投票 / 反对。
- 可以加星标记。
- 可以由用户创建(进入审核队列)。
- 用户可以通过(Twitter、Facebook等)分享它。
给定一个用户
未登录时:
- 可以查看随机报价。
- 可以投票 / 反对一条报价。
- 可以通过标题或作者搜索报价。
登录后:
- 可以创建报价。
- 可以加星标记。
我感兴趣的是如何在保持UI和业务逻辑清晰分离的同时实现上述要求。
我不是专家,但目前我可以提出这些要求,而这些要求可能会在未来发生变化。