标签: software-design

什么是架构上下文关系图(ACD),还有其他名称吗?

我被指控为小组项目完成以下任务:

a)设计/绘制架构上下文图
b)ACD描述
c)UML部署图

UML部署图没有问题,因为在线有大量直接资源,但ACD并非如此.

我需要有关ACD究竟是什么以及如何绘制ACD的资源.

ACD还有另一个名称,例如架构上下文关系图,如架构互连图或操作系统图吗?我在Google搜索中不断发现类似名称但不同的图表...

architecture diagram uml software-design

7
推荐指数
1
解决办法
1万
查看次数

单位转换的良好数据结构?

StackOverflow人群.我有一个非常开放的软件设计问题.

我一直在寻找一个很好的解决方案,我想知道这里是否有人对问题有一些了解.认为这就像数据结构之谜.

我想要做的是创建一个能够从任何单位转换到任何单位的单位转换器.假设lexing和解析已经完成.一些简单的例子:

Convert("days","hours")           // Yields 24
Convert("revolutions", "degrees") // Yields 360
Run Code Online (Sandbox Code Playgroud)

为了使事情变得更复杂,它必须平滑地处理输入之间的歧义:

Convert("minutes","hours")        // Yields (1/60)
Convert("minutes","revolutions")  // Yields (1/21600)
Run Code Online (Sandbox Code Playgroud)

为了使事情变得更有趣,它必须处理复杂的单元而不需要枚举所有可能性:

Convert("meters/second","kilometers/hour")
Convert("miles/hour","knots")
Convert("Newton meters","foot pounds")
Convert("Acre feet","meters^3")
Run Code Online (Sandbox Code Playgroud)

没有正确或错误的答案,我正在寻找有关如何实现这一目标的想法.总是有一个强力解决方案,但我想要一些简单且可扩展的优雅.

software-design data-structures

7
推荐指数
1
解决办法
1904
查看次数

我应该在这个问题中使用什么设计模式?

坦率地说,这是一个功课问题,所以我会告诉你我的意见.你能让我知道我的错误而不是给我解决方案吗?

这是个问题:

假设餐厅仅提供以下两种类型的餐:(a)全餐和(b)经济餐.全餐包括以下食品,按以下顺序供应:1.开胃菜2.饮料3.主菜4.甜点同时经济餐包括以下食品,按以下顺序供应:1.喝2.主菜

确定最合适的设计模式,该模式可用于允许客户仅使用所提供的两种膳食中的一种进行订购,并且必须按给定的顺序提供膳食组件.

我在Factory和Iterator之间混淆并将它们一起使用.使用工厂模式,我们可以创建两餐完整且经济,并为用户提供将决定的基础对象类.但是我们如何强制执行元素的排序,我想使用迭代器将迭代通过两个创建的工厂的组合说话.

你怎么看?

design-patterns software-design

7
推荐指数
1
解决办法
426
查看次数

OOP设计:汽车 - 油箱和发动机之间的连接

我不确定我是不是疯狂地违反了OOP.

假设有一个Car" "a Engine和a的类Tank.

Engine它运行时,它会从油中取出油Tank(比如说每单位循环一个单位,虽然油是不可数的)

如何Engine从油中获取油Tank?(当两者都是Car?的领域?)

实际上Engine应该持续"供应"石油而不是"获得"石油.
应该"OilCirculatingSystem"从哪里获得石油Tank
和供应Engine.
如何在课程中对此系统进行建模?
有合适的设计模式吗? 在此输入图像描述

