0

我目前正在用自己的一分钱重建客户的小型移动页面,作为学习 MVC 和 AngularJS 的一种方式,并为另一个客户的更大项目做准备。我正在学习的页面是皮塔餐厅的单页在线订购应用程序。它允许您从皮塔饼列表中进行选择,然后第二个视图允许您使用各种蔬菜、奶酪、酱汁等定制您的皮塔饼,然后是第三个视图,该表单允许您提交订单。

我的问题是关于模型的。我已经构建了一个系统,该系统从菜单项(皮塔和浇头)的数据库中获取输出并生成一个 JSON 文件模型,供 Angular 解析和显示给用户,但我很好奇用户的选择将在哪里被存储。

我是专门为用户的选择创建另一个模型,还是修改原始模型以在原始数据之外保存用户的选择?

4

1 回答 1

2

这是一个有点复杂的问题,因为有很多变量。我只是要布局我将如何处理决定:

修改传递给客户端的现有模型意味着一些事情。

首先,这意味着我不会有另一个模型要处理,但模型并不专注于一件事(违反 SRP)。它指定了我的域中的模型以及它与另一件事的关系,即订单。这导致对象处于奇怪的状态,因为它在不同的时间/情况下代表不同的事物。

其次,我将对可能与订单相关的所有模型执行此操作。将上述问题相乘。

创建一个新模型来表示订单意味着要处理另一个模型(创建一个 API/服务来管理它)。好的一面是我将能够专注于一件事:跟踪订单。这意味着我的其他模型不必更改,并且我始终知道对象真正代表什么。

我显然倾向于创建一个新模型,因为它是可扩展的/灵活的并且更易于理解/支持。

这与 Ng 或 MVC 或 JSON 没有太大关系。它更多地与创建模型以最准确和清晰地代表您的领域有关。

可能还有其他考虑因素以及具体细节。通过评论让我知道。

于 2013-10-13T06:26:04.633 回答