cost 104 ms
类图中的内聚原则(在线商店) - Cohesion principle in a class diagram (online shop)

我想知道根据内聚原则,以下两个版本中哪个版本“更正确”。 版本 #1:我的主要想法是回答这个问题(客户可以/做什么?) 版本 #2:在这里,我在考虑与订单相关的方法,例如(查看订单、取消订单...)也应该在类订单中定义。 ...

如何区分以下哪些架构具有较低的耦合? - How to distinguish which following archetecture have lower coupling?

我读过很多关于耦合的文章,无一例外地从高角度看待它。 他们很少用真实的项目来详细说明它。 所以,我遇到了一个具体的问题: 简化的 model 如下: 架构 1 上下文依赖于 m1、m2、m3 和 m4,并且只有一个依赖项。 架构 2 上下文依赖于 al1 和 al2,而 al1 和 al2 分别依 ...

使用 Enum 存储常量并在多个类中使用这些常量 - Using Enum to store constants and use those constants in multiple classes

我目前正在编写解决旅行商问题的遗传算法。 我在多个地方使用了一些“常量”。 但是,这些值需要预先计算,因此,我无法将它们存储到私有静态最终变量中。 因此,我决定使用枚举。 我的问题是,您认为这是一个好方法吗? 我不确定这是否会降低使用枚举的每个类的凝聚力。 提前致谢。 ...

C# 属性和标准类结构度量 - C# Properties and standard class structural metrics

我试图了解如何根据 C# 属性计算基本类结构指标,例如 ATFD(访问外部数据)和 LCOM(方法中缺乏内聚力)。 如果一个方法访问另一个类的单个属性,是否意味着该方法的 ATFD 分数为 1? 这是否会根据是否有支持私有字段而改变? 对于 LCOM,在遵循 NDepend 制定的公式(例如ht ...

如何将高内聚 model 分成不同的类 - How to break a high cohesive model into different classes

我有一个容器,里面有 8 个继电器。 现在我想让客户端打开/关闭不同的继电器。 到目前为止,一切都很好。 一种解决方案可能是: 1表示relais 1,true表示尝试开启; false 意味着尝试将其关闭。 如果我要添加更多与继电器本身相关的方法(改变颜色、自毁或其他一些创造性的东西^^),而 ...

为什么不建议或不可能创建最大内聚类? - Why are maximally cohesive classes not advisable or possible to create?

我正在学习罗伯特 C 的书。 Martin "Clean Code" (2009) 和我偶然发现了凝聚力的概念(第 10 章)。 罗伯特引用: 一个 class 中每个变量都被每个方法使用是最大内聚的。 一般来说,创建这种具有最大凝聚力的类既不可取,也不可能…… 不幸的是,我在任何地方都没有找到 ...

什么时候提高程序内聚力会恶化耦合? - When does improving program cohesion worsen coupling?

我最近参加了一个设计原则&模式的考试,考试中的一个问题是:“有时提高程序的内聚性可能会恶化耦合,举个例子。” 据我了解,凝聚力是一个类/模块如何专注于解决它被创建来解决的问题,或者更好的是,它在完成工作方面有多好。 它能做不应该做的工作吗? 然后将该部分移动到不同的类/模块。 耦合是许多 ...

这被认为是低耦合和高内聚性吗? 有机会改善吗? - Is this considered low coupling & high cohesion? Any chance to improve?

我试图掌握Robert C. Martin的SOLID原则。 目前,我正在研究低耦合和高内聚性。 我创建了一些代码,这些代码代表了我对该主题的当前理解。 你们能告诉我是否在正确的轨道上吗? 有机会改进当前设计吗? 主应用程序,它将创建两个地址并将其分配给员工: 员工类别: ...

高内聚和松耦合的优化 - optimization of high cohesion and loose coupling

我在一次关于项目凝聚力和耦合的技术访谈中受到了质疑。 我广泛地解释了他们的定义,尽管我没有正确回答问题的第二部分,正如他所说的那样。 “我们怎样才能在项目中同时实现高度内聚和松散耦合的设计,请解释如何在单一项目中实现这种方法?” 我回答说这两个目标是矛盾的,所以我们需要找出每个项目 ...