***编辑:简单地说,如何有一个从"油流" TankEngine?(是不是Oil有责任从流量TankEngine一个阀门打开时?

oop design-patterns software-design car-analogy

7
推荐指数
1
解决办法
1369
查看次数

confirmation email as a Data Element Type - Function Points

I understand that a confirmation message on a UI is counted as a Data Element Type (DET). What if my confirmation message is an alert box on a UI plus an email confirmation.

Should i count it as 1 DET or 2 DETs

Thanks

software-design function-points code-complexity measure

7
推荐指数
1
解决办法
121
查看次数

如何在双向关联中实例化不可变类?

我有两个不可变的类:用户部门,它们使用双向关联连接 - 用户部门的引用,部门有一个用户列表.如何使用提供的用户创建新的Department实例?

码:

class User {
    private final Department department;
    private final String name;

    public User(Department department, String name) {
        this.department = department;
        this.name = name;
    }
}

class Department {
    private final List<User> users;
    private final String name;

    public Department(List<User> users, String name) {
        this.users = new ArrayList<>(users);
        this.name = name;
    }
}
Run Code Online (Sandbox Code Playgroud)

java software-design immutability

7
推荐指数
2
解决办法
902
查看次数

你应该如何评论CSS?

在开发过程中,除了偶尔的标题之外,我与之交互的大部分CSS都没有注释.结果,我养成了不评论CSS的习惯.

但是,我经常发现在我正在使用的CSS中添加注释会很有用.除了指示作者的标题之外,你应该评论CSS吗?如果是这样,怎么样?

我不是在询问如何评论的过程,而是最佳实践.

html css software-design web

7
推荐指数
1
解决办法
3762
查看次数

TDD:为什么'Red Green Refactor'而不仅仅是'Green Refactor'?

我进入专业软件开发已有4个月.TDD在我公司GO-JEK是不可谈判的.以下是我的观察:人们倾向于首先编写代码,然后为其编写测试.显然,对于具有4 - 5年s/w开发经验且之前没有遵循TDD的人来说,这更方便.那么,人们首先编写失败的测试,然后编写代码来传递它的原因是什么?为什么人们不首先编写代码然后为它添加测试?我们可以在任何一种方式进行重构

tdd automated-tests unit-testing software-design

7
推荐指数
1
解决办法
1624
查看次数

洋葱架构的 DDD 端口和适配器,什么去了哪里?

试图弄清楚一些概念但无法理解

端口和适配器架构中的用例是什么?

用例的实现会是什么样子?

什么是用例问题?

它适合基础设施或域中的什么位置,它说它适合应用程序,还有应用程序核心和应用程序服务,根据我的理解,它们是不同的?

在左侧,适配器依赖于端口并注入端口的具体实现,其中包含用例。在这一侧,端口及其具体实现(用例)都属于应用程序内部;

https://herbertograca.com/2017/09/14/ports-adapters-architecture/#what-is-a-port

这句话让我感到困惑......因为据我了解,主适配器可以是任何需要您的业务逻辑的东西(它对您提供的内容感兴趣)WebAPI、MVC、测试、ConsoleApp。

在左侧,适配器依赖于端口并注入包含用例的端口的具体实现。

所以我假设它指的是您的业务逻辑被注入到WebApiController构造函数中

在这一侧,端口及其具体实现(用例)都属于应用程序内部;

所以呢 ?这是谁

应用

是WebApi吗?或者是域?据我了解,用例也是我的业务逻辑的实现,所以例如设计会是这样的?

Client :
WebApiController(IMyBusinessServicePort service)

Infrastructure :
ImplementingPrimaryAdapter : IMyBusinessServicePort { }
ImplementingSecondaryAdapter : ILoggingPort { }

Domain :
ImplementMyBusinessLogicService : IMyBusinessLogicService 
Run Code Online (Sandbox Code Playgroud)

那么 WebApiController 将使用 ImplementingPrimaryAdapter 提供的实现而不是我的域中的东西?我不明白

请解释 。

architecture design-patterns domain-driven-design software-design hexagonal-architecture

7
推荐指数
1
解决办法
6886
查看次数

在Angular中使用jQuery是不好的做法吗?

我的问题如下。我应该避免在Angular应用程序中使用任何种类的jQuery代码,因为与DOM交互只有一件事是合法的。另一个问题是,是否有人遇到除了使用jQuery编写快速hack之外找不到其他解决方案的问题。

谢谢!

javascript jquery software-design angularjs angular

7
推荐指数
2
解决办法
4343
查看次数