• | Visual Studio 2005(以前称为“Visual Studio 代号 Whidbey”)。该版本的 Visual Studio 与 .NET Framework 共同提供对类库、公共语言运行库 (CLR)、编程语言和集成开发环境 (IDE) 的革新和增强。此外,该产品还使开发人员能够编写存储过程,从而提供对 SQL Server 2005(以前称为“SQL Server 代号 Yukon”)的深入支持。 |
• | Visual Studio 代号“Orcas”。该版本的 Visual Studio 和 .NET Framework 为代号为“Longhorn”的 Windows 操作系统提供工具支持。 图 1. 开发人员工具路线图 |
生成 Microsoft 开发人员工具的目的始终围绕着使开发人员能够利用 Windows 平台中的最新进展这一主题。如图 1 所示,Microsoft 提供支持即将面世的 SQL Server 和 Windows 操作系统版本的工具,从而继续发扬了这一传统。
该版本的 Visual Studio 2005 和 .NET Framework 2.0 将在应用程序开发的所有方面取得大幅进展。首先,Visual Studio 2005 根据开发人员个人的需要调整软件开发体验,设置新的开发人员工作效率标准。这一“个性化工作效率”将在开发环境和 .NET Framework 类库中提供相应的功能,以帮助开发人员在最少的时间内克服其最为紧迫的困难。其次,Visual Studio 2005 使开发人员能够通过与 Microsoft Office System 和 SQL Server 2005 的更好集成,在更广泛的应用程序开发方案中应用现有的技能。最后,Visual Studio 2005 将提供一组新的工具和功能,以满足目前大规模企业的应用程序开发需要。
Visual Studio 2005 的中心内容包括:
• |
|
• |
|
• |
|
• |
|
• |
|
通过 Visual Studio,Microsoft 提供了四种用于生成软件的编程语言。在 Visual Studio 2005 中,Microsoft 将对 Visual Basic、Visual C++、Visual C# 和 Visual J# 的独特功能进行扩展,以便为一系列软件的开发提供丰富的语言服务。这些通过 IDE 展现的语言革新将与增强的 IDE 配置文件和直观的帮助系统协同工作,以便根据开发人员团体的需要提供有效率的自定义开发体验(图 2)。
图 2. 自定义的帮助和改进的 IDE 配置文件使开发人员能够使用 Visual Studio 2005 开发环境更有效地访问信息。
Visual Basic 的 2005 版本将继续提供对 .NET Framework 的完全访问,同时显著提高开发人员的工作效率。Visual Basic 2005 的主要设计目标包括:减少完成常见任务所需的代码数量;在设计时显著减少编程错误;简化数据访问;改善 RAD 调试体验;为高级 Visual Basic 开发人员提供高端功能。
Visual Basic 2005 将与很多常见编程任务相关联的编码数量至少减少 50%。新的对象和方法将提供对 .NET Framework 中最常用功能的有效访问,这些功能包括与项目有关的资源(如窗体、数据源和 Web 服务)以及计算机级别组件(如打印机、文件系统和注册表)。图 3 中的代码显示一个示例,该示例对上述 Visual Basic 语言扩展如何显著简化常见操作所需的代码进行说明。
Visual Basic .NET 2003 |
Const GreetingName As String = "Greeting"Dim sDisplay As ObjectDim |
Visual Basic 2005 |
My.Resources.MyStrings.Greeting |
图 3. My. 类的使用为 Visual Basic 开发人员提供了对 .NET Framework 中常用功能的更为快速的访问。
此外,Visual Basic 代码编辑器将提供预生成的代码模板,以使开发人员能够“填充空白”,并且集中精力解决手头的问题,而不是解决语言语法问题(图 4)。开发人员还能轻松地创建并分发自己的自定义代码片段。
图 4. 代码片段自动创建常见编程任务。
Visual Basic 代码编辑器中的新功能将在设计时为初级和高级开发人员减少编程错误。通过提供与 Microsoft Word 拼写和语法检查类似的功能,Visual Basic 2005 将提出对常见语法错误的纠正。
图 5 显示的智能标记为命名错误的类型提出纠正。要捕获的错误示例包括:忘记引用所需的程序集;试图用不正确的签名重写方法,以及拼错类名。此外,编译器将针对可能导致运行时错误(如试图在初始化之前访问代码元素)的语义错误代码,对开发人员提出警告。
图 5. 智能标记为 Visual Basic 代码提供自动语法纠正机制。
Visual Basic 2005 还将从根本上增强操纵和检索数据的体验。来自开发环境中的简化数据源设计将用于本地和远程数据、业务对象和 Web 服务。Visual Basic 2005 还将重新引入无需代码即可创建数据绑定窗体的功能。该功能对于很多常见的数据访问方案而言都是理想的,而对于要求最高的分布式应用程序而言又具有足够的健壮性和可伸缩性;它将使开发人员能够在将表或列拖放到窗体中时自动生成可自定义的数据绑定 UI。
Visual Basic 2005 将提供对 Visual Basic 开发人员而言既强大又熟悉的调试体验。在重新引入“编辑并继续”功能以后,开发人员将能够修改并测试源代码,而无需停止和重新启动调试会话。调试器的进步将使开发人员可以截获异常、获得有关异常的附加信息,并根据情况继续(图 6)。这一迭代开发和调试周期与中断模式下的高级错误纠正和代码分析相结合,为使用 Visual Basic 的开发人员提供既强大又灵活的调试体验。
图 6. 异常帮助器使开发人员能够更有效地诊断运行时错误。
在开发之后,通过引入“ClickOnce”部署,Visual Basic 2005 能简化将已完成的 Windows 客户端应用程序部署到用户计算机的任务。使用该技术,开发人员将能够创建可通过 Web 页、文件共享或其他媒体分发的应用程序包。应用程序用户只需单击分发包以安装该应用程序及其所有必备组件。有关 ClickOnce 部署和 Visual Basic 2005 中其他部署改进的详细信息,请参阅下文。
对于已在 Visual Basic 6.0 代码方面进行了投入的开发人员而言,Visual Basic 2005 将包含对 Visual Basic 升级向导的多项关键改进。虽然 Visual Basic .NET 2003 提供的当前版本的升级向导能成功地升级多达 95% 的应用程序,但 Visual Basic 2005 中的改进将通过对升级 COM+ 项目的支持、附加 Visual Basic 6.0 控件(包括 TreeView、ListView 和 MaskedEdit 控件)以及对升级涉及编程打印的代码的增强支持来提高这一比率。升级向导还利用 Visual Basic 2005 中引入的很多新语言功能来产生更干净且更容易维护的升级代码。
对于更高级的 Visual Basic 开发人员,语言增强功能包括对运算符重载、无符号数据类型和不完全类型的支持。此外, 使用 Visual Basic 的开发人员将能够访问跨多种数据类型促进代码重用的泛型的 CLR 实现。Visual Basic 2005 将引入内联的 XML 文档注释,以帮助开发人员创建易于在企业内外部署的具有完备资料的应用程序。最后, Visual Basic 2005 开发人员将继续具有对 .NET Framework 中的所有类和功能的完全和直接访问权限。
像以前的同类产品一样,Visual Basic 2005 将专门致力于使开发人员能够快速生成跨越所有层的应用程序。计划中横跨可视设计器、代码编辑器、语言和调试器的增强功能将极大提高工作效率,从而使开发人员能够更快地创建健壮、一流的应用程序,并能够在 Web、业务组或企业中部署它们。
1、Visual Studio 20052、语言和IDE工作效率:Visual Basic3、语言和IDE工作效率:Visual C++4、语言和IDE工作效率:Visual C#5、语言和IDE工作效率:Visual J#6、.NET框架及Windows客户端应用程序开发7、Web 应用程序开发(ASP.NET)8、基于设备的开发,数据访问及高级Web服务9、Office及SQL Server 2005解决方案开发10、企业开发和生存期支持11、分析和设计“为操作设计”12、通过更好的测试获得更好的软件13、源代码控制和工作项跟踪等14、产品生成、部署和运行等
Visual C++Visual C++ 2005 将为面向 Windows 和 .NET Framework 的系统和应用程序开发人员提供比其较低版本更多的功能和更细粒度的控制。 人们计划在该产品的所有领域(包括语言、编译器和核心库)进行关键改进。这些增强功能将使 C++ 开发人员能够更有效地面对 CLR、优化代码的性能、面对 64 位 Windows 以及提高应用程序的安全性。此外,Visual C++ 2005 将 使开发人员能够直接在 Visual Studio 2005 IDE 中为移动设备生成本机 C++ 应用程序。(有关嵌入式 C++ 开发的详细信息,请参阅 “基于设备的开发”一节)。 通过 Visual C++ .NET 2002 版和 2003 版,托管扩展使开发人员能够显式利用 CLR 和 .NET Framework。在 Visual C++ 2005 中,现有的托管扩展语法将继续得到完全支持。此外,Visual C++ 将通过强大的新功能以及用于编写托管代码的更为优雅的语法为 CLR 和 .NET Framework 提供扩展支持。该语法现正在作为到 ECMA 标准化公共语言基础结构 (CLI) 的 C++ 绑定而进行 ECMA 标准化。这一新语法将称为 C++/CLI。 C++ 语言的 C++/CLI 子集主要将在 Visual C++ 2005 中实现,并将为 Visual C++ 开发人员提供很多新功能。C++ 开发人员将第一次能够使用真正的 C++ 编程范型编写 .NET 连接的应用程序。例如,将为由 CLR 和垃圾回收器管理的代码和数据启用 C++ 模板和 C++ 样式的确定性终止。此外,C++/CLI 还为 C++ 提供很多 CLR 编程范型,包括泛型的 CLR 实现。 C++/CLI 还简化了定义和使用托管数据类型的方式。新标准引入的关键字对于 C++ 开发人员而言,比当前托管扩展的下划线-下划线 关键字更为直观。在 C++/CLI 中,ref 关键字用来以与托管扩展 __gc 关键字类似的方式定义垃圾回收类: ref class MyRefClass { /* ... */ }; 此外,C++/CLI 还引入一种新的类型 — 句柄,该类型用来表示自动垃圾回收的使用。句柄借用指针的语法,但使用加字符号 (^) 而不是星号 (*)。关键字 gcnew 用于创建上述垃圾回收对象,并且返回一个句柄: MyRefClass ^ c = gcnew MyRefClass(); 通过 C++/CLI,开发人员还将能为句柄类型合并入传统的 C++ 样式确定性终止。这意味着可使用正常的 C++ 堆栈分配语法选择性地将引用类型作为对象进行实例化。这样,该对象将在脱离作用范围时自动调用它的析构函数。该功能启用了在其他面向 CLR 的语言中不可用的编程风格。 除了 C++/CLI 支持以外,Visual C++ 编译器还将为面向 CLR 的代码提供多个代码生成增强功能。这些增强功能包括:能够指定不包含本机 x86 指令的“纯粹”图像,以及通过 CLR 验证过程的“安全”图像。而且,Visual C++ 2005 编译器能够比其他托管语言更好地优化 MSIL。 为 Visual C++ 2005 中的 C++ 编译器规划了很多增强功能,其中之一便是 Profile Guided Optimizations (POGO)。POGO 技术使编译器能够测量应用程序的各种数据,并收集有关应用程序在运行时使用方式的信息。这些信息使 Visual C++ 能够基于真实的应用程序使用模式进一步优化生成的代码。目前,在免费下载的 Platform SDK (PSDK) 中附带有 64 位 POGO 技术的预发布版本。在 Visual C++ 2005 中,该技术将扩展到核心 32 位编译器,且有关的支持将集成到 IDE 中(图 7)。 图 7. Visual C++ 2005 中的 POGO 支持将通过规范和运行时分析来优化应用程序。 该版本还将包含目前在 PSDK 中仅以预发布形式提供的 64 位 C++ 编译器。这些编译器使 Visual C++ 开发人员能够编写面向在 Intel 和 AMD 硬件上运行的 64 位版本 Windows 的非托管代码。对面向 64 位 Windows 的支持将完全集成到 IDE 中(图 8)。 图 8. Visual C++ 2005 中的平台支持范围被扩展以包括 64 位 Windows 以及各种移动设备。 除语言和编译器增强功能以外,Visual C++ 2005 还为核心 C++ 库(如 Microsoft 基础类库 (MFC)、标准模板库 (STL) 和 C 运行时库 (CRT))提供改进和增强。这些增强将使 C++ 开发人员能更好地支持 .NET Framework,并提供内置的应用程序安全性。 首先,将引入新版本的标准模板库 (STL)。该版本的 STL 将被调整以与托管代码和数据进行交互。那些习惯于使用 STL 编写传统 C++ 应用程序的程序员将发现,他们能应用相同的编码技术来编写基于 CLR 的应用程序。其次,新版本带有增强安全功能的 C 运行库 (CRT) 将随 Visual C++ 2005 一起发布。作为 Microsoft 对“可信赖计算”倡议的持续承诺的一部分,该版本的 CRT 将有助于增强集成了 CRT 的应用程序的集体安全性。 对于 Visual C++ 2005,开发人员将继续选择 Visual C++ 来生成最为苛求的应用程序和组件。Visual C++ 2005 通过提供令人兴奋的新增和改进功能,为具有控制和性能意识的 C++ 开发人员扩展了在 Visual C++ .NET 2003 版中提供的核心功能集。 |