gpt4 book ai didi

design-patterns - 代码重复是否是提取方法的充分理由...?

转载 作者:行者123 更新时间:2023-12-01 05:42:51 24 4
gpt4 key购买 nike

...当提取的方法会受到低内聚的影响(没有形成一个好的抽象并且名称很差)?

例如,您会给以下方法起什么名字?

private void foobar() {
Server.checkAllowedDeviceCount(socketAction._sess.getDeviceID();
socketAction.registerSession();
socketAction._sess.runApplication();
}

这可能与我的另一个问题重复: To DRY or not to DRY? On avoiding code duplication and retaining cohesion - 或者我从更有经验的程序员那里获得一些建议的绝望方式(希望你原谅我)。请检查上面的链接 - 它包含我在这里展示的示例所基于的代码。

最佳答案

我建 code clone detectors .我经常看到多组代码 A B C P Q 被发现为克隆,其中 A B C 在概念上是连贯的,P Q 在概念上是连贯的,但 ABC 和 PQ 无关。克隆检测器(或未受过教育的代码阅读器)将看到与克隆相同的序列。是的,您可以尝试从 A B C P Q 中创建一个糟糕的抽象 FOOBAR,但是从有原则的读者的角度来看,您最好将 A B C inyo 变成一个抽象,然后考虑如何处理 P Q 克隆。

我不知道这是否适用于您的情况,因为您的所有调用都是套接字操作(A B C?),而且我不熟悉您的界面。

关于design-patterns - 代码重复是否是提取方法的充分理由...?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4209459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com