问题标签 [object-oriented-analysis]
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.
oop - 行为驱动的开发是关于设计还是分析?
我对 BDD 以及它应该如何改进 TDD 的了解越多,在我看来这一切就越令人困惑。我从专家那里找到了关于设计的引述,也从其他专家那里找到了关于分析的引述。
我目前看到的方式是这样的:
1)分析:BDD
来自维基百科
面向对象分析的结果是以概念模型的形式描述系统在功能上需要做什么。
所以在 BDD 之后,我们有了需求(故事和场景)。但我不确定概念模型部分。
2) 设计:例如使用 CRC 卡的可靠性驱动设计等工具
3) 代码:对设计进行编码,可选择使用测试(就像他们所说的 TDD 做错了,我也觉得这很有用)
我怎么看错了?我现在很难从树林中看到森林。
oop - 什么是“复合图案”?
任何人都可以解释并给出复合设计模式的真实例子吗?
java - Java 接口继承和扩展
想象一下,您正在开发一个成熟的产品,并且要求 50% 的产品需要一个新的搜索功能。现在假设您与 SomeDao 建立了不想破坏的接口继承关系......
...有没有办法公开方法'findByCriteria(..)'而不在所有其他类似于MoneyDao的地方以更清洁的方式重复它?
请记住,如果可能的话,我想避免将其转换为使用和修改 SomeDao 的新类型。
问候,詹姆斯
java - 用于可视化、了解您的类如何相互关联的工具
有时,我发现自己很难在拥有 100 多个类的大型遗留系统的对象环境中导航。
这似乎是一个相当普遍的挑战。
我只是好奇是否有任何强烈推荐的工具可以编译您的源代码并生成某种关于您的对象如何相互关联的可视化。
谢谢。
java - 类方法与实例方法
嗨,类方法是否通常比实例方法更快,因为它不需要加载实例?如果是这样,我们应该尽可能使用类方法吗?谢谢
java - 在Java中使数组最终(不可变)有什么用?
有什么理由可以声明一个数组 final 吗?说这样的话
c# - 当我只希望某些派生类可以访问基类中的方法时,使用什么设计模式?
我在这里有一个独特的问题/情况。试图让它尽可能简单。我有一个基类(比如Parent)和一大堆直接从基类(Parent)派生的派生类(比如Child1,Child2 ..ChildN)。我想更改基类并添加一个“AVeryPrivilegedMethod”,它只能由 Child2 和 Child3 访问,而不能被任何其他孩子访问(或使其可配置,以便将来 Child5 也可以在将来使用它,只需进行最小的更改)。什么样的设计模式/架构模式适合这个法案?
使用的语言 - C#。
PS:我正在考虑使用InternalVisibleTo但意识到这会在装配级别应用
oop - 使用 API 进行 OO 编程中的类图
- 我正在尝试为我尝试在给定框架内创建的应用程序创建类图。
- 这个框架公开了它自己的自定义 API,我设计中的一些类由 API 中的类表示。
- 其中一些类往往变得相当复杂,所以我面临如何在我的类图中表示这些类的问题——或者我是否应该尝试这样做。
更具体,
- 我的应用程序将工件从一台服务器移动到另一台服务器。
- 我正在研究的框架提供了类和方法来表示源和目标服务器并与之通信。
- 现在,我知道我的类图需要考虑服务器类及其功能的表示,但是我如何在我的类图中做到这一点。
提前谢谢你的帮助。
java - Head First 设计模式与 Head First 面向对象分析和设计
目前我正在通过 Head First Java 学习 Java,并开始期待阅读更多关于 OOP / 设计模式的信息。
我的问题是在 Head First Java 之后我应该读哪本书。我在 Head First Design Patterns 和 Head First Object Oriented Analysis and Design 之间纠结。毫无疑问,我可能应该阅读两者,但我不确定两者之间有什么区别,哪个更适合作为 Head First Java 的后续行动。
阅读这些内容的人的任何建议或细节将不胜感激。