澳门新葡亰平台官网微软 2018 开源大事记

by admin on 2020年4月19日

澳门新葡亰平台官网 1

dotnet standard

.Net Standard是新推出来用以替代Portable,
Standard和Portable之间,按照我的理解是替代关系, 将来Portable将慢慢消亡.
Portable和Standard的关系如下表:

PCL Profile .NET Standard PCL Platforms
Profile7 1.1 .NET Framework 4.5, Windows 8
Profile31 1.0 Windows 8.1, Windows Phone Silverlight 8.1
Profile32 1.2 Windows 8.1, Windows Phone 8.1
Profile44 1.2 .NET Framework 4.5.1, Windows 8.1
Profile49 1.0 .NET Framework 4.5, Windows Phone Silverlight 8
Profile78 1.0 .NET Framework 4.5, Windows 8, Windows Phone Silverlight 8
Profile84 1.0 Windows Phone 8.1, Windows Phone Silverlight 8.1
Profile111 1.1 .NET Framework 4.5, Windows 8, Windows Phone 8.1
Profile151 1.2 .NET Framework 4.5.1, Windows 8.1, Windows Phone 8.1
Profile157 1.0 Windows 8.1, Windows Phone 8.1, Windows Phone Silverlight 8.1
Profile259 1.0 .NET Framework 4.5, Windows 8, Windows Phone 8.1, Windows Phone Silverlight 8

有一点需要特别说明, standard并不算一个libarary, 而更多是一个标准,
不同的standard版本其实是对应的不同的API集合.
当然,版本号越小,支持的API越少.
但是支持的API越少,就意味着可以在更多的平台上运行.
我们开发的功能性类库应该都是Standard的,而且如果可能,应该使用小版本

如dotnet生态图的Base Libraries层可以看出,
.Net标准库更像一个垫片层(Adaper设计模式),用来调用具体平台相关的实现库,
比如在windows平台就调用.Net Framework 类库,
在Linux上就调用CoreFx类库,而在移动平台则调用Mono类库.

standard和framework/core/xamarin之间的关系

.NET Standard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0
.NET Core 1.0 1.0 1.0 1.0 1.0 1.0 1.0 2.0
.NET Framework (with .NET Core 1.x SDK) 4.5 4.5 4.5.1 4.6 4.6.1 4.6.2
.NET Framework (with .NET Core 2.0 SDK) 4.5 4.5 4.5.1 4.6 4.6.1 4.6.1 4.6.1 4.6.1
Mono 4.6 4.6 4.6 4.6 4.6 4.6 4.6 5.4
Xamarin.iOS 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.14
Xamarin.Mac 3.0 3.0 3.0 3.0 3.0 3.0 3.0 3.8
Xamarin.Android 7.0 7.0 7.0 7.0 7.0 7.0 7.0 7.5
Universal Windows Platform 10.0 10.0 10.0 10.0 10.0 vNext vNext vNext
Windows 8.0 8.0 8.1
Windows Phone 8.1 8.1 8.1
Windows Phone Silverlight 8.0

9.微软力挺 Go,宣布参与 Athens 项目和 GopherSource

在2018年的 Go 开发者大会 GopherCon 上,微软宣布要为 Athens
项目贡献代码,以及与 GopherSource 进行合作。

Athens 是一个开源项目,旨在为 Go 模块(Go
modules)创建首个代理服务器。微软表示该项目目前仍处于 alpha
阶段,并将联合 Athens 社区继续致力于改善模块体验,重点是确保 Go
模块与所有代理服务器能无缝协作,并努力建立一个联合的、组织多样化的代理网络。

而所谓的 GopherSource 其实是一项新计划,旨在通过在社区内为上游项目和关键
Go 项目(如 Athens)带来更多用户和贡献者,以增强和实现 Go
生态系统的多样化。

对于微软 2018 开源大事记的回顾到此为止,如有纰漏,欢迎在评论区指正。

(文/开源中国)    

微软首席项目经理 Tim Heuer 说:“我们非常认可 UWP 的 Progress Telerik UI
的实用性和广泛价值,并期待通过我们社区的贡献能开发出更多的功能”。

xamarin

Xamarin可以开发原生的AndroidiOSMacOS和Windows应用程序(这个还是用wpf/winform更方便)。
Xamarin平台基于Mono(Mono是来自社区Mono
Project的.NET的原始开源和跨平台实现。)
传统上,Mono的API遵循.NET Framework的进展,而不是.NET Core。

除了跨平台的移动设备,使用Xamarin创建的应用程序本身提供与使用Objective-C
/ Swift / for iOS或Java for
Android创建的应用程序相似的性能以及还有更大的体积:-(

Xamarin提供以下总结功能:

本地用户界面 – Xamarin应用程序是使用标准的本地用户界面控件构建的。
应用程序不仅看起来终端用户期望的方式;
他们也是这样做的。
本机API访问 –
Xamarin应用程序可以访问底层平台和设备公开的全部功能,包括平台特定功能(如iBeacons和Android
Fragments)。
本机性能 –
Xamarin应用程序利用特定于平台的硬件加速,并针对本机性能进行编译。
澳门新葡亰平台官网,在运行时解释代码的解决方案无法实现这一点。
生产力 –使用Xamarin.Forms开发人员可以使用与iOS,Android和Windows 10
UWP相同的逻辑和UI。

澳门新葡亰平台官网 2

Xamarin架构图

在Xamarin的图中,您可以看到如何在Xamarin.iOS,Xamarin.Android甚至Windows
10的UWP项目之间的平台上共享客户端代码(通常是C#应用程序逻辑,如ViewModels,Models,Service
Agents等)。

如果使用Xamarin.Forms,您还可以在平台之间共享相同的UI代码(Xamarin
XAML定义页面/视图)。

注意:使用Xamarin,您还可以开发Mac(MacOS)应用程序,但图中没有表示,因为Xamarin的主要目的是“跨平台移动”。

2.微软采用 Chromium 内核开发桌面版 Edge 浏览器

2018年12月,微软通过其博客官方宣布:未来将采用
Chromium 内核开发桌面版 Edge 浏览器,以便为用户带来更好的 Web
兼容性,并为所有 Web 开发者减少 Web 碎片化。

澳门新葡亰平台官网 3

微软还计划将 Edge 浏览器引入 macOS 平台。此外,新版 Edge
可运行在所有受支持的 Windows 版本上,包括 Windows 7 和 Windows 8 系列 ——
直到微软终止支持,而不仅仅是 Windows 10。

(文/开源中国)    

dotnet framework

NET Framework是一个非常强大而成熟的框架,拥有一个庞大的类库(称为.NET
Framework Class
Library),可在Windows上支持各种各样的应用程序和解决方案。为您现有的应用程序和库提供了最高级别的兼容性。

它作为Windows操作系统的一部分运行,因此在新版本可用时或通过可选的独立安装程序通过Windows
Update进行服务。当与Windows一起运送时,Windows 8附带4.5,Windows
8.1附带4.5.1,Windows 10附带4.6。对于服务器,Windows Server
2012附带4.5,Windows Server 2012 R2附带4.5.1。

自2002年发布以来,.NET
Framework得到了开发人员的广泛支持,开发人员喜欢其一致的编程模型,易于使用Visual
Studio入门的环境,调试和分析工具以及Microsoft的直接支持。它还使应用程序部署和维护直截了当。不过由于windows在服务器端的弱势,
现在.net其实一直在走下坡路.

在.NET
Framework之上建立了多个应用程序堆栈,允许开发人员构建从控制台应用程序到富客户机(WPF)应用程序到可扩展Web应用程序的应用程序.Windows
Forms,Windows
Presentation
Foundation(WPF),Windows
Communication Foundation
(WCF),ASP.NET到v4.x,ASP.NET
Web窗体,ASP.NET
MVC, ASP.NET
WebAPI,SignalR等几个子框架。

虽然.NET Framework的代码是开源的,但只是部分开源,社区不活跃..NET
Framework将继续发展,当下一版本的Windows操作系统发布时,通过发送新的更新.
.net framework始终是构建Windows桌面应用程序的最好已经最快的开发框架!

2015年,微软宣布支持开源视频编解码器
VP9,对自家的更多项目进行开源,并开始接受
LLVM/Clang;而在2016年微软收购了跨平台移动开发公司
Xamarin,推出了
Linux 版的 SQL
Server,并表示会继续开源。2017年也是非常有趣的一年,这一年,微软加入了
OSI 组织(开源计划,Open Source Initiative),继续积极发展 Windows 的
Linux 子系统(WSL),并在 Linux 平台上为 .NET
开发提供更多的便利特性。但今年,2018年,可以说是微软最令人感到惊讶的一年。 

Progress 高级副总裁 Faris Sweis
表示:“对我们来说,开源是为了让开发人员获得正确的基础技术和专业知识,使他们能够轻松地实现生产,并提供创新的工具来应对不断变化的应用需求。而且开发工具也会在开源过程中不断得到改进。”

dotnet的生态化反图

经过多年的努力,在推出Core以后, 微软终于做到了当初的承诺,
一次编写到处运行了. 目前dotnet应该仅次于javascript了, 除了浏览器,
dotnet应该都可以运行了.

澳门新葡亰平台官网 4

dotnet生态图

从上图, 可以很简单的发现, .Net体系分为三大块,

  • 底层支持平台,包括编译器,运行时及CSharp/FSharp/VB.Net等
  • 标准类库,统一大部分通用的API
  • 应用模型, 适用于不同的操作系统

通过这张图, 我们可以很清楚的看出.Net Framework, .Net Core, Xamarin,
他们是平行的框架,不是互相取代的关系.

  • .NET Framework将继续在windows世界发力, 重点会在Desktop UI应用方面
  • .NET
    Core会在UWP及后端应用(Back-End)发力,适应现在Linux服务器满天飞的现状.
  • Xamarin 会继续在移动平台发力,作为一个快速App的工具

8.微软代码托管平台 CodePlex 正式关闭,进入封存状态

随着 CodePlex 的不断没落,微软于2018年1月 30
日发文宣布,CodePlex.com
网站正式退役,现在打开该网址会跳转到一个封存归档页面。该存档包含在2017年下半年进入只读模式前托管到
CodePlex 上的所有项目。

澳门新葡亰平台官网 5

CodePlex
是微软于2006年推出的一个开源软件托管平台,在提供服务11年之后,微软于2017年4月1日宣布将关闭该平台,并给出了结束时间:2017年10月切换到只读模式,12月彻底关闭(最终的关闭日期是2018年1月29日)。之后,CodePlex
将为之前的开源项目存档,人们可以浏览并下载这些项目。

在微软主张社区发展的几个月后,老牌 .NET 控件厂商 Telerik (已于2014年被
Progress 软件公司收购)终于发布了用于通用 Windows 平台(UWP)的开源 UI
库,也就是 Telerik UI ,旨在减轻 Windows 应用程序的开发难度。

总结

回到开头的三个问题, 答案应该非常清楚了:

  • .Net Framework, .Net Core,
    Xamarin是三个基于dotnet的三个不同开发框架应用于不同场景,
    他们可以通过.Net Standard共享代码.
  • 微软是不会放弃framework的,除非微软放弃windows 🙂
  • 我们应该根据具体的开发场景选择不同的开发框架, 具体我的建议是:
  1. 所有的类库应该尽可能使用.net standard,以便在各个平台共享逻辑代码
  2. 后端代码(backend)因尽可能选择.Net Core,
    特别是asp.net应该转换到asp.net core
  3. windows的桌面应用应该选择framework(UWP还是觉得不靠谱),特别是wpf,是开发桌面应用的一个好选择.
  4. 移动端的快速原型应该选用xamarin.
  5. 工具类的应用应该选择.net core

以上是我的个人见解,欢迎大家提出不同看法.

参考文献:
https://blogs.msdn.microsoft.com/cesardelatorre/2016/06/27/net-core-1-0-net-framework-xamarin-the-whatand-when-to-use-it/

5.微软重新开源已诞生 36 年的 MS-DOS 1.25/2.0

2018年9月,微软宣布在 GitHub 上重新开源
MS-DOS 1.25、2.0,相比原来的可下载压缩文件更容易查找、阅读和引用。MS-DOS
1.25、2.0 的所有源代码都是用 8086 汇编代码写的,其中 86-DOS
的代码最初完成于1980年12月29日。

澳门新葡亰平台官网 6

而微软开源放出的除了源文件和目标文件,还有一些有趣的 .txt、.doc
文件,十分值得一读,其中包括很多代码注释。

除了开源之外,Progress 还一切就绪准备向 .Net 基金会捐赠 Telerik UI
库。这将是该非营利组织在此扩大,并有助于促进 .Net 的发展。

dotnet core

.NET
Core
是一个新版本的.NET,它是一个跨平台,开源和模块化的.NET平台,用于创建运行在任何地方(Windows,Linux和MacOS)的现代Web应用程序,微服务器,库和控制台应用程序。它更多的是为后端应用(back-end)准备的,所以core其实和asp.net
core捆绑很紧密. 当然core还可以编写命令行程序,
也就是说我们在linux开发一些工具可以选择C#了. 这是一个很好选项.
:-).

当然core还可以开发UWP的应用,对于UWP不太熟,好像发展的也不咋的.

  • core和原来的framework一个很大的区别是core所用的类库可以单独打包,并且可以把所有依赖项打包在一起,
    发布core的应用可以不要求目标系统安装有dotnet的运行时了,非常方便发布了,而且发布包可以很小.
  • core和docker生态捆绑紧密,作为微服务开发的一个很好的选择

Core是一个.Net everywahre的唯一平台,有了core,
CSharp经验终于可以应用于大部分开发工作了!

3.微软加入 OIN 社区,并开放 6 万多项专利

2018年10月11日,微软宣布正式加入 Open Invention Network (“OIN”)
社区。可以把
Open Invention
Network 理解为是一个共享的防御性专利池,它成立于2015年,旨在保护 Linux
及其相关的开源项目。而为了提升 Linux 和其他开源技术的优势,微软给 OIN
带去了超过6万项已发布的专利。

在同一个月,微软宣布加入 LOT
Network。LOT
Network 是一个不断发展的非营利性社区,由谷歌、Dropbox
等数家科技公司联合创办,是一个专门用于对抗专利流氓的组织。微软的加入意味着它正在就这一主题与其他行业领导者保持一致,并承诺在未来采取更多措施来应对知识产权风险。通过加入
LOT Network,微软承诺会将自家的专利免费许可给其他成员使用,而 LOT
Network 大约覆盖了 135 万项专利。

澳门新葡亰平台官网 7

引言

最近, 微软刚刚发布.net core 2.0, dotnet世界有了一个新的开始.
但是这里有一些疑问,

  • .net core是不是dotnet的下一个版本? 无论如何asp.net
    5直接就变成了asp.net core.
  • 微软是不是会放弃framework? 还有xamarin是不是会被core替代?
  • 如果我现在用dotnet开发, 应该选用core,还是framework,抑或Xamarin?

抱着这样的疑问, 我仔细探究了一下dotnet目前的生态系统,希望对大家有点帮助.

从微软公开宣布 “Microsoft love linux”
那一刻起,过去的几年里,微软积极拥抱开源的举动我们有目共睹,即便有过”Linux
is a cancer”这种真香警告的
flag,但不得不承认的是,微软一系列“拥抱开源”的举措为 Linux
社区乃至整个开源社区都带来了很多巨大的惊喜。

编译自:opensourceforu.com

6.微软的分布式系统平台 Service Fabric 正式开源

2018年3月14日,微软宣布正式开源 Service Fabric,采用 MIT
开源许可证。Windows 内部为 Service Fabric
开发了将近十年的内部服务,其中大部分时间都是微软内部平台,比如
Office365,Azure Stack 平台等。

其中包括 Reliable
Services,Reliable
Actors 和 ASP.NET
Core 集成库,Azure
基础架构服务以及 Azure SQL DB,Azure Cosmos DB 和 Cortana
等大型解决方案都在使用 Service Fabric 构建。

7.微软正式开源 Blazor ,将 .NET 带回到浏览器

2018年2月,微软  ASP.Net 团队正式开源 Blazor,这是一个 Web UI
框架,可通过 WebAssembly 在任意浏览器中运行 .NET。

Blazor 旨在简化快速的单页面 .NET 浏览器应用的构建过程,它虽然使用了诸如
CSS 和 HTML 之类的 Web 技术,但它使用 C#语言和 Razor 语法代替
JavaScript 来构建可组合的 Web UI 。通过提供用于编译到 Web
的大小和高效加载的格式,WebAssembly 可让 .NET 在浏览器中运行。

4.微软开源三个主要的 Windows UX 技术:WPF, Windows Forms 和 WinUI 框架

在微软举办的 Microsoft Connect(); 2018
开发者大会上,微软为 .NET
开发者带来了重磅的信息。在大会上,微软宣布开源三种主要的 Windows UX
技术,分别是 Windows Presentation Foundation (WPF), Windows Forms 和
Windows UI XAML 库 (WinUI)。

WPF 是用于构建桌面客户端应用程序的 UI
框架,具有应用程序模型、控件、图形、布局、数据绑定和安全性等功能。WPF
的核心是一个利用现代图形硬件的渲染引擎。

Windows Forms 用于支持开发“智能客户端(smart
clients)”,微软对其的描述为易于部署和更新的应用程序。无论这些应用程序是否连接到
Internet,它们都可以正常工作。Windows Forms
中的表单是用于向用户显示信息的可视界面。WinUI 具有 Windows 10 默认 UWP
XAML UI 平台的向后兼容实现。

下面不妨回顾一下 2018 年微软与开源有关的“里程碑意义”事件:

1.微软收购 GitHub

2018年6月4日,微软宣布以 75 亿美元的股票收购代码托管平台
GitHub,并由微软副总裁、Xamarin 创始人 Nat Friedman 担任 CEO
一职。消息公布后,微软表示 GitHub
将仍然是一个开放平台,并保留其开发者优先的风格,独立运营。而这一事件,无论是对于微软,还是整个开源界,都是一件可以载入史册的大事。

澳门新葡亰平台官网 8

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图