【VB开源代码栏目提醒】:网学会员鉴于大家对VB开源代码十分关注,论文会员在此为大家搜集整理了“细说VB.NET(下) - 软件工程”一文,供大家参考学习
细说下 表单和新IDE面孔 Visual Basic.NET 的面向对象功能很伟大但第一次启动
VB.NET 时还注意不到它。
可能你注意到的第一件事是它的 IDE。
IDE看起来可能很熟悉建立VS.NET IDE的团队以前的工作是开发
VB的IDE对IDE的增强借鉴了
VB IDE的经验。
同时IDE的改变远比外表显示的深刻。
所有.NET语言使用相同的IDE并且IDE中的新工具功能强大又易于理解。
你能把任何一个设计窗口设置为自动隐藏 就像你能自动隐藏Windows任务栏那样这样就大大地减少了混乱。
主工作区域是一系列选项卡这意味着IDE不再同时显式多个表单和
代码模块。
当打开对象的源
代码时IDE在它的主工作区域为
工作的对象添加一个新的选项卡。
IDE还包括一个叫作任务表Task List的新窗口。
它的内容由IDE创建的项目组成。
例如如果在试图编译一个工程时收到一个错误
VB在任务表里创建一个项目来解释这个错误。
你能直接向任务表里添加项目或者通过在
代码里以 TODO:开始一个注释行你可以在
代码位置和任务之间建立联系。
我喜欢Microsoft实现任务表的方式在程序出炉前都需要完成些什么估计它能帮我省掉很多时间和麻烦。
看到它时你最容易产生的一个想法就是以前怎么就没人想到它呢 你能注意到的另一个变化就是
VB.NET的表单。
Microsoft废弃了旧的表单引擎而使用Windows Form代替它。
所有基于 CLR的语言都使用Windows Form引擎。
相对于
VB6的表单引擎它有几个重要的改进。
例如Windows Form让你能创建能自动调整组件尺寸的表单并允许将控件锚定在表单里的特定位置。
换句话说不再需要使用第三方控件就能完成这些特殊任务。
Windows Form还允许表演像透明表单这样的很酷的技术。
过去
VB隐藏了建立表单的所有魔术。
你使用IDE设计表单并把
代码添加到Initialize事件上但你没有手段来控制这两点之间的过程。
现在表单就是一个类它包含用来建立表单所有的
代码。
我把这些
代码称为肥料
代码因为大多数开发者希望远远离开它们越远越好。
要想可靠地弄坏你的程序没有比折腾这些
代码更好的办法了。
另一方面技术娴熟的用户可以通过这些
代码做很多很酷的事因为它让你能走到
VB.NET表单的幕后。
要是你不想看到这些
代码你也能不看因为新
代码编辑器有展开和折叠
代码区的功能并且这些肥料
代码是默认折叠的。
代码编辑器还有几个很酷的新功能。
例如现在它自动为你缩排所有
代码而且还干得不错它还有内置的显示行号功能。
创建编译的服务器端
代码 除了新的Windows Form引擎.NET还包括一个为创建Web表单而特别
设计的表单引擎。
这些被称为Web Form的表单很聪明就像
VB让你能很容易地为传统Windows桌面应用程序创建表单一样它们让你能方便地为Web创建表单。
Web Form是 ASP.NET里的技术让你能使用熟悉的RAD工具创建带有
代码的表单。
创建的ASP.NET
代码编译并驻留在服务器上并在那里被执行然后以HTML方式发送给任何一个支持
HTML 3.2的浏览器。
底层结构捕获客户端上的事件数据并把它发送给服务器。
这意味着可以使用各种用户界面工具可以利用现有的表单设计技巧而且应用程序界面是不依赖浏览器的。
如果可以放弃不依赖浏览器你还有另一个选择来利用Internet Explorer 某些功能特有的优势。
Web Form使支持Web的应用程序能更容易地创建更好、更丰富多彩的用户界面。
Web服务策略
VB.NET里的另外一个重要的面向Web的功能是Web服务。
Microsoft的市场部门把Web服务列为采用.NET的几大理由之一。
实际上Web服务的本质就是使用标准协议的、由Web服务器提供的、类似于COM的对象。
注意在技术上它们并不是COM对象但和COM对象的表现方式很相像。
Microsoft希望看到所有的公司使用Web服务并且未来的应用程序可以简单地“粘”在不同的Web服务上就像现在可以使用Visual Basic for Applications VBA建立基于Office和支持VBA的程序的解决
方案一样。
在PDC上对于它希望开发者如何“粘”在这些服务上Microsoft提供的一个演示程序给出了很好的例子。
在这个
演示程序里一个假想的诊所通过Web服务提供预约
系统演示了你可以怎样使用智能电话通过Web进行预约。
Visual Basic.NET 甚至会允许你
查询服务器并获得关于服务器能支持的所有Web服务的相关数据。
通过IntelliSense dropdown这个绝对有用的工具程序员可以访问Web服务。
Web服务是Microsoft雄心勃勃的战略但只有时间才能检验它是否能成功地被广泛接纳。
Microsoft试图消除与包装和分发应用程序相关的
问题包括令人恐惧的DLL。
所有.
NET应用程序被封装为元件。
元件包含着数据以描述它运行所需的东西。
这些数据被称为货单包括很多信息例如元件身份名称、版本等等一个列出了所有文件之间的依赖关系的表以及它们的位置和版本包括DLL相关数据的外部依赖关系信息还有其它元件需要而开发者没有创建的资源。
元件是自说明的通过它们的货单所以.NET应用程序不需要修改注册表才能工作。
换句话说你不再需要
注册表组件。
在最好的情况下即客户机里已经有了.NET运行库时分发一个复杂的应用程序可能只是把一个文件夹复制到目标机器上这么简单的事。
元件的另一个好处是你可以让不同的应用程序使用同一个DLL的不同版本并且协调地运行在一台机器上。
如果所有这些都可以像计划中那样工作有关DLL的地狱和版本的噩梦就将成为往事。
正确之路 Microsoft彻底更新了它的技术而不仅仅是核心语言。
例如在Visual Studio.NET里同时提供了ADO.NET这是有特殊优点的下一代ActiveX Data Objects ADO 版本。
它的一个灵活改变是ADO.NET用Extensible Markup Language XML作为在组件之间传递数据集的格式。
这意味着接收组件不一定必须是ADO.NET组件同时接收组件可以接受任何XML 格式的数据集。
谈到XML它支撑着VS.NET中的任何东西从配置文件到远端过程调用。
ADO.NET在处理断开的数据集时比 ADO的性能要好并且具有更好的伸缩性。
Visual Basic.NET对我们都很熟悉的
VB做了重要的改变。
C革命性地跳跃到.NET后有了一个新名字C而Visual Basic的名字没变。
然而如果你把
VB.NET当作语法相似的一门新语言而不是简单的“升级”可能掌握起来就要容易一些。
本文给你一个起点但吸收掌握各种知识并对未来做出有根据的决定是一个艰苦的过程它只是这个过程的一条起跑线。
我不知道.NET会有多么成功它的很多地方吸引我但有些地方并非如此。
这个工具做了大量承诺它夸耀很多功能能使
VB开发者更简单地创建更有伸缩性的高端应用程序。
最后它的成功将取决于开发者能多好地将它应用于现实世界。
纵观Microsoft在PDC和Beta 1版本之间的性能和稳定性上所跨过的这一步我坚定地认为Microsoft走对了路