今天微软的开发平台到底是什么样子的?

尽管现在的"微软平台"的含义已经与往日大相径庭,但微软在纽约举办Connect 2016大会为开发人员制定了针对其平台的计划。

今天的口号是"任何开发人员,任何应用程序,任何平台",而几年前的主题是"Windows无处不在"。

Connect大会属于微软的开发人员部门,与由Windows部门举办的Build活动不同。因此,大会上的主题演讲也不那么关注Windows操作系统的开发。

微软同Windows的关系变得复杂。一方面,它有一个Windows开发人员社区,希望保持其信心;但另一方面,它想要说服更广泛的开发人员群体,让他们相信该公司有适用于其他平台,特别是iOS和Android移动客户端以及用于Web和服务器应用程序的Linux的工具和框架。

因此,该公司正忙于排除在Windows外使用其技术的障碍。只要快速浏览一下主要的Connect公告就表明了这一点:微软作为白金会员加入Linux基金会,发布了SQL Server for Linux的公共预览版。谷歌加入.NET基金会,Visual Studio for Mac预览版发布;Azure App Service现在支持Linux了。三星发布针对Tizen的Visual Studio Tools。Visual Studio Mobile Center宣布在iOS、Android和Windows上测试移动应用程序。跨平台.NET Core 1.1和Entity Framework Core 1.1发布。

现在没有任何关于Windows Everywhere的迹象,不过有一些关于.NET Everywhere的证据,谷歌和三星显示出对它支持。

在今年早些时候被收购之后,Xamarin对微软的影响是Connect大会上另一个值得注意的地方。Xamarin成立的目的是使C#开发者能够瞄准移动平台,并且由于iOS和安卓系统的成功而迅速增长。另一方面,微软一直在努力吸引开发人员到其通用Windows平台(UWP)上,因为没有iOS和安卓,它就不够通用。因此,Xamarin提供了答案。

多年来一直跟踪微软开发人员故事的转折和转向的开发人员,将知道有许多种XAML,一种基于XML的语言,最常被用来定义用户界面。有WPF(Windows Presentation Foundation)XAML、Silverlight XAML和UWP XAML,所有的这些语言都有所不同。 Xamarin介绍了另一种变体, Xamarin.Forms技术使用它,允许开发人员一次性为多个平台定义UI。

Xamarin.Forms立刻大受欢迎,甚至超出了它的创造者的期望,特别是因为该公司长期以来一直主张为每个平台单独创建一个原生UI。尽管它有局限性,但是它可以创造高效率,特别是对于forms-over-data业务应用程序更是如此,对这类程序来说,最后一个程度的美化是不必要的。Xamarin.Forms现在瞄准UWP以及iOS和安卓系统,并且显然会在未来的版本中添加Mac OS。

负责开发部门的微软企业副总裁Julia Liuson提醒我Xamarin.Forms的能力不如XAML的其他变体。

她表示,"UWP应用程序使用的XAML版本是一个真正的平台,它可以让你做一切可能的事情,而Xamarin.Forms是一个了不起的应用,但你不能使用它来描述一切可能的东西,针对所有不同的平台口味。"Xamarin.Forms和UWP XAML之间目前还没有融合的计划。

也就是说,与UWP XAML相比,Xamarin.Forms满足的是开发者更迫切的需求,所以如果它有一个更光明的未来就毫不令人感到意外了。

我也向Liuson提出了Visual Basic(VB)是否有未来这个棘手的问题。她表示,Visual Studio 2017中的所有新功能--都可能会在Connect大会上发布--"都同样地适用于Visual Basic和C#"。一个Visual Basic用户"应该对于我们如何带来更多的能力和更多的生产力的做法感觉非常好。

Liuson承认,这也就是说VB没有像C#一样获得相同的投资。她对《The Reg》表示,"随着.NET不断扩展,我们观察到的是Visual Basic开发人员倾向于专注于一组知名的业务应用程序:ASP.NET、Windows Forms和WPF。我们将继续在这些领域提供大力支持,但是当涉及到全新的功能集时,我们没有观察到Visual Basic开发人员接受这些。所以我们把重点放在VB客户工作的领域上。"

