开源后的.Net 如何选择使用
2017-02-13 11:06
267 查看
.NET是跨平台的开发栈。它有一个标准库,称为.NET Standard Library,其中包含了大量的APIs。这个标准库由各种.NET运行环境实现:.NET Framework、.NET Core和Xamarin-flavored Mono。
1:.NET Framework就是现有的开发人员一直使用的.NET Framework。它实现了.NET Standard Library,就是说任何仅依赖于.NET Standard Library的代码都可以在.NET Framework上运行。它包含了其他Windows专用的APIs,比如说用于Windows桌面开发的APIs如Windows Forms和WPF。.NET Framework针对构建Windows桌面应用程序进行了优化。
2:.NET Core是针对服务器工作负载优化的新的跨平台运行环境。它实现了.NET Standard Library,就是说任何使用.NET Standard Library的代码都可以在.NET Core上运行。该运行环境适合新的Web开发栈ASP.NET Core使用。它是现代的、高效的并为处理大规模的服务器和云工作负载设计的。
3:Xamarin-flavored Mono是Xamarin应用程序的运行环境。它实现了.NET Standard Library,就是说任何仅依赖于.NET Standard Library的代码都可以在Xamarin应用程序上运行。它包含了其他iOS、Android、Xamarin.Forms和Xamarin.Mac使用的APIs。它针对在iOS和Android上构建移动应用程序进行了优化。
当谈论到选择运行环境的问题,选择方式应该是这样的:
1:.NET Framework是以Windows为中心的框架,为Windows开发人员提供最好的服务。如果你正在搭建Windows为中心的应用程序,请你选择它。
2:.NET Core是云优化引擎,它是跨平台的。它使用相同的高性能JIT编译器,但在所有支持的操作系统(Windows、Linux、macOS)上运行代码。它没有特定的Windows APIs,因为这有悖于跨平台的目标。
3:Mono是用于移动应用和Apple平台(Android、iOS、watchOS、tvOS)的运行环境,用于游戏控制器和Unix桌面应用程序。
什么应该用于你的新项目呢?这取决于你的需求。
Windows桌面应用程序?请使用.NET Framework,就像你之前一直做的一样。
服务器或Web应用程序?请使用ASP.NET Core,运行在.NET Core上。
移动应用程序?请使用Xamarin。
类库和NuGet包?请使用.NET StandardLibrary。
使用标准库对于在你的所有应用程序中共享代码非常重要。
1:.NET Framework就是现有的开发人员一直使用的.NET Framework。它实现了.NET Standard Library,就是说任何仅依赖于.NET Standard Library的代码都可以在.NET Framework上运行。它包含了其他Windows专用的APIs,比如说用于Windows桌面开发的APIs如Windows Forms和WPF。.NET Framework针对构建Windows桌面应用程序进行了优化。
2:.NET Core是针对服务器工作负载优化的新的跨平台运行环境。它实现了.NET Standard Library,就是说任何使用.NET Standard Library的代码都可以在.NET Core上运行。该运行环境适合新的Web开发栈ASP.NET Core使用。它是现代的、高效的并为处理大规模的服务器和云工作负载设计的。
3:Xamarin-flavored Mono是Xamarin应用程序的运行环境。它实现了.NET Standard Library,就是说任何仅依赖于.NET Standard Library的代码都可以在Xamarin应用程序上运行。它包含了其他iOS、Android、Xamarin.Forms和Xamarin.Mac使用的APIs。它针对在iOS和Android上构建移动应用程序进行了优化。
当谈论到选择运行环境的问题,选择方式应该是这样的:
1:.NET Framework是以Windows为中心的框架,为Windows开发人员提供最好的服务。如果你正在搭建Windows为中心的应用程序,请你选择它。
2:.NET Core是云优化引擎,它是跨平台的。它使用相同的高性能JIT编译器,但在所有支持的操作系统(Windows、Linux、macOS)上运行代码。它没有特定的Windows APIs,因为这有悖于跨平台的目标。
3:Mono是用于移动应用和Apple平台(Android、iOS、watchOS、tvOS)的运行环境,用于游戏控制器和Unix桌面应用程序。
什么应该用于你的新项目呢?这取决于你的需求。
Windows桌面应用程序?请使用.NET Framework,就像你之前一直做的一样。
服务器或Web应用程序?请使用ASP.NET Core,运行在.NET Core上。
移动应用程序?请使用Xamarin。
类库和NuGet包?请使用.NET StandardLibrary。
使用标准库对于在你的所有应用程序中共享代码非常重要。
相关文章推荐
- shell seq 用法
- 002java面试笔记——【java基础篇】java面试题
- Angularjs自定义指令实现三级联动 选择地理位置
- SOS does not support the current target architecture解决方法
- 基于jQuery代码实现圆形菜单展开收缩效果
- JVM介绍
- Matlab中fft与fftshift命令的小结与分析
- 在系统中增加一个可唤醒中断--简单实例
- C++ 通讯录实现
- 脚本实现权限控制
- shell 变量自增
- 象棋的杀法??????
- PowerDesigner生成Excel
- Log4j2的常用配置
- C语言中%d,%s,%x,%f,%.100f,%的意思
- Spring MVC Controller中返回json数据中文乱码处理
- 1.struts2HelloWorld
- Nginx的配置文件nginx.conf配置详解
- 412. Fizz Buzz
- SSM框架整合(Spring+SpringMVC+Mybatis)