在Node应用程序中使用Mongoose数据层的最佳实践

6

使用nodejs/express和mongoose探索nodejs服务器堆栈

什么是最佳实践解决方案?
(1)创建一个mongoose数据模型模块,然后使用模型对象
(2)创建一个包装器数据层模块,该模块将在内部使用mongoose模型

(1)的优点
我非常喜欢mongoose给我的面向对象类风格,可以添加自己的方法、自己的setter和getter,我可以添加验证和事件处理程序,并且无需在另一个模块中重新定义DataModel就可以使用它。

(2)的优点
我应该能够用更简单的实现(测试等)模拟数据层,或者在需要时切换数据库。

你怎么看?


1
谢谢您的提问,我觉得关于如何在玩具演示之外使用Mongoose的讨论很少。 - Paul
1个回答

3
我通常从最容易和最简单的选项开始,只有在真正需要更复杂的选项时才转向更复杂的选项。所以在这种情况下,我总是从Option 1开始,迄今为止还没有遇到过我希望从Option 2开始的情况。如果我真的需要更改数据库,我会立即进行工作,而不是为可能永远不需要的事情做更多的前期工作。
请记住,这取决于项目的规模和参与人数。如果是一个小团队(或只有你),通常不需要额外的抽象层。如果是一个大型项目和大型团队,我会花更长时间找出长期可维护性的最佳架构。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接