application-design相关内容

在我的 C# 代码中使用 .NET 4.0 元组是一个糟糕的设计决策吗?

在 .net 中添加了 Tuple 类4,我一直在尝试决定在我的设计中使用它们是否是一个糟糕的选择.在我看来,Tuple 可以是一个快捷方式编写一个结果类(我相信还有其他用途). 所以这个: 公共类ResultType{公共字符串 StringValue { 获取;放;}公共 int IntValue { 获取;放;}}公共 ResultType GetAClassedValue(){// ..
发布时间:2022-01-19 23:46:52 C#/.NET

用户的账户余额应该存储在数据库中还是动态计算?

用户的账户余额应该存储在数据库中还是动态计算? 为了获得准确的结果,动态计算它是有意义的,但是当有很多用户并且数据库变得非常大时,这可能是一个问题? 交易 ID (PK) 帐户编号 类型 日期时间 金额 等等...等等... 账户余额 事务 ID (PK/FK) 余额 解决方案 为了保持准确的审计,您应该记录每笔影响用户帐户余额的交易.这意味着您可 ..
发布时间:2021-11-17 01:55:38 C#/.NET

当用户在运行时将其文件弄乱时,如何防止桌面应用程序严重损坏?

例如在运行期间删除输出文件,将sw的两个实例定向到相同的IO等吗? 解决方案 您可以采取很多措施来阻止用户这样做,但是您可以应用在两个示例中,您每次访问资源时都必须检测故障情况,并做出适当的反应,要么抛出异常并死亡,要么继续访问该资源. 永远不要假设资源分配会成功,请始终检查您无法控制的内容.简而言之,假设尽可能少,并验证所有内容. '被告知要访问此文件以对其进行写入.它已经开 ..

我可以采取什么方法来使用Web技术开发桌面应用程序

我想知道是否有什么办法可以创建一个可作为个人用途从桌面应用程序启动的应用程序.而且由于桌面应用程序可以使用我可能要管理的HDD文件,但将它们扔到Web服务器上并不安全.但是我认为我将来可能要做的就是将应用程序移植到Web上,因为我认为这是未来应用程序的未来.网络应用无处不在,例如.可以在智能手机等上使用网络应用程序.可以促进团队协作等. 我研究了一些技术,但似乎都有缺点 Adob​​e ..

使用Node.JS

昨晚我转储了Windows 7,并格式化了硬盘驱动器以移植到基于Linux的操作系统,这纯粹是出于我想开始使用 Node.JS 的原因. 所以我已经安装了 Node.JS 并做了一些测试,包括http服务器和套接字等. 我想做的是构建一个与MVC框架紧密集成的HTTP Server,但是在开始所有这些之前,我需要学习如何在Node中高效构建. 例如在PHP作为框架的情况下,我将创建 ..
发布时间:2020-06-20 19:58:48 其他开发

什么是最好的“忘记密码"?方法?

可能重复: 忘记密码:什么是密码实现忘记密码功能的最佳方法? 我正在编程一个社区网站. 我想建立一个“忘记密码"功能. 环顾不同的站点,我发现它们采用了三个选项之一: 向用户发送电子邮件,该电子邮件带有指向唯一的隐藏URL的链接,该链接允许他更改密码(Gmail和Amazon) 向用户发送一封电子邮件,其中包含随机生成的新密码(Wordpress) 发送用户他 ..
发布时间:2020-05-08 00:27:31 其他开发

Hibernate延迟加载应用程序设计

我倾向于将 Hibernate 与 Spring 框架,它是声明式的事务分界功能(例如, @事务)。 大家都知道,hibernate会尽可能地保持非侵入性和透明性,在使用 lazy-loaded 关系时证明更具挑战性。 我看到许多具有不同透明度级别的设计方案。 使关系不会延迟加载(例如, fetchType = FetchType.EAGER) 这违背了延迟加载的整个想法。 ..
发布时间:2018-06-07 18:15:14 Java开发

在外键循环依赖:使用它还是避免它?

我的应用程序将大量来自数据库的数据加载到复杂的数据结构中。内存中的数据结构重新组合数据库的结构,这意味着如果数据库包含以下表: 表A,键是表B,键是B1,其中一列是表A的键[ 表C的键的外键,键是C1,其中一列是[B]键的外键 然后我有类A,B和C,以及:B(B :: m_a)的一个数据成员是指向A的指针 $ b b C(C :: m_b)的一个数据成员是指向B的指针 ..

什么,具体地,属于模型,视图和控制器?

我一直在学习模型 - 视图 - 控制器范例(“MVC”),但我很困惑,因为一些教程与其他教程相矛盾。 我目前对此过程的理解如下所示: 路由器/调度程序/前端控制器: 虽然在“MVC”名称中没有具体引用,但路由器仍然是非常重要的一部分。在这里,请求是从原始URL转换到特定的控制器。例如,路由请求www.StackUnderflow.com/question/123到应用程序的“问题 ..

DTO模式是否已弃用?

在完整的Java EE应用程序集群中,DTO模式仍然是有效的选项?有关应用程序使用EJBs Hibernate和Struts与Spring等。在这种情况下传输域对象有什么问题吗? 编辑:只是为了澄清我的问题, Java EE的现代资源和改进有不是仅仅使用域对象的原因吗?如果没有,那么DTO模式不会退色,不应该在新的应用程序中使用? 解决方案 是不被弃用如果DTO模式应该被使用,这取决 ..
发布时间:2017-05-14 10:15:28 Java开发

是否需要序列号?

我正在使用一个winform(.NET)应用程序,其中包括订单,发票,服务订单,票务等。 这些enities需要顺序何时编号? IMO号以订单为例,一旦通过业务层,只能有效,在此过程中,可以创建另一个订单,批准并保存为2,而先前创建的ID为1的订单失败的验证。 这似乎打开了一个蠕虫病毒,哪个层分配了订单号,不是? 目前,我使用的是前缀为实体标识符的非序列号。示例,订单使用OR-1 ..
发布时间:2017-03-22 01:10:36 C#/.NET

在第一次启动时,Cocoa应用程序设置的最常见的情况是什么?

我正在创建一个应用程序,我希望用户在首次应用程序启动时设置一些强制性偏好。最常见的情况是什么?我应该设置一些用户默认值,看看应用程序是否已设置?此外 - 如果我确定应用程序是第一次启动 - 我应该如何显示“设置”窗口?如果我从separte xib文件加载它 - 我如何deffer主应用程序窗口的显示? 解决方案 这是在你的主控制器类的 +(void)initialize 方法中。 ..
发布时间:2016-12-07 00:29:29 其它移动开发

为Finder.app撰写Snow Leopard服务

我目前正在寻找解决的问题,无法在Finder中快速创建新文件。我将开源我写的,因为我认为Mac社区需要这个解决。 在Windows上,您可以右键单击,创建新的文本文件。 OS X,您应该能够使用一个像这样工作的服务: 右键单击>服务>创建新文本文件 编写Finder 服务 理论上方式来完成这一点,虽然我还没有能够找到任何示例代码。 (我承认我只是简单地看了文档)。 我不知 ..

如何运行单元测试?编译器标志?静态库?

我刚刚开始使用TDD,我很好奇他人采取什么方法来运行他们的测试。作为参考,我使用google测试框架,但我相信这个问题适用于大多数其他测试框架和C / C ++以外的语言。 我的一般方法到目前为止已经做了三件事之一: 将大多数应用程序写入静态库,然后创建两个可执行文件。一个可执行文件是应用程序本身,另一个是具有所有测试的测试运行器。两者都链接到静态库。 将测试代码直接嵌入应用程序 ..
发布时间:2016-10-22 17:55:07 C/C++开发

应用户的帐户余额存储在数据库中或动态计算的?

如果用户的帐户余额存储在数据库中或动态计算的? 有关准确的结果计算其动态意义,但那么它可能是一个问题,当有许多用户和数据库变得非常大? 交易 ID(PK) ACCOUNTID 键入 日期时间 金额 etc..etc ... AccountBalance TRANSACTIONID(PK / FK) BalanceAmount 解决方案 为了保持准确审计,你 ..
发布时间:2016-05-28 10:35:02 C#/.NET

如何构建应用程序的目录层次结构中的接口?

把他们都在一个单独的文件夹结构或与类它实现呢? 解决方案 您永远不应该把接口与实现它们(除非这些类fulfull下列要求)的类。否则,将推出的紧耦合的接口和执行者之间,你将无法创建接口的其他实现不simulataneously引用实施者。 您基本上有两种选择: 将接口与类的消耗他们。这仍产生一个紧耦合,但是这种耦合是少问题的,因为消费者往往生活在一个库,提供相关的类型。在这种情况下,如果你 ..
发布时间:2015-11-27 11:42:04 C#/.NET

通用接口问题

我想有一个接口为我所有网格tasks.The任务实现这个接口相关的: 公共接口IDataForGrid< T> { IGridResponse< T>的GetList(IGridRequest要求); } 的T类始终是一个DTO类。我cant't创建此DTO的一个通用的接口,因为他们没有什么common.Just哑DTO具有特殊属性。 我想用这样的: ..
发布时间:2015-11-26 20:04:46 C#/.NET

是有一个空的基类,糟糕的设计?

我需要一个基类为我的DTO类,它们将在我的泛型接口可以使用。 但DTO类没有任何共同之处。他们只是包含一些属性愚蠢的类。 公共无效GetGridData() { IDataForGrid< D​​TOBase> AA; 如果(要求== 1)AA =新CustomerGridData; 如果(要求== 2)AA =新OrderGridData; VAR科 ..
发布时间:2015-11-25 14:04:03 C#/.NET