问题标签 [cake-pattern]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - scala 的蛋糕模式是否可以使用参数化组件?
只要您只对每个类型化组件的唯一组件感兴趣,参数化组件就可以很好地与蛋糕模式配合使用,例如:
现在我的应用程序需要我注入一个 A[Int] 和一个 A[String],显然 scala 的类型系统不允许我扩展 AComponent 两次。这种情况下的常见做法是什么?
scala - 将 Compagnons 与 Play2 一起使用时在 Scala 中进行集成测试?-> 蛋糕图案?
我正在开发我的第一个 Scala 应用程序,我们使用 ActiveRecord 样式从 MongoDB 检索数据。
我有像 User 和 Category 这样的模型,它们都有一个使用该特征的伴随对象:
ModelCompanion 是一个 Salat 类,它提供了常见的 MongoDB crud 操作。这允许像这样检索数据:
我从来没有使用过这种 ActiveRecord 查询样式。但我知道 Rails 的人正在使用它。我想我在 Play 文档(1.2 版?)上看到了它来处理 JPA。
现在它工作正常,但我希望能够在我的 MongoDB 上运行集成测试。我可以运行带有库的“嵌入式”MongoDB。最重要的是我的主机/端口配置实际上是在MongoModel
类上硬编码的,该类由所有模型伙伴扩展。
我希望能够在运行集成测试(或我将来可以创建的任何其他“配置文件”)时指定不同的主机/端口。
我非常了解依赖注入,在 Java 中使用 Spring 多年,以及我的应用程序中所有这些静态内容的缺点。我看到现在有一种对 Scala 友好的方式来配置 Spring 应用程序,但我不确定在 Scala 中使用 Spring 是否合适。
我已经阅读了一些关于 Cake 模式的东西,它似乎可以做我想做的事,是某种类型安全的、经过编译时检查的 spring 上下文。我一定要使用 Cake 模式,还是 Scala 中还有其他优雅的替代方案?我可以继续使用 ActiveRecord 样式,还是它是可测试性的完全反模式?
谢谢
scala - 仅替换全局蛋糕模式应用程序上的存储库
我第一次尝试使用蛋糕图案。
我有点理解它是如何工作的,但想知道是否可以混合已经混合的特征或类似的东西。
我想要的是用蛋糕模式构建一个全球应用程序。而且我想要该应用程序的另一个版本,除了存储库级别之外,它是相同的。
是否可以执行以下操作:
我的意思是:在使用假存储库构建假应用程序时重用已经构建的应用程序?
java - Java8 的蛋糕模式可能吗?
我只是想知道:使用 Java 8,以及在接口中添加实现的可能性(有点像 Scala 特征),是否可以像在 Scala 中那样实现蛋糕模式?
如果是,有人可以提供代码片段吗?
scala - 蛋糕模式:每个实现一个组件,还是每个特征一个组件?
我目前正在我的应用程序中使用蛋糕图案。
在我在网上找到的示例中,这些示例是基本的,但不涉及更复杂的需求。我想做的不是那么花哨:我想在一个蛋糕模式应用程序中拥有两个相同类型的服务,使用不同的实现。
如果我一次使用一个实现,它工作得很好UserService
,但是如果我同时需要两个实现,我真的不知道该怎么做。
我应该创建 2 个不同的组件吗?每一个都暴露一个不同的 userService 值名称?(默认用户服务/替代用户服务)。对两种实现都使用一个组件我不知道其他组件在使用该名称时如何知道使用了哪个实现,userService
因为我的应用程序中有 2 个不同的实现。
顺便说一句,由于组件表达了对 的依赖UserRepositoryComponent
,虽然并非所有实现都需要它,但我觉得只有一个组件有点奇怪,对吧?想象一下,我不想构建需要这两种实现的完整应用程序,但是对于测试,我需要只构建不需要的 AlternativeUserService ,UserRepositoryComponent
必须提供这种依赖关系会很奇怪,因为它不会用过的。
有人可以给我一些建议,以便我知道该怎么做吗?
相关问题的种类: 蛋糕模式:如何获取组件提供的所有 UserService 类型的对象
谢谢
scala - 蛋糕模式:如何获取组件提供的所有UserService类型的对象
这个问题可以帮助您了解我的需求。 蛋糕模式:每个实现一个组件,还是每个特征一个组件?
我有一个使用多个 UserService 实现的 Scala 应用程序,这些实现将由组件提供?
我想知道另一个组件中是否有一种方法可以“扫描”应用程序,以便我可以检索一组提供实现特征 UserService 的对象的所有组件?这样我就可以遍历我的蛋糕构建应用程序提供的所有 UserService 接口?
我想我可以有一个组件根据它的依赖关系构建一个 UserService 列表,但是是否可以让这个组件在没有任何硬编码依赖关系的情况下构建列表?
scala - Cake Pattern:如何共享一个实例?
我的 Scala 项目中有一个配置组件。
显然我不想拥有这个组件的多个实例。我正在使用蛋糕图案,但我不确定如何调整它以满足我的要求:
印刷:
如何让蛋糕模式共享匿名实例Config
?
scala - 迁移到 Play 2.1 后编译路由时出现问题
迁移到 Play-2.1 后,我遇到了路由编译器停止为我的路由文件工作的问题。Play-2.0.4 完全没问题,但现在我遇到了构建错误,找不到任何解决方法。
在我的项目中,我使用的是蛋糕模式,因此控制器操作不是通过 可见<package>.<controller class>.<action>
,而是通过<package>.<component registry>.<controller instance>.<action>
. 新的播放路由编译器正在使用除最后两个之外的所有操作路径组件来形成将在托管源中使用的包名称(据我所知,我可以在https://github.com/playframework/Play20/blob/2.1 .0/framework/src/routes-compiler/src/main/scala/play/router/RoutesCompiler.scala)。在我的情况下,它会导致<package>.<component registry>
选择作为包名称的情况,这会在构建过程中导致错误:
我制作了示例项目来演示这个问题:https ://github.com/rmihael/play-2.1-routes-problem
是否有可能以某种方式解决此问题而无需为控制器删除蛋糕模式?遗憾的是,由于这个问题,我无法继续使用 Play 2.1。
scala - Scala - 蛋糕模式 + 类型类 + 需要构造函数参数的实现
这是我尽可能多地提炼出来的一些代码: