从 Java 转向 Visual C# 的十大理由






1.21/5 (25投票s)
2006年6月9日
3分钟阅读

35199
本文详细介绍了Java程序员考虑从Java语言切换到Visual C#的主要原因。
引言
"准备被同化… 抵抗是徒劳的。"
- Borg, "Q, Who?", 星际迷航:下一代
为什么Java开发者应该切换到C#? 以下是按字母顺序排列的主要原因
1. "C风格"内存访问
C#允许开发者在必要时使用“C风格”的内存管理和指针,而不是强迫开发者编写代码来访问其他语言的应用程序编程接口 (API) 以访问特定的内存位置(例如 硬件映射内存)。当然,Java语言和其他面向对象语言的主要设计目标之一就是专门禁止此类访问。微软承认了这一事实,它迫使C#程序员使用unsafe关键字标记此类访问。
2. 面向组件开发的扩展
Visual C#为开发者提供了一种强大的面向组件的开发语言,其中包括对属性、索引器、委托、继承、版本控制和属性的支持,而无需使用深奥或僵硬的命名模式和伴随类。
3. 熟悉性
Java开发者会立即发现Visual C#是熟悉和舒适的。 C#就像是打了兴奋剂的Java。有一些额外的关键字;而且,Visual C#支持一些额外的结构。但是,Java程序员可以在一两天内学会C#语言。 学习API是另一回事。
4. 交互式 XML Web 服务
Visual C#允许开发者部署和使用丰富的交互式 XML Web 服务,通过实现来自任何平台的软件聚合来减少开发时间。 微软以隐藏开发者细节而闻名:这既好也坏。 新开发者可能实际上并不知道或不理解幕后发生的事情。 另一方面,它确实提高了生产力。 当然,Java开发者有多种IDE可供选择,例如Eclipse。 它们都为Web服务提供了一定程度的支持。
5. 充分利用 .NET Framework
Visual C# 为开发者提供了对微软 .NET Framework 的访问权限——这是一个强大、线程安全的集合类库、数据访问类、网络功能等等。但是,最近,各种 桥梁软件也提供 了从 Java 程序访问 .NET 以及从 .NET 语言访问丰富的 Java 库的功能。
6. 基于对象的类型系统
Visual C# 为开发者提供了一个基于对象的类型系统,该系统消除了Java应用程序通常所需的复杂、冗长的数据编组代码。
7. 基于标准的语言
Visual C# 为开发者提供了一种 基于标准的语言 (ECMA),并具有其所有优势。 与Java语言相比,这是一个显着的优势。
8. 针对任何设备
Visual C# 允许开发者使用相同的工具和技能来针对台式电脑或各种手持和无线设备。 这是真的,但所有设备都必须基于 Windows。
9. Visual Studio .NET IDE
Visual C# 为开发者提供了 Visual Studio .NET 集成开发环境 (IDE),其中包括对任务列表、属性编辑器、Microsoft IntelliSense®、Forms 设计器等功能的支持。 对于 Windows 平台上的开发,Visual Studio是王者。 然而,除了特定于 Microsoft 的功能外,Visual Studio 却落后于 Eclipse 和其他 IDE。
10. XML 注释
Visual C#允许开发者使用可扩展标记语言 (XML) 注释来提供有用且可自定义的源代码文档。当然,Java也是如此,尽管微软确实为其添加了自己的一些特色。
结论
这种十大列表的形式源于微软。但是,由于 Java 软件 和 Visual C# 都在竞争中发展,因此,非微软导向的功能往往会被每个竞争者依次匹配。通常来说,没有真正的原因要使用 Visual C# 而不是 Java;因为,每种语言都有其自身的优缺点,这些优缺点在特定情况下可能很重要也可能不重要。除非您在仅使用 Microsoft 的商店工作,否则项目的要求应该决定所使用的语言和其他软件。
"Ducunt volentem fata, nolentem trahunt." - 塞内卡