微软产品市场经理谈Visual Studio 11的开放特性

最近一段时间有很多微软的新闻,特别是在Windows 8 以及Windows Phone方面,Visual Studio作为一款开发工具,在微软战略当中也一直处于非常核心的地位。近日,Visual Studio 11 Beta.Net Framework 4.5 Beta的发布,更引起了开发社区的广泛关注,本文中,来自微软大中华区开发工具及平台事业部的廖浩志、亓光宇、李剑波以及销售市场总监刘伟,分别对大家比较关心的问题进行了解答,详细内容如下:

问:Visual Studio 11跟Windows 8,在整个界面和生态环境上,都有重要的改变。会带给国内行业,或者一般的企业、个人带来什么切身的影响?

刘伟:Windows 8 和Visual Studio 11是高度关联和高度整合的。对生态系统带来的价值主要有两个层面。第一个层面是开发人员:Visual Studio 11试图给开发人员搭建一个非常好用、简易的开发环境。不仅是过去非常专业的开发人员,对于不是很业余的开发人员,都可以借助于Visual  Studio 11开发基于Windows 8、Windows Phone的应用,最终会发布到应用商店里,从而给他们带来价值。

第二个层面,从商业用户、ISV(独立软件开发商,Independent Software Vendors)、合作伙伴的角度来看,我们的Visual Studio 11支持了更多的开发语言。所以说,过去可能并没有基于微软的语言和平台来做开发的,现在可以加入到这个生态系统。我们也支持了更多的PhoneFactor,过去基于X86的架构,我们的Windows8、Visual Studio 11开始支撑ARM的架构,有更多的硬件厂商和软件厂商,在未来都可以借助Visual Studio 11开发更多的商业应用,提供给他们的客户,创造更多的价值。

从开发人员、商业客户、合作伙伴来说,Windows 8和Visual Studio 11都可以给他们提供创造附加价值,以及创造全新业务模式的机会。

问:因为Visual Studio 11的发布,Blend工具上应用JavaScript,添加Metro架构功能等,是不是只针对Metro风格和架构?是不是只针对触屏的应用?

亓光宇:微软的开发工具,并不只是开发触屏的应用,普通的HTML页面和JavaScript都可以用这个工具开发和修改。另外,还强调一点,我们 现在Windows 8的Metro应用都是支持触摸的,所以并不是绝对的割裂,而是交互的状况。如果我们开发自己本身独有的空间和UI风格的时候,使用Blend没有任何的 问题。如果使用Windows Metro自身自带的控件,Blend都是需要的。不是说一定支持或者一定不支持。

问:关于产品兼容性的问题,Visual Studio 11能够兼容Visual Studio 2010,对于2008版本或者以前的版本,建一个项目库的时候,用2010 或者11 打开的时候,原来的库就废掉了。对于2010之前的版本兼容问题怎么解决?

李剑波:这个问题是对既有的历史版本上开发的资产,我们一定会进行保护的。比如用Visual Studio 11打开的时候,会识别项目原来存储的状态。基于您的选择,希望这个项目升级到Visual Studio 11平台项目组织结构上,可以帮助您,后续有一些提示指导您做这样的工作。如果不升级的话,仍然对你项目大部分的功能,在.NET Framework同一个版本上进行工作,不会对原有的项目造成冲击的。

廖浩志:现在我们有.NET Framework 4.5 Beta,不管是安全性,还是效率上,都有很大的提升。建议客户升级到.NET Framework 4.5尝试一下,会对软件开发的速度有一些帮助。

问:关于Visual Studio 11在微软整个产品体系有了很酷的功能增加,比如说硬件支持方面,增加了ARM的拓展之外,在System Center之间的联动,以及邮件里面协作的功能实现,如果我的邮件系统不是Outlook,而是其他的邮件系统。如果运维这块,监控这块、虚拟化这块, 不是用微软的产品,能不能实现?

李剑波:首先微软也是一个开放的平台。在整个协同处理过程中使用的邮件,不是微软的。比如说开源的模式,对于这些的处理,我们仍然可以兼容,用户邮件处理流程不会由于是用微软,还是不用微软的产品而造成系统的影响。

另外一个方面,对于运维的处理,我们不仅可以把微软运维产品和开发的环境结合在一起,实现DevOps,其他的运维厂商我们也提供了支持。对于第三方厂商,唯一的缺陷就是没有有效的直接的适配器,只能借助第三方厂商的适配器,或者借助其他的模式再去购买。然后跟我们的Team Foundation Server做联动,Team Foundation Server本身是开放的,可以任何的系统,JAVA的API也好、.NET、Unix 基于C的应用都可以用Team Foundation Server完成DevOps的处理。

Team Foundation Server本身所管理并不仅限于微软的体系,可以管理JAVA、Unix  C、C++,Team Foundation Server作为管理方面来讲,是开放的平台体系。这个方面不需要有太大担心。

廖浩志:目前软件开发阵营较多是使用.NET、JAVA,对于JAVA的支持,在Team Foundation Server上,我们有一个产品叫Team Explore Everywhere,如果是JAVA的开发人员,用Eclips可以安装Team Explore Everywhere,现在就可以在Visual Studio 11网站上下载这个产品,Eclipse打开后会有一个Team Explore的视窗,可以连到自己内部搭建的Team Foundation Server。

