【发布时间】:2013-02-09 09:56:37
【问题描述】:
从表面上看,这听起来像是一个愚蠢的问题,但为什么 Hot Towel SPA Template 包含 Breeze 呢?
过去几天我一直在学习 Hot Towel 及其依赖项,据我所知,模板中没有任何内容实际使用 Breeze。也许未来的版本会改变这种情况?
当然,Breeze 是一个很好的库。但它受 CRUD 方法的约束,需要您以特定的方式设计 ApiController。 (元数据、SaveChanges 等)see here
它还引导您使用实体框架。虽然这更像是一种软依赖,但由于 Breeze 还显示了 a sample without it,它仍然会引导您使用修改后的存储库模式实现类似的模式。
如果您使用的是 NoSQL 数据存储或 CQRS 模式而不是 CRUD,那么 Breeze 将变得非常难以使用。有一些用于数据访问的替代库在这种风格下运行良好,例如 AmplifyJS。
但是热毛巾的其余部分都很棒!我特别喜欢杜兰达尔。那么问题来了,如果模板实际上没有进行任何数据访问——为什么要包含任何数据访问组件呢?最好在没有 Breeze 的情况下发布它,如果最终用户想要使用 Breeze、Amplify 或其他任何东西 - 那就这样吧。 Hot Towel 的其余部分将继续作为出色的 SPA 实施而大放异彩。
【问题讨论】: