Hotcan

享受生活的点点滴滴

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
最近在这里发表了很多言语,伤心的,难过的。好像和博客园的主旋律:专注.NET技术有很大的偏差。此外我在上一篇文章中说要保持头脑的清醒,无论什么时候都应该知道自己应该做的是什么,这让我下决心今天来写一篇关于.NET的文章,而不要总是在一些其他的事情中消沉。

前几天一个朋友送了我一套MSDN professional. 我觉得对我而言最有价值的就是Visual Studio.NET 2005 beta (Whidbey)和 SQL Server 2005 (Yukon)了,一直想找个时间好好看看这个新东西,可惜一直没有时间,所以趁上午有时间,初步研究了一下。

我主要在界面上以及代码上进行一定的了解,此外还看了一下C# 2.0里面所谓的范型的使用。

首先是IDE的改变,总体而言比2003漂亮的许多,我创建了一个Windows Application,发现以下的一些区别。
1,首先是生成Form的自动代码和Form的逻辑代码分开了。此外Main函数放到了一个叫Program.cs的文件里面。


2,控件的拖动增加了对齐的线,能够更好地帮助控件的布局。


3,增加了一个Outline,把Form上所有的控件关系都放了进去。


4,自动生成了一个资源文件Resources.cs,而且可以直接编辑处理,这比以前用SDK提供的一个工具,或者用命令行resgen生成要方便多了。


5,编译的时候可以直接选择CPU的类型


6,可以自动生成类图。


接下来我研究了一下代码页里面的情况,主要是关于IntelliSense和Refactor的使用。此外的改变就是括号的匹配等等。
1,IntelliSense主要包括Generate Method Stub, Insert Expansion等等,可以自动生成一些代码,很方便。

2,Refactor主要是用在修正变量名字,修改函数参数等等。


由于前一段时间刚用过Eclipse,感觉这些功能都差不多,也没什么多说的。

接下来我研究了一下所谓的范型,也就是C# 2.0和Java 5.0都号称支持的东西,有点像C++里面的模版类。随便写了段代码,如下:
Class Stack的定义:
public class Stack<ItemType>
    
{
       
private ItemType[] items;
       
private int top,size;
       
private bool IsFull;

        
public Stack(int size)
        
{
            top 
= 0;
            items 
= new ItemType[size];
            
this.size = size;
            
this.IsFull = false;
        }



       
public void Push(ItemType data)
       
{
           
if (IsFull)
               
return;
           items[
0= data;
           top
++;
           
if (top == size - 1)
               
this.IsFull = true;
       }


       
public ItemType Pop()
       
{
           
if (top == 0)
               
throw (new Exception ("The stack is null"));
           top
--;
           ItemType item 
= items[top];
           
this.IsFull = false;
           
return item;
       }


    }

调用。
 private void button1_Click(object sender, EventArgs e)
        
{
            
try
            
{
                Stack
<int> stack = new Stack<int>(1);
                stack.Push(
3);
                MessageBox.Show(stack.Pop().ToString());
            }

            
catch (Exception ex)
            
{
                MessageBox.Show(ex.Message);
            }

        }



这段代码里面主要的差别就是类带了类型信息<ItemType>,不用像以前还需要unboxing object获得实际的类型。

最后是Debug,故意写了个Exception,发现这个捕捉异常的界面做得很Cool。调试的时候还可以随便修改参数的值。


总体而言这个新的界面还是非常Cool的,我的研究基本上也就是按照MSDN上写的新特性简单地看了一下。看来微软还是在不断地进步,帮助程序员做了太多的事情。最后引用一篇文章“Microsoft Developer Tools Roadmap”
他讲得要比我写得详细得多:http://msdn.microsoft.com/vstudio/productinfo/roadmap.aspx 。希望对大家有所帮助。
posted on 2004-11-25 14:57  Hotcan  阅读(8996)  评论(9编辑  收藏  举报