在.NET中编写核心/关键项目是否有意义

时间:2009-11-04 07:44:46

标签: .net visual-studio-2008

.NET变得越来越流行,许多新系统都是以它为基础构建的。 人们(包括我)很喜欢.NET。

当我开始进行C#冒险时,支持这一选择的事实是伦敦证券交易所为交易系统选择了.NET / MS SQL Server。
现在我听说他们退出了这一点(确认了我的许多朋友的意见 .NET& MSSQL根本无法执行这种工作)

我很想知道如果构建基于.NET的专业/核心系统是否有意义? 我主要考虑性能,可扩展性,可靠性等......

也许高级语言不是很好的选择,我们应该继续使用C ++语言家族?

修改
我正在考虑使用高时间关键交易的相当大的应用程序(比如企业级别) 数据大小量无法与LSE明显比较,但由于它是核心系统,因此无法传递数据大小。使用复杂的UI进行多线程处理。

8 个答案:

答案 0 :(得分:4)

那么,伦敦证券交易所可能与大多数其他业务系统完全不同。他们有很多时间紧迫的交易。在我看来,在.Net中编写正常的业务应用程序是很有意义的。性能不如原生c ++程序好,但对于现代硬件,性能已经足够好了。 .Net框架的剪切大小以及用几行代码实现复杂任务的能力远远超过了这些缺点。在我看来,只要它只针对Windows环境,就没有其他框架更适合业务应用程序。如果需要多平台,我会很好地了解QT,这是由挪威公司Trolltech开发的(几年前诺基亚买了它)。

答案 1 :(得分:3)

如今,许多复杂的系统都是用不同语言编写的部分组成的。在不知道伦敦证券交易所案例的细节的情况下,我猜他们可能会用任何.NET语言编写大部分应用程序,如果需要,他们可以在例如C ++。

在语言/开发工具方面,确实没有一种尺寸适合所有人。某些语言/工具将比其他语言/工具更适合于特定任务。因此,对于大型系统,根据我的经验,很少有一种语言/工具集。

我工作的公司有几种不同语言的组件,它们都是同一个应用程序的一部分。

答案 2 :(得分:1)

答案简短:

<。> .net平台可用于事务系统,但问题是该平台是否具有足够的可扩展性,并且能够在极高的容量下运行良好?

.Net像其他所有高级语言一样在这个世界中占有一席之地,我个人不会将.net托管代码用于核心事务系统。以同样的方式,我根本不会使用.net来编写关键任务设备驱动程序。

如果您有选择,可以选择c ++来完成关键任务。不要完全抛弃.net,认识它有其优势,并相应地使用它。

.net非常适合快速,可重复使用的开发,我甚至会说如果你正确使用它(甚至可能无法管理)并测试/重新测试你的应用程序,你会比你想象的要多得多。

答案 3 :(得分:0)

.net对于实时系统来说是一个不错的选择,但我认为java几乎是一样的。

实时系统是一种与普通软件不同的动物,它们通常基于某些消息传递系统而只使用内存存储,因此它们可以通过C ++ / C等低级语言更好地处理。

对于正常的软件开发(Winform / Web),.NET非常适合专业应用程序。

所以基本的答案是,如果你正在做消息传递应用程序,那么在其他情况下避免使用高级语言.NET / Java / PHP / RAIL就可以了。

答案 4 :(得分:0)

不,我不同意你的看法。如果以明智的方式使用.NET,.NET可以获得更好的性能。这取决于您如何设计和编码系统。我们正在拥有企业级项目,它具有如此多的功能和工作正常,没有性能问题,并且是实时应用程序。

答案 5 :(得分:0)

首先,它取决于项目。一个非时间关键或高事务的小应用程序,任何最小化编程时间和问题的语言都可以。但是,如果涉及大量数据,情况就不同了,您将不得不选择能够在高负荷下工作的系统。还要考虑缩放。有些系统比其他系统更好。

答案 6 :(得分:0)

我不知道有关伦敦证券交易所的具体细节,但有可能无论你想写什么都不是那么规模。

我相信你能找到成功的“专业项目”以及没有成功的“专业项目”的例子。 我不会太担心它。 我用Java开发了大部分的开发工作,但是我听到了同样的反对意见,并且不要太认真。如果它适合我​​,我不会停止使用它,因为不是每个人都可以使它工作。

答案 7 :(得分:0)

Stackoverflow.com构建于.NET,MSSQL和IIS之上。我会说它相当不错:)