问题标签 [design-patterns]

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.

0 投票
3 回答
29058 浏览

asp.net-mvc - 使用存储库/服务模式和 MVC 时缓存数据对象

我有一个基于 MVC 的站点,它使用存储库/服务模式进行数据访问。服务被编写用于大多数应用程序(控制台、winform 和 Web)。目前,控制器直接与服务通信。这限制了应用适当缓存的能力。

我看到我的选择如下:

  • 为 Web 应用程序编写一个包装器,它实现了执行缓存的 IWhatEverService。
  • 通过缓存每个 Action 的 ViewData 在每个控制器中应用缓存。
  • 不用担心数据缓存,只需为每个 Action 实现 OutputCaching。

我可以看到每个的优点和缺点。使用 Repository/Service 进行缓存的最佳实践是/应该是什么

0 投票
5 回答
760 浏览

database - 可测试性的最佳数据库访问模式是什么?

我已经阅读并涉足了一些内容,包括活动记录、存储库、数据传输对象。哪个最好?

0 投票
14 回答
31014 浏览

objective-c - Objective-C 使用对象切换?

我正在做一些涉及解析 NSXmlDocument 并从结果中填充对象属性的 Objective-C 编程。

第一个版本看起来像这样:

但我不喜欢if-else-if-else这种产生的模式。查看switch语句,我发现我只能处理ints, charsetc 而不能处理对象......所以有没有更好的实现模式我不知道?

顺便说一句,我确实想出了一个更好的解决方案来设置对象的属性,但我想具体了解Objective-C 中ifelse-vs模式switch

0 投票
13 回答
50036 浏览

c# - 命令模式:如何将参数传递给命令?

我的问题与命令模式有关,我们有以下抽象(C# 代码):

让我们使用一个简单的具体命令,该命令旨在从我们的应用程序中删除一个实体。以一个Person实例为例。

我会有一个DeletePersonCommand,它实现ICommand. 该命令需要Person删除作为参数,以便在Execute调用方法时将其删除。

管理参数化命令的最佳方法是什么?如何在执行命令之前将参数传递给命令?

0 投票
10 回答
2297 浏览

design-patterns - 你遇到过的最有趣的设计模式是什么?

我们大多数人已经使用过MVCstrategy等休闲模式。

但是对于不寻常的问题,肯定有一些不寻常的解决方案,我很想听听。

0 投票
3 回答
17985 浏览

design-patterns - 什么是表驱动方法?

什么是“表驱动方法”?

正如比尔盖茨在第二个 Windows Vista 广告中 1:05 所述。

0 投票
8 回答
35589 浏览

database - 星型设计

Star-Schema 设计对数据仓库来说是必不可少的吗?或者你能用另一种设计模式做数据仓库吗?

0 投票
4 回答
563 浏览

design-patterns - Never do anything until you ready to use it, in software too? [Toyota principle]

I was listening to a podcast. Where they talked about principles Toyota was using:

Never do anything until you are ready to use it.

I think this tells us to look in other places, to learn what other practices have been known for years.

0 投票
4 回答
431 浏览

design-patterns - 永远不要生产到未知的途径,在软件中也是如此?【丰田原理】

在丰田生产线中,他们总是知道零件经过了什么路径。这样他们就可以确定他们可以解决问题。这也适用于软件吗?

所有错误消息都应该准确地告诉我他们走过的路径。有些会,带有堆栈跟踪的错误消息。这是一个正确的解释吗?它可以在其他地方使用吗?

好的,这是播客。我觉得很有趣

http://itc.conversationsnetwork.org/shows/detail3798.html

0 投票
10 回答
7945 浏览

sql - 零 SQL 死锁设计 - 任何编码模式?

我在运行在 MS SQL Server 2005 之上的 .NET 2.0 webapp 上遇到了非常罕见但令人讨厌的 SQL 死锁。过去,我们一直以非常经验的方式处理 SQL 死锁 - 基本上是调整查询直到它工作。

然而,我发现这种方法非常不令人满意:耗时且不可靠。我非常希望遵循确定性查询模式,这些模式将通过设计确保不会遇到 SQL 死锁 - 永远。

例如,在 C# 多线程编程中,一个简单的设计规则(如锁)必须按照其字典顺序来确保不会发生死锁。

是否有任何 SQL 编码模式可以保证是防死锁的?