当前位置: 首页 > 面试题库 >

.NET / Mono或Java是跨平台开发的更好选择吗?

裴楚青
2023-03-14
问题内容

Mono的库比Java的库少多少?

我没有对这两种选择的概述,但是对于下一个项目,我有很大的选择自由。我正在寻找以下方面的硬技术事实

  • 性能(例如,我被告知Java很适合线程处理,而且听说最近.NET的运行时代码优化非常出色)
  • 真实世界的 可移植性(它们都是便携式的,每个Catch-22是什么?)
  • 工具可用性(CI,构建自动化,调试,IDE)

我特别是在寻找您在自己的工作中实际体验到的东西,而不是我能用Google搜索到的东西。我的应用程序将是一个后端服务,用于处理时间序列中的大量数据。

我的主要目标平台是Linux。

编辑: 为了更充分地表达我的问题,我对整个软件包(第三方库等)感兴趣,而不仅仅是语言。 对于库,这大概可以归结为“Mono比Java少多少个库”的问题?

仅供参考,自此以后,我选择Java进行该项目,因为在可移植性方面它似乎更加疲惫不堪,而且在较旧的系统上也存在了一段时间。我对此感到有点难过,因为我对C#很好奇,我很乐意在其中进行一些大型项目,但也许是下次。感谢所有的建议。


问题答案:

好吧……Java实际上更易于移植。Mono并非在所有地方都实现,它大大落后于Microsoft的实现。Java
SDK似乎在各个平台之间保持更好的同步(并且可以在更多平台上使用)。

我还要说Java在所有这些平台上都有更多的工具可用性,尽管Windows平台上有很多可用于.NET的工具。

2014年更新

我在2014年仍然持这种观点。不过,我要说的是,我经过了一段时间的关注后才开始关注Mono,因此,Mono运行时(或生态系统)可能有所改进)我尚未意识到。AFAIK,仍然不支持WIF的WPF,WCF,WF。Mono可以在iOS上运行,但是据我所知,Java运行时仍比Mono运行在更多平台上。另外,Mono开始看到一些经过改进的工具(Xamarin),并且Microsoft似乎具有更多的跨平台态度和愿意与合作伙伴合作以使其互补而不是竞争的态度(例如,Mono将成为即将到来的OWIN
/ Helios ASP.NET格局的重要组成部分)。我怀疑在未来几年中便携性的差异会迅速减少,

2018年更新

我对此的看法正开始走向相反。我认为.NET,尤其是.NET
Core,尤其是在.NET中,已经开始使用Java实现“可移植性对等”。目前正在努力将WPF引入某些平台的.NET Core,并且.NET
Core本身现在可以在许多平台上运行。Mono(由Xamarin拥有,现在由Microsoft拥有)是一种比以往更加成熟和完善的产品,并且编写可在多个平台上工作的应用程序不再是.NET黑客的深入诊断领域,而是一项相对简单的工作。当然,有一些库,服务和应用程序仅用于Windows或只能针对特定平台-
但Java(广泛地)也是如此。

如果我现在不做OP的话,我想不出语言或技术堆栈本身固有的原因,这会阻止我为以后的任何应用程序选择.NET。



 类似资料:
  • 问题内容: Mono跨平台正在采取什么措施?如何为Windows编译(在Linux中),如何在Linux中运行代码(因为没有.NET JIT编译器)? 那么使用Mono开发的特殊之处是什么?与使用Visual Studio进行开发相比,有什么优势(跨平台的东西除外)? 问题答案: 在Mono中进行开发绝对是跨平台的,有一个 警告请求者 : 努力避免使用Windows特定的API 与本机Window

  • 问题内容: 我正在寻找可以满足以下要求的Java或.NET电子商务“平台”: 产品/服务管理 客户账户管理 购物车 结帐/商家整合 本地化(尤其是货币) 优惠券 多个店面 报告中 可能的PayPal / Google Checkout集成 这里的目标是将其与用Adobe Flex编写的RIA集成。我们很乐意编写一个薄的后端层来支持Flex应用程序,因此该解决方案不需要可远程访问的API,而只需一个

  • 问题内容: 我想开发一个跨平台的应用程序。 Java是跨平台的吗?我的意思是,我可以在Windows中开发Java应用程序并在Mac OS X和Linux中使用它吗? 如果是,怎么办? 我发现用Java编写的应用程序有两个安装文件,一个用于Windows,另一个用于Mac。 这使我感到困惑。 任何插图或建议将不胜感激。 问题答案: Java是跨平台的吗? 从某种意义上说,Java是跨平台的, 即已

  • 问题内容: 相关(SQL Server): Count(*)vs Count(1) 您能告诉我什么是性能更好的(MySQL)吗?Count(*)还是count(1)? 问题答案: 这是MySQL的答案。 它们的性能完全相同-除非您使用MyISAM,否则存在特例。无论如何我总是用。 http://dev.mysql.com/doc/refman/5.1/en/group-by- functions.

  • Chromium是一个巨大而复杂的跨平台产品。我们试图在不同平台间共享尽可能多的代码,同时为每个平台用最合适的方式实现UI和操作系统集成。这提供了一个更好的用户体验,但它给代码增加了额外的复杂度。这个文档描述了保持这种跨平台代码简洁性的推荐实践。 我们使用大量不同带后缀的文件来表示一个文件应该被使用的时机: Mac文件中,低层级文件使用_mac后缀,Cocoa(Mac UI)文件使用_cocoa后

  • 本文向大家介绍PHP语言的一大优势是跨平台,什么是跨平台?相关面试题,主要包含被问及PHP语言的一大优势是跨平台,什么是跨平台?时的应答技巧和注意事项,需要的朋友参考一下 PHP的运行环境最优搭配为Apache+MySQL+PHP,此运行环境可以在不同操作系统(例如windows、Linux等)上配置,不受操作系统的限制,所以叫跨平台