主题:【原创】VS.Net 2005 EA Beta 1 使用体验 -- 老兵帅客
前些日子我下载了Visual Studio.Net 2005 Cummunity Technology Preview May 2004版并写了一篇《使用体验》,这两天再接再厉,我又下载了Visual Studio.Net 2005 Enterprise Architecture Beta 1版并试着在我的Windows XP Pro机器上进行安装,下面是一些安装和试用体会。
一。Visual Studio.Net 2005 Enterprise Architecture Beta 1是Visual Studio.Net 2005的第一个Beta版,它和上个月出的Community Technology Preview版是不兼容的,也就是说既不可能在CTP的基础上安装Beta1,也不可能倒过来安装,同时它们还不能够并存在同一个操作系统之下。因此,如果想同时体验这两个版本,只能够装两个操作系统,然后每个操作系统下面装一个。
二。我下载的是CD版,一共八张光盘,包括了两张VS.Net EA Beta 1,三张对应的MSDN for Visual Studio 2005 Beta 1,一张Visio Tools for Visual Studio 2005 Beta 1,一张Remote Debugger for Visual Studio 2005 Beta 1和一张Amberpoint Express for Visual Studio 2005 Beta 1(这个用于ASP.Net),总共是占了3.05G硬盘。
这个软件可以和Visual Studio.Net 2003 EA和平相处,它需要.Net Framework 2.0 Beta的支持,软件本身全套安装需要大约3.1G的硬盘空间,附带的MSDN全部安装则需要另外的2G的硬盘空间,另外Visio和其它还需要大约200M的硬盘空间,因此总共是5.3G的硬盘空间,不愧是EA版,比那个CTP多占了1G的硬盘空间。
三。这个版本没有提供CTP所包含的software development life cycle功能,但是包含了以下特性:
1。类似于Rational XDE的Class Diagram能力。该版本这方面比CTP有所进展,能够做到双向了,但是感觉上还是不如XDE。
2。足够的重构支持。Java IDE里面的重构能力现在Visual Studio.Net也提供了,我试了试,基本没有问题。
3。针对EA的需要,提供了一些应用程序/模块应用流的Diagram,包括Application Diagram,可以很方便地在不同的应用程序(例如客户的应用程序和Biztalk)之间构造应用流。不过由于时间限制,我没有仔细试验这方面的功能。
4。团队合作与项目管理,依然使用的是Visual SourceSafe。以前的CTP在这方面有时候有问题,这个版本好多了。
5。在语言方面,这个版本在VB.Net方面提供了Edit and Continue能力,但是C#还是不行,C++则有很多限制。考虑到本人对VB的不屑,这是个坏消息。
6。不明白是为什么,在CTP中还存在的ASP.Net应用程序开发能力在这个版本中不见了,代之的是一堆对掌上设备应用程序开发的支持能力,很长的一个列表。
四。在软件开发方面,该软件提供了Visual Web Developer,感觉上比Visual Studio.Net 2003 EA确实很有进步。另外,据说对Web Service应用程序的开发和Web Service Flow的支持改进很大,不过我还没有试到。
结论:这个版本的Visual Studio.Net 2005是和CTP分叉的一个版本,它侧重的是EA的需要而不是Developer/Teamwork的需要,不过我确实希望这两个版本能够尽可能早地合并。在用惯了包含SDLC几乎全部方面的Java IDE以后,再回来使用微软的没有SDLC能力的IDE,感觉上比较不爽。
本帖一共被 1 帖 引用 (帖内工具实现)
装的时候,出了个1935的错误。后来搞定了。但是还没有试着写个小程序。
老兵看不起VB是可以理解的,在VS 6.0以前,VB都不怎么样。
但是在VS.NET里,VB与C#的差别就很小了,Dan Appleman有一本书介绍两者的差别,Visual Basic .NET or C#: Which to Choose,感觉很客观。
即使是VB 6,也还是有其可取之处的,例如用来作Windows的UI,还是很方便的。
VB的最大坏处,就是上手太容易了,早两年,阿猫阿狗都自称自己是编程高手,把这行的名声都搞臭了。
依我看,不同的语言,只是不同的工具而已,工具能否发挥作用,关键还是看人。
至少我的感觉是这样的,不知道为什么。我感觉微软内部的Team之间也在竞争!
除非你想试验EA的那些特性,例如Application Diagram什么的,否则还是用那个CTP好了。
在CTP里面,单元测试和性能分析全有了,而这里却没有,唯一的共同点就是重构,真让人搞不懂微软到底是什么意思,因为单元测试已经成了现在软件开发的基本配置了。
坦率地讲,至少在开发工具的完备性方面,Java IDE已经走到了微软VS.Net的前面。
我看不起VB的原因,一个是因为直到VB 6.0以前,它都是Object-Based,而不是Object-Oriented,这样很多事情用它干就太痛苦了;另一个就是它语言上的历史包袱太多了,例如On Error,总是让人想起Basica时代。
VB 7.0解决了第一个问题,现在它是Object-Oriented的了,可是还没有解决第二个问题,结果就是On Error和Try/Catch并存,什么事儿啊。
VB 6的一个大问题,就是它的运行性能实在是不怎么样,也就是做快速原型和用户界面。用它写算法程序的话,性能差的能把人急死。不过话又说回来了,和Java乃至.Net比起来,VB 6还是挺快的,时代不同了。
另外,VB 6做COM的功能太弱了,简单倒是真简单,COM构造成了傻瓜机了;不过这个傻瓜机也太傻了,只能够做最简单的COM,还是算了吧。
我以前做COM的时候,都用C++。
我觉得主要是因为VB的开发模式代表了当今商业应用程序的主流。
VC 6依然不是RAD的,虽然它可以很方便地编辑资源和映射信息;而C++Builder、Delphi和Java IDE全都是RAD的,也就是画界面、选择事件和填入对应的事件处理程序。这样比下来,微软的VS新版本不用VB的开发模式倒是怪事了。
要简单易用,又要功能强大,很多时鱼与熊掌不可兼得。
曾经看过文章,讲微软开发VB 5.0/6.0时,对是否加入Inheritanc 和 Multi-thread COM Component,有过争议,结果,决定还是Keep it Simple Stupid。 Multithread欠奉,只做了个Interface Inheritance。
说VB 6是Object Based,真是说到点子上去了。
说VB 6的COM功能弱确实没错,但就这点东东,在澳洲这边,我发现真正弄通弄懂的VB Programmer,没有几个。 北美,中国那边的情形不清楚。
我想 VB.Net 里,On Error 和 Try Catch共存,大概是为了Migration的方便吧,也是无奈之举。
这是一个非常常见的商业做法。最简单的来说吧,丰田公司就把给老百姓开的车叫“丰田”,给有钱人开的车叫“凌志”。这条线很清楚,买主也知道自己趁什么车,不会搞混。结果是丰田是高中端通吃。
VC和VB任务不同,定位不同,所以不好直接比。就像没有人拿Toyota和Lexus比一样。