问:Visual Studio下Eclipse 也可以在将来支持插件扩展模型?Visual Studio 11现在支持Metro风格,是否可以解读为后PC时代的平板铺路。

廖浩志:第一个界面设计,我们做界面设计的开发或者改变的时候,都不是微软说怎么做就怎么做。我们很重视客户需求,做界面的设计和改动,都是通过调 研,我们做了很多的Focus Group,把很多的开发人员,测试人员,架构师和项目经理召集在一起,进行访谈,了解客户希望微软怎么改变以帮助客户加速软件开发,或者有更好的效率, 或者让工作状况,整个团队更透明,识别开发团队的贡献。

我们通过很多的方式了解客户的需求,界面的改变,并不是特定的说向什么地方靠拢,我们是根据客户的需求进行的改进。敏捷开发,微软也采用敏捷开发, 现在有90%的开发小组都在用,就是实时接受客户的反馈,实时不断的调整,持续的集成。界面的改变,这些都是客户的需求反馈,我们接受这个反馈并进行了改 变和改进。

李剑波:澄清一点,作为Visual Studio跟Eclipse,开发平台或者其他的平台,Visual Studio跟随客户的需求改进,Visual Studio本身就是组件化、开放化的方式。Visual Studio 11在很多方面都做了提升,例如,底层扩展性。对于单元测试,原来Visual Studio先天自带的是对微软单元测试框架的支持。现在这一块可以根据自己的需要,把Visual Studio 单元测试框架替换掉,这个在Visual Studio 11版本里面体现的越来越明显。你也可以用其他的编译器替换成你所需要的环境,然后完成你自己的开发工作。

所以说,组件化、模块化体现在各个方面,包括刚刚讲的IntelliTrace,都是根据你的需要,启动特定的模块和数据进行处理,就是体现更灵活的Visual Studio发展趋势。

问:Team Foundation Server包含了许多开发团队的成员,例如部门经理、项目经理、开发人员和测试人员,这个过程中,Team Foundation Server有没有对工作权限和工作设定的模型,帮助分解谁来做任务调整的模型?

李剑波:具体来说,包括几个方面。一个是称之为流程权限。在我们整个开发过程中,不同的环节,不同的角色,在每个特定的操作的时候,都会有一定的授 权和分派的功能。比如项目经理,可能就有权利给我分派任务,我自己就是一个开发人员,不可能自己构建一个任务分配给我自己,这是流程权限。

另外,数据权限,Team Foundation Server整个协作过程中,对于数据的访问,比如数据是源代码,或者是各种各样的报告,还有就是敏捷门户,本身体现门户的概念,什么人能够看到什么样的 报告,能够访问到什么数据,都是靠整套权限模型,跟具体场景结合在一起。

通过 Visual Studio 11,我们可以细化到对于某个文件的读写更改以及生成版本的权限,全部过程给一个后续的审批,做的工作将来有纪录,做完了不是做了就做了,后来还可以做审 计的。流程权限、数据权限、底层细致权限方面,在Visual Studio 11里都提供很好的支持。这个可能要根据我们具体的客户场景进行详细的权限定制化,满足工作的需要。

廖浩志:流程权限的部分,我们知道现在很多人在用敏捷开发,很多人也在使用CMMI,我们默认提供三种模板给我们的客户使用,客户可以自定义,也可以直接采用CMMI或Scrum模版。

问:Visual Studio 11对于Windows Phone的支持,有没有一个版本。另外,在云的开发测试支持方面,有两个方式,目前在国内是否有用户?

廖浩志:Visual Studio 的确对Windows Phone有支持,请参考产品手册, 上面有很清楚的说明,对照到不同的版本进行支持。针对云计算的开发,我想简单说明一下,有关开发测试云的概念,分两块。举个例子来讲,在软件园里,有很多 中小型企业。对于软件园来讲有两种选择,一种就是软件源自行建构开发测试云的解决方案,提供给软件园无法自行搭建云计算环境的企业使用,这对软件园来讲是 公有云的概念。

另外,也有针对私有云的解决方案,比如说在某些比较大的企业,或者数据是比较有机密性,不愿意让其他外面人存储,或者担心有安全问题,可以选择自行 搭建开发测试云的私有云解决方案。Visual Studio除了开发工具本身之外,对于云端的测试,以及团队协作上,都提供相对应的支持。Java开发,或是跨平台的部分,都可以同样采用微软提供的开 发测试云的解决方案,Team Foundation Server不只支持.NET的平台,JAVA平台也支持,我们讨论的趋势是整个研发团队怎么协作,而不局限在编程语言方面的问题。

刘伟:在微软的平台和技术来讲,都非常多。Windows Phone、Windows 8、IE 等很多技术,不管是微软什么平台和技术,我们开发工具就是一个,Visual Studio。所以只要涉及到微软相关的内容,我们的开发工具就是Visual Studio,我们一定能够支持。

相关报道

Visual Studio 11 新界面引发热议

Visual Studio 11 Beta支持多种测试框架

预览Visual Studio11: 敏捷的支持、团队协作以及代码克隆监测

Visual Studio 11预览:DirectX和SharePoint特性

Visual Studio Beta发布周回顾

Visual Studio 11 Beta版及 .NET Framework 4.5 Beta免费下载


感谢郑柯对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

This entry was posted in IDE. Bookmark the permalink.

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s