问题标签 [facade]
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.
jdbc - 在 EJB3 无状态 bean 中执行 JDBC 查询
我正在为我的服务EJB3无状态 bean 使用以下模式。基本上,每个数据库表都通过一个DAO / 外观类型类(本身也是一个无状态EJB3 bean)公开。
然后将我假设的 AService bean 注入它需要使用的各种数据库表的外观。但是,外观中没有提供某些更复杂的逻辑或逻辑(它们专门用于一个表上的 CRUD 类型的操作)。出于这个原因,我还直接注入了DataSource,这样我就可以将JDBC用于更复杂的查询。
在我的方法中是否有任何明显或微妙的反模式/警告?
jsf - 来自表单的 JSF 简单实体持久性
我认为这个问题很简单,我得到了错误:
当我尝试使用只有实体类的应用程序创建新用户时:
数据访问对象:
门面:
用户管理的 Bean:
最后从 JSF 页面我调用这样的方法:
我的错误在哪里?
java - 立面模式的优缺点
嗨,我正在阅读关于外观模式的“应用 Java 模式”一书
我试图找出它的优点和缺点,它说......
“Facade 模式的好处是它为复杂系统提供了一个简单的接口,而不会减少整个系统提供的选项。这个接口可以保护客户端免受过多选项的影响。
Facade 将客户端请求转换为可以满足这些请求的子系统。大多数时候,一个请求将被委托给多个子系统。因为客户端只与Facade交互,所以系统内部的工作可以改变,而Facade的客户端可以保持不变。
Facade 促进了客户端和子系统之间的低耦合。它也可以用来减少子系统之间的耦合。每个子系统都可以有自己的 Facade,系统的其他部分使用 Facade 与子系统通信。”
客户端和子系统之间的低耦合不好???谢谢
design-patterns - 设计模式 - 立面
我被要求为在线商务系统(Amazon、Play.com 等)制作一个基本的设计模式,我选择专注于外观模式,因为我觉得这种模式主要用于整个系统。这是我到目前为止所拥有的:
系统操作:
订购产品
库存/可用性(检查产品的库存)
身份验证(检查用户是否已登录/注册)
发货(发送产品名称/客户详细信息以发货)
建议的“外观模式”将由用户工作,只需要查看/了解 order_product 功能,因此其他组件会从这一操作中“触发”。
我的问题是,对于这种类型的系统,这是一个好的和正确的设计模式吗?此外,操作,任何其他人都可以想到购买产品可能需要的任何其他操作 - 这就是我所能想到的。
希望有人可以提供帮助:)
c# - 许多函数采用相同的参数?
如果问题有点不清楚,我很抱歉。请随时清理/概括这个问题。我英语不够好,不能自己做
我需要使用 Web 服务 Web 服务的所有方法都将身份验证对象作为第一个参数
有数百种方法。
我想创建一个提供所有方法的提供程序类现在我可以创建一个名为提供程序的类并为每个方法编写
对于所有数百种方法,我都需要这种模式。
有没有一种技术可以创建这样一个外观对象,而无需实际编写 100 个具有相同功能的函数?(只有第一个参数相同)其他可能不同
jakarta-ee - Service facades, detached entities and eager fetching
Service facades are usually implemented as stateless session beans, which means that any entities they possibly return will be detached immediately. This makes me think that any entity returned as a result of a service facade business method should eagerly fetch all of its internals, as in the absence of eager fetching, its internals cannot be accessed by service clients. I want to know whether I'm right on this and whether there is possibly any other way which may be more appropriate in certain circumstances.
Thank you
c# - 立面设计模式
最近我一直在尝试遵循 TDD 方法,这会产生很多子类,以便可以轻松地模拟依赖项等。
例如,我可以说 aRecurringProfile
它又具有可以应用于它的方法/操作,例如MarkAsCancel
、RenewProfile
、MarkAsExpired
等。由于 TDD,这些被实现为“小”类,例如MarkAsCancelService
等。
为可以在 a 上执行的各种方法/操作创建一个“外观”(单例)是否有意义RecurringProfile
,例如具有一个 class RecurringProfileFacade
。这将包含方法,这些方法将代码委托给实际的子类,例如:
请注意,上面的代码不是实际代码,实际代码将使用构造函数注入的依赖项。这背后的想法是,此类代码的使用者不需要知道他们需要调用哪些类/子类的内部细节,而只需访问相应的“外观”。
首先,这是“外观”模式,还是其他形式的设计模式?
如果上述内容有意义,那么接下来的另一个问题是——考虑到它们没有任何特定的业务逻辑功能,你会对这些方法进行单元测试吗?
java - 在类似 API 的 Facade 上下文中允许使用的 instanceof
我们这些在教堂/清真寺/犹太教堂/等处做礼拜的人。面向对象的设计经常在instanceof
. 我的问题是它是否是允许的,此外,在给定的上下文中更可取的是,您希望让另一个开发人员能够将预期类型的可变参数混合传递给一个入口点函数(foo
),以使他们的代码更简洁/更简单(又名正面):
是的,这可以说有点笨拙,但是假设除了被视为对象之外,三种类型(整数、字符串、MyCustomType)之间没有多态性,与instanceof
为每种预期类型编写辅助包装器对象相比,使用起来不是更容易:
就 OO 而言,这是更好的设计,但您是否应该始终使用包装器方法?
或者这种方法在效率或内存方面甚至可能存在缺点?并且看到使用instanceof
仅限于调用Facade隐藏的一些方法,你甚至可以推荐这种风格吗?毕竟,在这种情况下,包装类的重用范围是有限的,因为它们具有纯粹的父类范围。
在这种特定情况下,这两种方法的优缺点是什么?
c++ - 我可以使用 std::vector 作为预分配(原始)数组的外观吗?
我从 DirectX 获取了一个存储我的顶点信息的内存位置。处理顶点信息的一种极其方便的方法是使用包含顶点信息的结构的 std::vector<>。
鉴于我有一个指向大缓冲区的指针,我可以使用 std::vector 来管理缓冲区中的元素吗?构造一个 std::vector 经常会导致它有自己的地址,这不是我真正想要的。我可以以某种方式使用运算符放置新吗?
c - 是否可以在运行时交换 C 函数实现?
我已经实现了一个在下面使用 C 函数的外观模式,我想对其进行正确测试。
我真的无法控制这些 C 函数。它们在标头中实现。现在我#ifdef 在生产中使用真实的标头,在测试中使用我的模拟标头。C中有没有办法通过覆盖C函数地址或其他方式在运行时交换C函数?我想摆脱代码中的#ifdef。