辅助/存储类的低内聚,真的错了吗? - Low cohesion in helper/storage classes, is that really wrong?

有这样的类,有两个实例变量的两个getter: 该课程将被归类为完全缺乏凝聚力。 但是,我相信在某些情况下需要这样的无状态对象,因此不应该应用内聚度量。 或者这是一种错误的方法/思考? 事实是,除了本材料末尾提到的一些案例外,我从未读过关于低凝聚力的好消息: http : //ww ...

我对耦合的含义正确吗? - ¿Am I right about the meaning of coupling?

我将尝试写一些有关软件耦合和内聚的想法,但是我不确定它们是否意味着任何实际意义。 因此,如果您想用示例来解释您的答案,请使用简单的代数表达式,假设代数是一种顺序编程语言,这样我们大家都可以理解您在说什么。 在Wikipedia中阅读有关它的信息 所以这是我想相信的(这是正确的吗?) ...

内聚和耦合-如何确定阈值? - Cohesion and Coupling - How does one determine the threshold?

目前,我将进一步介绍Java类,这是该类简要定义的方式: 内聚力:争取高内聚力,在这种情况下,内聚力是指单个模块紧密地专注于其任务。 耦合:旨在实现低耦合,在这种情况下,耦合意味着两个或多个模块相互缠绕的程度。 如何确定凝聚力和耦合程度? 例如,我的某些方法调用了同一类中 ...

软件设计架构中的程序内聚和顺序内聚有什么区别? - What is difference between procedural cohesion and sequential cohesion in Software Design Architecture?

程序内聚说模块的部分被分组是因为它们总是遵循一定的执行顺序,顺序内聚说模块的部分被分组是因为一个部分的输出是另一个部分的输入,如装配线。 这些定义是模棱两可的。 请解释。 ...

从XML类诊断计算耦合和内聚度量 - calculating coupling and cohesion metrics from XML class diagrm

我正在尝试创建一个项目,以使用粒子群优化为类责任分配问题提供决策支持。 考虑各种参数(如耦合和内聚)导出适应度函数,并进行粒子群优化。 该程序的输入将是XML格式的UML类图。 如何从UML类图中以XML格式计算以下参数: MAC(c)-类c与其他类之间的方法-属性耦合–同一类图中的 ...

方法的内聚性-计算和辅助函数呢? - Cohesion in methods - what about calculations and helper functions?

内聚度量背后的假设是,如果方法在相同的类级变量上工作,则它们是相关的。 如果方法完全适用于不同的变量,则它们是无关的。 在内聚类中,方法使用相同的变量集。 在非粘性类中,有些方法可以处理不同的数据。 在度量标准中,从不共享对的实例中减去共享对实例变量字段访问的方法对的数量。 ...

增加简单java程序的内聚力 - Increased cohesion in simple java program

我有一个小的 java 程序,它收集用户写的 10 个单词并按指定的顺序打印它们。 就目前而言,该程序有效,但没有凝聚力。 我的问题源于对内聚概念的了解不足以解决这个问题,以及对 Java/OO 语言不熟悉。 我相信类 Entry 太杂乱了,另一个类应该承担这个类的一些功能。 任何暗示或线索, ...

这种简单的方法如何分解和命名? - How can such a simple method be broken down and named?

最佳实践不断要求一种方法只对一件事情负责。 我遇到了一种方法,该方法可以完成3件事,并且我不知道如何根据最佳实践将其分解1。 2.命名。 我也想知道,现实生活中有多少种方法真的可以像教科书所建议的那样始终只做一件事? 如我们所见,名为method的方法所做的不只是一件事情。 甚至 ...

scanf是内聚的还是耦合的? - Is scanf cohesive or coupled?

我知道scanf是耦合的,并且之所以耦合是因为它需要不同类型的输入,例如integer,float,char和其他。 但是内聚性表示只执行一个任务,而scanf则执行(扫描来自stdin的输入)。 我同意,尽管它可以完成所需的读取任务,但在读取不同类型数据的形式上缺乏凝聚力。 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM