软件设计

如何从设计角度来对待CouchDB修订版?

我可以看出,CouchDB修订版不会被视为文本版本控制中的修订版本。从其他职位看,他们似乎被视为存在直到粗调紧凑操作被调用的临时数据。 我的问题是,如果我有兴趣使用CouchDB来维护文档,以及这些文档的版本历史记录,那么我应该允许它由CouchDB修订本身来处理,还是应该在顶层构建一个能够在紧凑型操作? 我以为后者只是因为Couch不会复制文档的修订版本,只是最新的更新。这使我认为修 ..
发布时间:2017-05-12 20:40:36 软件设计

在使用服务层时配置IoC容器的层次是什么?

我有一个中等大小的asp.net MVC应用程序。它消耗了处理所有存储库使用,调用域服务等的服务层。我的控制器操作非常苗条 - 它们基本上称为服务类,获取响应并显示复制。大多数组件都是基于界面的,一些穷人的DI。该应用正在增长,需要更好的测试支持,并开始调用IoC容器。 我读取的一切(如 ..
发布时间:2017-05-12 20:40:12 软件设计

Autofac - 终身和模块

给定一个注册依赖关系X的模块。依赖关系X在MVC3应用程序中具有不同的生命周期(生命周期) 每个HttpRequest),然后在一个控制台应用程序(依赖每个lifetimescope与一个名称)。在哪里或如何指定依赖关系X的生命周期? 案例 将我所有的数据库相关代码放在一个程序集中,其中包含注册所有存储库的模块。现在ISession(Nhibernate)注册也在模块中。 ..
发布时间:2017-05-12 20:37:06 软件设计

WPF按钮相同/推荐宽度

假设你有一个带有多个按钮的窗口,如Ok / Cancel或Yes / No / Cancel。所有按钮的宽度必须相同。显然,这可以通过猜测一个数字和硬连线来完成这个数字。 有没有更好的方法来做,一个会考虑到首选/推荐的大小(只要Ok按钮有多宽?这不是一个修辞问题,实际上不知道答案!),最长字幕的文本需要什么,如果字体大小增加会发生什么等等? 解决方案 有几种方法可以做到这一点: ..
发布时间:2017-05-12 20:35:48 软件设计

UML之间的关系(扩展/包含)

我不明白以下主题,因为它与我所读的有点不一样: Inlcude 但是,当有“include”只有在某些IF声明中是真的,如: 添加新产品---> include --->添加新的制造商。 //仅当不存在时才添加为什么没有“延伸”?是因为其他地方可能再次使用“添加新的制造商”? 谢谢 解决方案 确切地说。一旦你扩展了另一个用例,你已经到目前的用例结束了。但是,你可以在if里面 ..
发布时间:2017-05-12 20:35:15 软件设计

Mongodb模式设计

我很困惑,以下情况是最好的格式: 名称:漂亮的热狗 库存:10 重量:0.1克 价格:2美元 名称:普通哑铃 库存:5 重量:4公斤 价格:667.98日元 This: db.item.save({“_id”:1,“name”:“漂亮的热狗”,“stock”:10,“weight”:{“value” :“,”unit“:”gram“},”price“:{” ..
发布时间:2017-05-12 20:30:41 软件设计

单页应用程序与登录页面深度链接

我的团队将为未来的项目构建单页应用程序。目前,我在使用登录页面设计应用程序时遇到问题。有两种方法: 将登录页面创建为单独的页面,其余的应用程序是另一个页面。 该应用只有1页,登录页面将是使用javascript来回切换的应用中的视图。 我不知道应该采取哪种方式。我已经在互联网上阅读了一些讨论,似乎更加流行的创建登录页面作为单独的页面,原因是我们可以使用正常的基于cookie的身份验证 ..
发布时间:2017-05-12 20:30:05 软件设计

ORM和DAO - 设计问题

我正在研究这个讨论的项目,我想询问他们他们对此有什么看法。 DAO模式是(根据维基百科):“在计算机软件中,数据访问对象(DAO)是一种向某种类型的数据库或持久性机制提供抽象接口的对象,提供一些特定的操作,而不会暴露数据库的详细信息。” 但是,使用ORM这显然是ORM(例如Hibernate)的工作。它提供了一些(几乎任何)类型的数据库的抽象接口。 回顾几个最后的项目,我们来看看 ..
发布时间:2017-05-12 20:29:25 软件设计

使一个组织隐藏在其界限之外的演员

我创建了一个非常简单的图,通过在屏幕右侧添加新图像,然后使其向左移动,动态更新。这样,屏幕范围内的情节看起来就像随着时间的推移一样绘制。 不幸的是,当这样做时,我必须让图像从外面开始的屏幕,并进入视图,我不能再次删除它们之前,他们完全在屏幕左侧之外。这导致图像在屏幕边界之外部分可见。 控件创建为组包含两个静态图像(黑色背景和屏幕的图像作为前景),以及其间的所有运动图像。然后将组添加到我 ..
发布时间:2017-05-12 20:28:44 软件设计

使用类型强制正确

假设我们有一个商店管理应用程序。它有客户,可以 chargeFee()。它应该只对活动的客户而这样做。 我看到这样做的一个常见方式(Java /伪代码)是这样的: class Customer { String name StatusEnum status // 1 = active,2 = inactive } //这是客户收取的 (c:Customer.listB ..
发布时间:2017-05-12 20:28:28 软件设计

算法设计:可以为多背包问题提供解决方案吗?

我正在寻找一个伪代码解决方案,以实现有效的多重背包问题 (优化说明是页面的一半)。我认为,这个问题是NP Complete,所以解决方案不需要是最优的,而是如果它是相当有效和容易实现的,那将是好的。 问题是这样的: 我有很多工作项,每个采取不同(但固定和已知)的时间来完成。 我需要将这些工作项分成组,以使组数最少(理想情况下),每组工作项不超过给定的总阈值 - 例如1小时。 我 ..
发布时间:2017-05-12 20:27:49 软件设计

如何在Visual Studio中跨多个项目共享配置设置?

确定我知道这可能是一个设计问题,所以我也很乐意就此发表评论。 我有一个Visual Studio Web应用程序解决方案。我有三个项目作为UserInterface,BusinessLogic和DataAccess。 我必须存储一些用户定义的设置,并在配置文件中创建了configSections。 我访问这些configSections通过继承自.NET的 Configurati ..
发布时间:2017-05-12 20:27:11 软件设计

快速创建用户界面而不拖放的最佳语言?

我是盲人大学生,正在介绍关注于用户界面设计的编程课程。该类正在使用Processing,这是完全无法访问的。我正在寻找一种语言,允许我创建GUI,而无需拖放,并希望足够聪明地做大部分的布局,而不会强制我以像素为单位指定控制位置。 我知道Perl,Java,C / C ++,c#和HTML。我正在考虑创建HTA应用程序。我唯一的要求是语言必须在MS Windows下运行,不能使用SWING或G ..
发布时间:2017-05-12 20:25:38 软件设计

魔法数字42的起源是什么?编码中不可或缺?

更新: 令人惊讶的是它被如此沉重的压缩... 问题是编码相关,在提出这个问题之前,我已经结合使用了“42”: site :msdn.micrsoft.com “代码示例” “c#” 而我不是西方文化/文学的专家/粉丝。 还发现,为什么变量”i“和”j“用于计数器? [重复] 没有关闭,但是甚至受到保护。 我觉得大家都知道,除了我... 无处不在的魔法数 ..
发布时间:2017-05-12 20:23:47 软件设计

单一责任原则是OOP的规则吗?

一个回答到堆栈溢出问题表示,一个特定的框架违反了简单和简单的OOP规则:单一责任原则(SRP)。 单一责任原则真的 OOP的规则? 我对面向对象编程定义的理解是“对象及其行为用于创建软件的范例”。这包括以下技术:封装,多态和继承。 现在不要误会我 - 相信SRP是最好的OO设计的关键,但我觉得有些情况下这个原则可以和应该被破坏(就像数据库规范化规则)。我积极推动SRP的好处,我的 ..
发布时间:2017-05-12 20:23:05 软件设计

mdl-textfield没有将ngModel更改考虑在内

我正面临着一个关于 mdl-textfield 的行为的问题 在下面的plnkr中,步骤: 点击“工作组” 点击一个项目上的“复制”看看最后的新文本框与ngModel关联(angular.copy)出现,但是文本框的行为是奇怪的,即使有一个值,标签不是浮动的,但是如果您点击文本字段,它会按预期的方式浮动。如果您修改该字段,行为仍然存在,但是如果您没有任何修改标签退出,则会重新覆盖。 ..
发布时间:2017-05-12 20:20:27 软件设计

Windows窗体设计资源和可用性增加

我为UI设计的大部分资源都是处理网络世界的。由于表现层的动态性质,存在许多优点。 然而,我想设计更好的Windows窗体程序。我想要一个专业的流程到我的应用程序。现在,他们使用WPF看起来很漂亮,但是事件看起来是脱节的(即几乎不自然的进步),我并不知道如何设计一个好的(可用性明智的)界面。有人博客关于那种事吗? 解决方案 您可能还需要查看 http://msdn.microsoft. ..
发布时间:2017-05-12 20:19:31 软件设计