这意味着,想要跟随微软走出Windows的VB开发人员应该学习C#或另一种语言。

Visual Studio 2017如何揭示出微软的新方向

Visual Studio 2017还展示出微软的方式是如何改变的。它比以往任何时候都更加巨大,虽然新的安装程序可以减轻这种痛苦,使您能够用比以前更清爽和更灵活的方式挑选并选择所需的组件。选择的菜单包括:

Python

Node.js

针对Linux Development的Visual C++

Clang with Microsoft CodeGen (对Windows 上的C++有更多标准兼容)

Docker工具

Azure工具堆栈

使用Visual Studio 2017,我开始一个新的ASP.NET Core项目,并检查Enable Container (Docker) Support的选项。我被提示安装Docker for Windows,这样做了之后不久就启动并运行了一个"Hello world"ASP.NET应用程序。值得注意的是,Docker正在运行一个Debian容器,快速查看PATH环境,现在是Hyper-V,而不是Virtual Box。

Visual Studio 2017在Windows上的Docker上的Linux容器中运行ASP.NET Core

Stack Overflow的首席执行官Joel Spolsky参加了Connect大会。早在九十年代,他的第一份工作是在微软负责Excel方面的工作。因此,笔者请他比较一下曾经的微软和今天的微软有什么不同。

他表示,"我在微软共事的每个人都有这种态度,我们是巨大的,我们赢了,就算表现大度我们也负担得起,我们可以帮助Lotus集成1-2-3到Windows并帮助WordPerfect到Windows,与此同时,Excel团队和Word团队则正在与他们竞争。"

"今天的微软已经把这一点带到了另一个层面,想要成为每个人最喜欢的公司,无论你是谁。开发工具的钱已经转移到提供云计算服务--这是可计量的,而且无法盗版--现在Visual Studio只是在Azure上获取东西的一种方式。这使他们处于一个非常舒适的位置,能够对世界上每个人都友好。

不过Spolsky断言,许多人仍然警惕微软,不断回忆起它是如何阻止浏览器的开发,抵制开源或其他各种真实或想象中的罪行。

此外,有了吹嘘了一年的一系列技术,微软平台开发人员还没有迎来一个轻松时刻,而忽略了下一个。

该公司对C#和.NET的承诺从来没有食言,这仍然是真的,虽然它的投资现在更多地集中在跨平台.NET核心而不是让只针对Windows的 .NET Framework发展成熟。

今天的微软正在转型。跨平台的过程并不容易。新的.NET核心针对所有的帐户,但长期开发.NET的开发人员却由于缺少部件而感到沮丧。 Linux上的SQL Server不如Windows上那么好,并且.NET Stored Procedures到Reporting Services还有差异。Windows上的容器支持刚刚开始。

然而,在目前方向的背后有动力,有些事情很明显。 Xamarin工具是非常重要的并能够满足真正的需要。 无论UWP是否真的追上对公司来说不再是至关重要的了。它让开源变得有意义,并乐于支持其他人的平台,只要它能带来云计算销售的希望就行。

本文转自d1net(转载)

时间: 2024-09-21 16:48:01

今天微软的开发平台到底是什么样子的?的相关文章

