问题标签 [code-duplication]

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 投票
4 回答
995 浏览

sql - 删除多余的 SQL 代码

代码

以下代码针对大量数据计算线性回归的斜率和截距。然后,它将方程应用于y = mx + b相同的结果集,以计算每一行的回归线的值。

如何连接这两个查询,以便在不执行该WHERE子句两次的情况下计算数据及其斜率/截距?

问题的一般形式是:

我已经SOME_CONDITION执行了两次。如下所示(通过STRAIGHT_JOIN优化更新):

问题

如何每次查询只执行一次重复位,而不是两次?重复代码:

更新 1

使用变量和拆分查询似乎允许缓存启动,因为它现在在 3.5 秒内运行,而它曾经在 7 秒内运行。不过,如果有任何方法可以删除重复的代码,我将不胜感激帮助。

更新 2

上面的代码不能在 JasperReports 中运行,而 VIEW 虽然是一种可能的修复方法,但可能效率极低(因为 WHERE 子句是参数化的)。

更新 3

使用 Unreason 建议的勾股公式与收敛子午线验证距离:

(这与问题无关,但其他人是否想知道......)

更新 4

如图所示,代码在 JasperReports 中运行,针对 MySQL 数据库运行。JasperReports 不允许变量或多个查询。

更新 5

我正在寻找一个干净执行的解决方案。;-) 我写了一些部分工作的解决方案,但遗憾的是,MySQL 不理解部分正确。请参阅与 Unreason 的讨论,以获得几乎可行的答案。

更新 6

我也许可以重用第一个子句中的变量WHERE并将它们与第二个子句进行比较(从而消除一些重复——对$P{}值的检查),但我真的很希望消除重复。

更新 7

比较YEAR子句,如先前更新中假设的那样,以消除重复BETWEEN,不起作用。

有关的

如何消除 SQL 中的重复计算?

谢谢!

0 投票
3 回答
1046 浏览

python - 对矩阵的行和列进行操作会产生代码重复

我有以下(Python)代码来检查是否有任何行或列包含相同的值:

显然,这里有很多代码重复。如何重构此代码?

谢谢!

0 投票
1 回答
289 浏览

refactoring - BDD / TDD 与 JSpec - 删除代码重复

如何重构以删除此规范中的代码重复:

0 投票
5 回答
362 浏览

c# - 如何清理此代码以消除重复?

我有以下代码有一些重复

还有一些类似的模式。重构它以避免重复的最佳方法是什么

0 投票
2 回答
810 浏览

c# - 许多 WebReferences 使用相同的类

我有一个 C# 项目,其中有许多对第三方产品的 Web 引用。所有这些 Web 服务调用都使用“用户上下文”类。因此,每个 Web 服务都接受完全相同的 XML 片段。

目前,当我点击所有不同的 Web 服务调用时,我必须保留许多这些“用户上下文”对象。生成的“用户上下文”类完全相同,只是放在不同的 .NET 命名空间中(XML 命名空间相同)。

我希望能够只传递这些实例中的一个。我怎么能那样做?

我正在使用 Visual Studio 2010 并通过添加 WebReference 来使用生成的类。我不反对使用其他一些框架或机制。我什至考虑过编写自己的代码,但是我需要使用许多 Web 服务(每个都有许多 Web 方法)。

更新:我最初是通过添加 Web 引用来添加这些的,现在我将它们添加为服务引用。Web 服务本身通过 InterSystems Caché 公开,我还没有研究它们与 WS-I 的符合程度。

0 投票
3 回答
2757 浏览

actionscript-3 - Flash,ActionScript 3:使用 get/set 属性从其他类中获取值会创建很多重复代码,它可以不同吗?`

我在我的 as3 代码中使用 get 和 setter 来编辑另一个类的值(因为这些变量是共享的)我不喜欢每次都在我的代码中放入 stage.sharedVar.isScrabble 来更改变量,所以我使用了 get/set 函数

见下文

正如您所看到的,每次“return stage.sharedVar”时它都有很多重复的代码。并且“stage.sharedVar.”+值+“= val”不断返回。

我想知道是否有其他方法可以创建这些获取/设置?就像是?:

等等??

谢谢,马蒂

0 投票
2 回答
130 浏览

dll - 如何决定何时实现 DLL?

您在什么时候决定将您的一些子例程和公共代码放在类库或 DLL 中?在我的一个应用程序中,我想在不同的项目之间共享一些我的通用代码(众所周知,重复代码是一种编程罪恶)。

我的绝大多数代码都在一个项目中。我还有一个小型实用程序,它与主要可执行文件分区,该可执行文件以提升的权限运行,仅用于一个目的。这两项最多有三个共同的子程序。是否应该从类库中放置和调用这些公共子例程?您如何决定何时执行此操作?当您至少有一个共享子程序时?二十多行代码?

我不认为这应该是特定于语言或依赖于框架的,但如果是这样,我正在使用 .NET 框架。

0 投票
4 回答
234 浏览

language-agnostic - 本例中如何减少代码重复

我需要循环一个数字(xx)。xx 总是从零开始。我的问题是,如果moveDirection变量为 +1,那么 xx 会增加,直到达到 的正数range。如果moveDirection为 -1,则 xx 减小直到达到 的负数range

在下面的代码中,我首先通过 if 语句测试 moveDirection 来做到这一点,然后我复制了 for 循环,并编辑了每种情况的值。我的代码恰好在 ActionScript3 中,但语言无关紧要。

有没有更好的方法可以做到这一点,也许不需要复制 for 循环?如果有任何其他建议,将不胜感激。

0 投票
2 回答
1312 浏览

jsf - 如何避免与 JSF 和 JPA 的模型代码重复

我是 JSF 的新手,想知道我是否做对了。假设我有一个简单的 CMS,可以编写页面。

首先,我定义了一个名为 Page 的 JPA 实体:

然后我想在视图中创建Page-s。为此,看起来我需要某种页面 bean。现在我处理了这样的事情:

我的问题是以下一个:鉴于我的 JPA 实体模型和我想在视图中使用的模型大部分时间完全相同,有没有办法避免必须在页面豆?

我在某处读到你不应该使用与 JPA 实体和 JSF 模型 bean 相同的 bean(因为 JSF 会重复调用可能影响 JPA 的 getter),但我想知道是否没有更简单的方法可以帮助避免这种代码重复。尤其是当您的应用程序具有大型模型并且在许多情况下不需要视图 bean 中的任何特殊内容时,看起来这会变得非常麻烦。

0 投票
1 回答
83 浏览

postgresql - 如何解决以下 PostgreSQL 查询中的代码重复问题?

我有一个表输入和一个派生表参数

以下查询检查参数是否已更改或尚不存在,并插入具有新值的参数。

我应该如何最好地解决 2 MyParameter 子查询的重复?

有关清理此类查询的任何其他提示