转载『Visual Studio .NET 学习之路』
Posted by i-Freelancer on 2003 年8 月15 日 ( 台 )
由弈飞信息首席顾问 / 台湾微软特约资深讲师 李 清 培 先生带领大家迈向 .NET 学习之路。
离线阅读档案,可至『在线资源 > 技术文章』处下载。
Visual Studio .NET 学习之路
弈飞信息首席顾问 / 台湾微软特约资深讲师
李 清 培
**_ 摘要 _ **
本文将介绍 .NET 的整体架构 , 以及 Visual Studio .NET 的完整学习路径。在简略介绍 .NET 应用程序架构之后,将依 程序设计语言、 .NET Framework 、 .NET 应用程序、 Web 服务 四大主题介绍 .NET 完整的学习路径,不论是资深的程序设计师或程序的初学者都能快速的掌握 Visual Studio .NET 的核心技术。
另一方面 Microsoft 为了建立 .NET 应用程序开发能力的认证标准,特别针对 Visual Studio.NET 推出了两项认证, MCAD 与 MCSD.NET ,本文将一并介绍相关认证的需求,以及参考资源。
** 为什么是 ** ** .NET ** ** ?为什么叫 ** ** .NET ** ** ? **
在进入 .NET 学习路径之前,我们先要了解什么是 .NET ,以及为什么叫 .NET 。
** .NET ** ** 解决新一代因特网应用程序的需求 **
由于全球将近有三十亿的人口使用 Web ,企业与企业间的互动日趋频繁,使用者对网站的要求不单单只有浏览信息而已,更希望能够编辑、分析与交换数据等,企业开始期待一个崭新的程序架构,希望能够让应用程序、装置、与企业流程能够充份的协同合作。 Microsoft 为了解决以上的问题,便提出了一套以 Web Service 为核心的解决方案 Microsoft .NET 。
** 在 ** ** .NET ** ** 的时代, ** ** Internet ** ** 即是作业平台 **
Microsoft .NET 延伸了来自 Internet 及操作系统的概念,让 Internet 本身成为新操作系统的基础,也就是说,在 .NET 的时代,程序开发者的操作系统是架构在整个 Internet 之上,如此将使开发人员可以轻易的建构出程序,而不再受周边装置的局限,并可透过应用程序充分与因特网连结。
** .NET ** ** 学习路径 **
在教学的过程中常有学生问到学习 Visual Basic 必须具备什么条件,我常以半开玩笑的语调回答,只要会小画家就可以了。然而在 10 年前,想要编写一个窗口应用程序并不是件容易的事。直到 Visual Basic 的诞生,程序开发人员才开始体会到开发 Windows 应用程序是如此简便,就像画图一样把控件拖曳到窗体上就可以了,对一个像我这样写了几年结构化程序的人而言,真是一大震撼。
同样的,在 .NET 的学习上,跟十年前比较起来,也不是那么困难,但是若要能随心所欲的发挥功能,还是必须下些功夫。首先,建议您尽快体验 Visual Studio .NET 产品,只是看书、听研讨会,不如实际动手操作,以熟悉 Visual Studio .NET 的整合开发环境 (IDE) 。在这一方面 Microsoft 提供了许多的 Sample Code 可供练习;或是参加 CTEC 所举办各样主题的一日体验课程。
接下来则建议依下列四个步骤进行学习:
**_ 熟悉您要使用的程序设计语言 _ ** **_ _ **
**_ _ **
目前支持 .NET 的语言共有二十五种,内建于 Visual Studio .NET 的程序语言则有 Visual C++ 、 Visual Basic .NET 、 Visual C# .NET ,其中 VB.NET 与 C# 可以说是为 .NET 所量身订作的,因此在此建议以这两种语言为主。
至于选择那一种语言全看个人的背景,近年来, VB 的开发者希望 Microsoft 能推出更强大、程序架构的开发语言以符合企业的需求;而 C++ 的开发者则希望能 Microsoft 在整合开发环境 (IDE) 里,像 VB 一样,提供新的快速应用开发 (RAD) 特性以提高开发效率。这也是 Microsoft 发布 Visual Basic .NET 和 C# 的主要原因。
因此如果您原本学习 C+ + 或 Java ,可以选择 C# ,跟 C++ 与 Java 比较起来, C# 除了九成以上雷同,整体的语法更是精炼而优美, C# 同时也经审核通过成为一种工业标准的语言。至于原本学习 VB 的朋友,建议直接使用 VB.NET ,虽然在台湾,学习 C++ 有一种强烈的优越感,但是如果使用的是 ” Visual ”,重在快速开发, VB 其实是很好的选择,目前全球约有八百万人使用 VB 开发程序。
至于语言的效能上,由于 .NET 应用程序架构是采取两阶段式的编译,第一阶段先将程序语言透过专属的编译器编译成中间语言,第二阶段在由 .NET Framework 的成员 Common Language Runtime 将 IL 最佳化之后编译成机器码。 ( 限于篇幅在此不多加赘述,可参考 MSDN 相关数据,或下载笔者在 TechEd 及 PDC 研讨会资料。 ) 也就是说,无论用什么语言,都必须“翻译”成 IL ,因此也没有什么效能上的分别了。
**_ 学习使用 _ ** **_ Microsoft .NET Framework _ **
**_ _ **
在开发分布式应用程序时,除了快速开发工具以外,还必须有一套整合与服务这些程序组件的中介软件,且这一套中介软件必须能与操作系统充分整合、使用系统所提供的资源与服务。在上一代的应用程序的中介软件包括 MTS 、 COM 、 IIS 、 MSMQ 、以及后来的 COM+ ,而在 .NET 平台上,如前面所提到的,是以 XML 为基础的,且要达到 AP-to-AP 与 Programmable Web 的目标,因此需要一个全新的中介软件, Microsoft 提供给我们一个更强大的中介软件 .NET Framework 。
.NET Framework 的架构共分为五大部份,其中 .NET Framework 本身具有的包括共通语言执行期环境 ( Common Language Runtime 、 CLR) 、广泛的类别函式库,以及定义 .NET 语言的共通语言规范 (CLS) ,另外则为承载 .NET Framework 的操作系统平台,及支持 .NET 语言的开发工具 Visual Studio .NET 。
最底层的 Common Language Runtime 设计上有点像 Java Virtual Machine ,未来开发的 .NET 应用程序,都必须 Run 在 Common Language Runtime 上面。 Common Language Runtime 提供了非常多的 Service 让应用程序在开发上、或执行上更稳定、更快速。
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 23.05pt; LINE-HEIGHT: 12pt; mso-paginatio