.Net开发平台研究(一

.Net开发平台研究 总结: .Net开发平台的发布标志着近十年来微软开发平台第一个重大的转变.这个开发平台包括一个用于加载和运行应用程序的新的软件基础结构(.NET Framework和ASP.NET),一个新的开发环境(Visual Studio .NET),以及支持该结构的编程语言. 微软希望随着这个新平台的发布,评论不再将这个平台作为朦胧的软件,而且开发者也将发现该平台使得Windows上Web应用程序(尤其是Web Service)的开发更为容易.这样或许会使更多的开发者拥护公司的操作

微软发布免费轻量级Web开发平台WebMatrix

中介交易 SEO诊断 淘宝客 云主机 技术大厅 1月14日,据国外媒体报道,微软发布了一款免费的web开发工具,该工具用来让专业人员和顾客更容易创建和发布网站.这款名为WebMatrix的工具目前已经可以下载安装,它包含了网站开发所需要一切,它将web服务器,数据库和编程框架集成在一个单独的工具包中.WebMatrix实际上包含一个轻量级版本的微软IIS web服务器,SQL Server 精简版和ASP.Net Razor,ASP.Net扩展工具集.该扩展工具集使用新的Razor语法来构建动态

诺基亚称Qt开发平台不支持微软WP7

北京时间2月11日晚间消息,尽管诺基亚将支持微软Windows Phone平台,但其Qt开发平台并不支持Windows Phone 7(以下简称"WP7") API(应用编程接口). 2008年,诺基亚通过收购挪威手机软件厂商Trolltech而获得Qt开发平台.开发人员可借助Qt制作出Symbian和MeeGo系统的应用软件,并快速部署到其他版本平台. 此次与微软合作后,Qt开并不会支持WP7 API,而是继续作为Symbian和MeeGo的开发平台. 对于有意开发诺基亚Window

Jupiter:微软的下一代统一开发平台?,徐汇区网站设计

Silverlight真的完了么?未来在Windows 8和Windows phone中抉择吗?这是一个萦绕在Windows开发者脑海的问题,曾经Silverlight是解决开发者们跨平台跨浏览器兼容性的钥匙,后来又有了Javascript和HTML5来创建Windows 8上面的应用,HTML5也支持IE9了,据说在今年秋天Windows phone的"芒果"也会到来. 这意味着HTML5是微软平台的未来?一个新的尚未公布的叫做Jupiter的平台可能会让微软的开发者利用他们现有的技

.Net开发平台研究(三)

Visual C++,这个现有的用于编写低层代码和Windows程序的程序设计语言,还将继续存在,但是它将被修改更新以支持.NET开发平台. 特别地, Visual C++将获得新的关键字和数据类型(称为Managed Extensions to Visual C++),它使程序员可以创建可控制代码.不过,这些扩展是可以选择的:.NET Framework 所带的Visual C++版本完全向后兼容它的前身:Visual C++6.0,开发者可用它写不可控制代码. 这使C++在.NET领域中具有

九月份精彩网络讲座让您深入了解微软最新开发技术

网络|微软 最新开发技术发布日期: 8/19/2004 | 更新日期: 8/19/2004ASP.NET系列讲座让您深入接触Web应用开发 SharePoint Portal 开发讲座给您揭秘门户开发秘籍 深入浅出的讲解如何构建Windows Server 2003应用 请按以下步骤参加讲座: 第一步:获得账号.用此账号您可以参加微软在线的任何讲座.(已经注册账号的用户请进入第二步).请提供真实注册信息,以便我们会有赠品.资料等邮寄给大家.提交注册信息后,您即会收到注册确认邮件.如果注册信息经核

基于Web服务的应用、解决方案和开发平台

web|web服务|解决   架构Web Service: 基于Web服务的应用.解决方案和开发平台        内容: Public UDDI Registry Microsoft Halistorm Bowstreet Solution DealEasy Enterprise Portal Solution Web服务构建平台与服务组件 Microsoft .NET IBM Web Service Sun ONE Case Study: 实践Web服务 参考资料 作者简介 相关内容: 为什

.Net开发平台研究(二)

类库主要的好处是它们将核心Win32 API的最常用的功能和外挂SDK的功能封装到了一个统一的包中.采用清晰而有条理的方式对类库进行了分组和描述,这样开发者能更容易地找到他们的应用程序所需的大多数功能. 相反,在过去几年中,新功能要么被"绑缚"到Win32 API上,要由通过独立的API(例如用于图形的Directx,或者用于XML和SOAP的不同的SDK)来提供.对它们唯一能做的逻辑分组就是按照字母顺序进行排序.结果,使用Win32 API和各种SDK经常使人晕头转向,而开发者必须判

.NET开发平台研究(四)

8. ASP.NET 微软的ASP.NET对Active Server Page(ASP)进行了很大的改变,不仅使开发者更易于创建动态Web内容,还使他们更易于创建复杂而可靠的Web应用程序,例如Web Services.ASP.NET 是微软的. NET开发平台的关键的一部分.为了微软 .NET战略的成功,必须吸引开发者采用. NET开发平台,包括ASP .NET.ASP .NET beta版测试者报告了它的大量好处. ASP. NET的主要目标是降低Web应用程度开发的门槛,它采用与降低使用