首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C#实际上是一种多平台语言吗?

C#实际上是一种多平台语言吗?
EN

Software Engineering用户
提问于 2011-05-09 09:57:51
回答 1查看 6.9K关注 0票数 20

C# (以及一般的.NET平台)似乎正在成为多目标应用程序的一个很好的选择:

  • 微软官方.NET框架: Windows开发、ASP.NET开发、Windows Phone开发等.
  • Mono及其所有衍生产品:MonoTouchMonoDroidMonoDroid:世界其他地方。这些工具现在都是RTMRTM
  • 这是否意味着C#正在成为一种针对最流行平台、桌面、web和移动平台的良好语言?
  • 是否更好地使用目标平台的“本机”语言(Objective、Java等)?
  • 这仅仅是一幕烟幕和营销语言吗?

请注意,我实际上意识到,我无法在平台之间复制/粘贴代码。但我确信应用程序的底层(模型、业务等)可以重用,但我知道我必须适应更高的层(GUI等)。到站台去。我的目标是更多地关注所需的技能,而不是技术代码共享。

我是一家大规模使用C#的公司的C#开发人员。这就是为什么我在计划扩大公司目标平台的范围时提到C#的原因。

EN

回答 1

Software Engineering用户

回答已采纳

发布于 2011-05-09 10:09:41

是的,总的来说,.NET框架对于应用程序来说是很棒的,它的目标是广泛的设备。但这并不是.NET所独有的;Java很久以前就这样做了。要记住的是,对于特定平台来说,除了本地工具之外,没有真正的替代方法。

您用.NET创建的Mac应用程序永远不会像本地Mac应用程序,这是绝大多数OS用户所认为的问题。这在战略上可能并不重要,这取决于您的业务模型是否重视最大化用户满意度,而不是最大化用户满意度,但在做出选择时一定要记住这一点。

Linux和Windows中的GUI系统在哪些应用程序看起来“本机”并与平台很好地相适应方面比较灵活。但我认为这主要是因为缺乏明确的界面指导方针,以及应用程序开发人员历来都愿意忽略那些确实存在的准则。许多Mac用户更喜欢Mac,正是因为它具有一致的用户界面。

考虑到您必须调整GUI层以适应特定的平台(并可能完全用另一种语言重写它,比如Objective),这使得您只能在库代码中使用.NET平台。在我看来,C#在C++上的胜利并不是很明显。

对于快速的应用程序开发,几乎没有比C#和.NET更好的选择了。将应用程序迅速推出并在多种平台上立即可用无疑是一项业务优势。但是对于真正能满足用户需求的多平台应用程序来说,它并不一定是解决方案。

票数 14
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/75147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档