.Net2.0的正式版快发布了吧?我想很多人可能现在也和我一样正在思索在.Net2.0下如何调整自己的开发思路,借助其新的特性及功能来提升自己的开发效率和质量吧?在这我总结了一下我将要做的一些工作,以供大家参考。如您有其它方面的建议请不吝赐教:

.Net2.0新特性一:支持泛型
在千呼万唤声中泛型支持终于在.Net2.0中得以实现,而微软也提供了针对常用数据结构泛型
支持的System.Collections.Generic新的名称空间。

有了泛型最大的优惠我想可能就是可以比较省事的实现强类型吧?例如在.Net1.1中我通常用继承CollectionbBase的方式或通过直接实现ICollection接口的方式来生成BusinessObjectCollection,但在其后继类中为了得到强类型的数据,我不得不一遍又一遍的用同一逻辑重写Insert,IndexOf, this[]等等毫无意义的方法,有了泛型现在我终于可以在BusinessObjectCollection基类中只写一遍这些逻辑了,但这也意味着以前的针对程序架构设计的Framework要重新设计一下了。

.Net2.0新特性二:partial类的支持

我想微软一直是一个追求干净整洁的设计师,这在partial类的设计中再次得到了体现,现在通过partial类我们可以把设计器自动生成的代码和用户编写的代码完全分开。这个创新对我们的意义可能不只这些,为什么呢?因为它方便了对程序生成软件的支持,比如说我现在所有的数据访问层和大部分业务层程序都是通过Codesmith生成的,但是用户界面层由于涉及到很多界面元素的设计我基本都是通过纯手工或简单的复制粘贴的方式实现的,现在有了partial,那界面层的逻辑部份也可以由Codesmith生成了,看来我的模板也要调整一下了。

.Net2.0新特性三:全新的数据绑定体系

可能作过组件级编程的人都有一种感觉在.Net1.0中针对数据的绑定的编程特别烦锁,哪怕只是实现一个最简单的List类型控件的数据绑定也需要大量的代码,并且需要较高级的技巧,微软也意识到了这一点,所以完全重新设计了一套数据绑定体系,并且为了更好的支持数据绑定还提供了一系列的数据绑定组件基类如BaseDataBoundControl等等,这意味着以前的一些组件为了更好更高效的支持数据绑定可能要重构。

.Net2.0新特性四:全新的功能扩展

.Net2.0在很多方面作了全新扩充

如System.IO.Port中提供了针对串口(SerialPort)的支持,现在如果想开发一些针对串口硬件的控制程序再也不用引入VB6.0中的MSComm组件(该组件仅支持窗体方式下编程)了,为些我决定重新改写我以前编写的一个基于串口短信猫短消息接收发送组件了。

在ASP.Net中提供了WebPart(类似SharePoint Server WebParts)和MasterPage(相信很多人都用过Container,Region, MasterPage组件吧,思想上差不多)的支持,现在可能很容易的定制界面并且可以作到和业务逻辑代码高度分离,当然这也意味着是时候改写我以前针对Web程序开发的一些架构程序了。

.Net2.0新特性五:已有功能扩展

现在验证器控件可以分组验证了,以前Aspx页面提交将触发整页的数据验证,在过去我们不得不通过Panel隐藏显示等功能来有选择的触发部份验证,现在好了,验证器控件都可以属于一个组,而submit类型的按钮也可以指定触发哪一组验证,这可以让我们在界面上作一些更合理的设计。