从Visual Studio看微软20年技术变迁

前言

这个世界从来都不缺变革,从工业革命到晶体管和集成电路,从生活电器到物联网,从简陋人机到精致体验,我们在享受技术带来的便捷的同时,也在为复杂设计而带来的挑战和生产力下降而痛并快乐着。而迫切期盼的,就是趁手的工具。曾几何时,Visual Studio 一直就是软件开发的高效的标杆,从VB的简洁语法和简单的拖拽开始,Visual Studio 不断的完善,不断的适应快速变化的,加上成熟的生态,让微软世界里的各个伙伴们活的有滋有味。

近年来,微软开始了拥抱开源,投资云技术,在开发工具领域有明显的减持,这也让很多追随者感到不安。如今 Visual Studio 2017 的发布,给了开发者几点很明确的信号:

  • 移动开发前景无限,解决方案多样化
  • 跨平台服务器支持和服务器轻量化
  • 开发过程标准化和开发效率持续提升
  • 服务优于产品

作为微软工具的受益人,我们相信这是一个好的变化,有了变化,才有提升,才能提供更好的服务。

 

回顾

那么,在 Visual Studio 的20年发展历程中,都经历了哪些历程和技术变革呢?

 

根据微软的资料,第一个使用 Visual Studio 品牌销售的是 Visual Studio 97,后续版本(VS6)成为一代经典,即使今日依然还有企业和公司在使用;之后 Visual Studio 携 .NET 而来,开创了C#时代,WinForm 替代了 VB,控件替代了 OCX,ASP.NET WebForm 开始崭露头角;随着 Windows Vista 的惨淡,同时推出的新一代图形界面技术 WPF 也发展缓慢,为了促进 WPF 发展,微软使用 WPF 重写了界面,发布了 Visual Studio 2010,由于性能低下,资源消耗严重,这一版本流传一般,随后微软快速重构,发布了高性能的 Visual Studio 2012;随后,软件开发开始强调团队集成,增强了 TFS 在 Visual Studio 的话语权,每次发布都会随着发布 TFS 的新版本。因此我划分五六个技术时期来详细解说。

 

199x-2003年 COM/ActiveX 时期

微软在开发 Win3.x 系列的时候公开出来的一套架构体系,目的在于根据接口运行时动态加载实现,从而降低开发耦合。这一时期,主要的开发语言是C++,但是开发效率比较低,当时的技术前沿是RAD,VB(语言)和 ActiveX(技术)刚好搭上这一班车,同时正式让控件这个细分市场也开始崭露头角。随着90年代后期 Java 和 Web 的崛起,COM/ActiveX 受到了挺大的冲击,尤其是 web 编程,ASP 过于简陋,执行引擎 VBScript 并不能将 VB 中的 RAD 概念引入,而且原生 VBScript 语言本身并不成熟,限制较多,解决方案是在 ASP 中调用 COM/ActiveX,这样整个开发变得很复杂,慢慢消失在历史中。

 

2002-2010年 WinForm/WebForm 时期

实际微软开发 .NET 并不是非常顺利,一开始借鉴了很多 COM 的设计理念,但是很多基础设施并没有实现出来,导致早期的 ASP.NET 并不是很稳定,很多开发者为了考虑兼容性,甚至依然延续上一代产品的架构,通过导入 COM 组件来实现底层,而 ASP.NET 仅仅是一层表现。另一面,由于 C# 语言的开速发展,结合 RAD 概念而开发出来的 Designer(设计器)迅速让 WinForm/WebForm 成为开发利器,无论效率还是成品效果都获得较高的用户认可。

 

2007-2013年 WPF 时期

随着.NET平台的发展和成熟,此时 WinForm 用户开发抱怨界面的精致度问题和资源利用问题,但是这些是由于 WinForm 的底层实现仅仅做了一层 Win32 API 封装导致,所以很难通过增强和修补来提升用户体验;恰好微软推出其新一代操作系统,主打功能就是用户体验,为此,在大约2005年左右开启了 WPF 技术项目,正式在 VS2008 中开始主推。但是由于性能和复杂实现,导致 WPF 认可度并不高,而同期推出的 Silverlight 更是没有坚持几年,就淹没在历史尘埃中了。

 

2009-2016年 ASP.NET MVC 时期

WebForm 技术虽然因为 RAD大受欢迎,但是其 ViewStates 技术让大型项目和互联网项目深受困苦,如是一部分人开始重构现有的 ASP.NET 技术,将业务和展现分离,逐渐形成了早期的 ASP.NET MVC 概念,随后微软快速跟上,并推出 Razor 技术,并彻底重写了 HTTP 底层,彻底移除了 ViewStates,从此 web 开发不仅高效,同时也能符合 HTML 最新标准。到2012年,SPA 概念开始流行起来,越来越多的公司开始尝试前后端分离,这让 ASP.NET 有了一点危机,如是开始了 ASP.NET MVC WEB API 项目,在轻量级的 MVC 架构基础上,再一次简化,让基于 RESTful API 的应用能够在 .NET 圈里采用。

 

2014-至今 UWP(Universal Windows Platform)时期

说真的,我不是很愿意把这个列出来作为一个独立的技术圈来说,实际上这个 UWP 并没有多少新鲜的事物,更多的是一个概念,其表现层是 WPF 的 Xaml,底层是基于 projection 的一个通用平台概念(比如PCL和WinRT),唯一能称道的是后来加入的 Xamarin,将 C# 带到全平台移动开发领域,不过,目前仍属小众,还得继续努力。

 

2016-至今 .NET Core 时期

自2016年正式发布以来,.NET Core 表现越来越好,借助更加强化的 OWIN 接口,很好的将 web 开发做解耦,让第三方中间件有了更多的表现机会,但总体依然年轻,大规模采用仍需时日。

 

总结

时间荏苒,Visual Studio 品牌已经迈进20周年,从十几年前开始做 .NET 控件开发就每天和 Visual Studio 打交道,也算是经历了和见证了它的起起落落。如今,VS2017 正式宣布发布,并为此筹备了一场盛大的20周年庆典,也借此机会,祝愿 Visual Studio 和微软技术越发展越好。

目前已经有部分产品宣布其新版本会支持 Visual Studio 2017 了,ComponentOne 的 2017V1 版本就是其中之一。ComponentOne Studio Enterprise 是一款专注于企业应用的.NET全功能控件套包,支持 WinForms、WPF、UWP、ASP.NET MVC 等多个平台,帮助、在缩减成本的同时,提前交付丰富的桌面、Web和移动企业应用。

 

相关阅读:

【报表福利大放送】100余套报表模板免费下载 

是什么让C#成为最值得学习的编程语言

C#开发人员应该知道的13件事情

Visual Studio 2017正式版发布全纪录

 

时间: 2024-10-10 00:32:31

从Visual Studio看微软20年技术变迁的相关文章

Visual Studio 2010微软云计算架构构建云服务

4月12日,作为全球发布活动的第一站,微软新一代开发工具Visual Studio 2010在中国率先上市.Visual Studio 2010是微软云计算架构重要组成部分之一,它拥有强大的开发功能,支持开发者基于Windows Azure开发更多应用,从而进一步丰富微软的云计算平台.如果说今年初正式推出商用的云操作系统Windows Azure是微软云计算的左膀,那Visual Studio 2010就是微软云计算的右臂.众所周知,作为一个平台的供应商,微软平台的推广很大程度上将依赖于上面应用

Visual Studio 20周年,我和VS不得不说的故事

Visual Studio 2017正式版已如期发布(点击这里查看发布全记录)!自去年 11 月正式宣布 Visual Studio 项目之后,微软终于正式推出了"宇宙最强集成开发环境(IDE)"的最新版本,且恰逢 Visual Studio 诞生 20 周年.   不出所料的是,微软声称这是迄今为止最具生产力 的 Visual Studio 版本:"云与移动开发是我司打造 Visual Studio 2017 时的第一要务,而为简化云开发,其内建工具整合了 .NET Cor

Visual Studio 2017 针对移动开发的新特性介绍

Visual Studio是世界上最好的IDE之一,如果是 .NET世界,那就没有之一了(^_^),而最近推出的Visual Studio 2017在移动平台方面更是加强了这一点.这个版本包含了一些非常棒的功能,包括实时单元测试.新的重构.代码提示.C#7.0的支持,以及帮助移动开发人员构建更好的移动应用程序的功能. 下面,就让我们一起来看看Visual Studio 2017中有哪些功能使得移动开发变得更加容易. Visual Studio 2017的安装体验有所提升 Visual Studi

Visual Studio 2017正式版发布全纪录

又是一年发布季,微软借着Visual Studio品牌20周年之际,于美国太平洋时间2017年3月7日9点召开发布会议,宣布正式发布新一代开发利器Visual Studio 2017.同时发布的还有 .NET Core Tooling 1.0 .NET Core Microservice instance Visual Studio for MAC preview 4 Visual Studio Mobile Center Preview Team Foundation Server 2017

从 Visual Studio 2017 谈起,解析微软技术生态进化之道

曾经被业界取笑「闭关锁国」的微软如今也走向了「改革开放」的道路,Visual Studio 2017的发布,不仅是VS二十周年的大事件,更是微软技术生态焕然一新的直观体验.以前只支持Windows及自家产品的微软,现在iOS.Android.Mac都支持了.写在前面 北京时间2017年3月8日凌晨,Visual Studio 2017如期发布.今年恰逢Visual Studio二十周年,Visual Studio团队可谓诚意满满.不负众望--VS2017不仅拥有全新的模块化设计和更强的性能,功能

微软推出全新开发工具套件Visual Studio 2017

开发人员可以在这里下载最新的VS版本,VS 2017发行说明在这里.微软支持VS 2017与以前版本的VS并行安装,并已支持VS 2017安装在VS"15"预览或Release Candidate版之上. 微软推出全新开发工具套件Visual Studio 2017 此版本产品的定价和包装与VS 2015的定价保持一致.面向个人开发人员和小型企业的免费社区版本将继续提供.Professional with MSDN 和Enterprise with MSDN是其他主要的版本.2017

《设计模式》作者之一Erich Gamma加入微软Visual Studio团队

<设计模式>的四位合著者(称为GoF,Gang of Four)之一Erich Gamma离开IBM,加入了微软Visual Studio团队. 据负责Visual Studio的微软副总裁Jason Zander说,Gamma以杰出工程师(Distinguished Engineer)的身份加入微软,并为Visual Studio工作,他没有说明Gamma具体参与哪个项目以及为何离开IBM,只是表示他会继续在瑞士苏黎世工作,微软会在那里创建一个实验室,由Gamma领导. Gamma因<

微软为 Visual Studio 推出必应代码搜索扩展

Visual Studio是目前最流行的Windows平台应用程序开发环境,今天微软为其推出了必应代码搜索扩展,以更好的帮助程序员在他们的应用程序中查找和插入代码. 必应官方博客表示,必应代码搜索扩展是Visual Studio的一部分,程序员可以利用它从大量基于Wed的储存库中搜索代码示例,例如微软的MSDN.StackOverflow . Dotnetperls和CSharp411.当你输入一个搜索字符串时,项目中具有相同变量名的代码都可以找到.然后就可以直接在Visual Studio中查

[Azure] 使用 Visual Studio 2013 管理中国版 Azure 订阅

比较关心微软平台技术的朋友应该都知道,微软云服务(Microsoft Azure)以下简称Azure分为全球版和中国版,由于政府法规问题中国版的服务是由二十一世纪互联运营,整体来看中国版Azure和全球版从运营,功能以及使用方式上都存在一些差别,而对于做开发的朋友来说,能够使用统一的工具来管理云服务以及开发资源无疑是一个非常方便的方式,Visual Studio作为微软统一开发工具也对Azure做了非常强大的管理及使用的支持.   然而对于中国版Azure来说,首先其验证方式不是使用Micros