asp是什么语言_ASP.NET Core 简介

912e73ed90a95b0e006997f940f9f7f7.png

.NET Core 是 .NET Framework 的新一代版本,是微软开发的第一个具有跨平台 ( Windows、Mac OSX 、Linux ) 能力的应用程序开发框

http://ASP.NET Core 是 Microsoft 新开发的,基于 .NET Core 的 Web 开发框架

http://ASP.NET Core 是对 http://ASP.NET 的重新设计,变得快速,灵活,现代,并且可以跨不同平台工作。

如果你之前已经接触过 http://ASP.NET,有过任何 MVC 或 Web API 的经验,那么你会有很强烈的熟悉感。

在本教程中,我们将会学习如何使用 http://ASP.NET Core 开发网页应用程序, 创建、编辑和查看数据库中的所有数据

http://ASP.NET 简史

http://ASP.NET 设计之初,就为 Web 而生,也自那时起,该框架经历了一个稳步的演变,并最终将我们引导至其最新的 http://ASP.NET Core 2.1 版本

http://ASP.NET 的演变史,其实就是一部 Web 框架的演变史的完全版,也是过去这么多年互联网的发展史

  1. http://ASP.NET Core 2.1 不是 http://ASP.NET 4.x 的延续,或者这么说, http://ASP.NET Core 1.0 不是 http://ASP.NET 4.6 的延续
  2. http://ASP.NET Core 是一个全新的 Web 框架,它与 http://ASP.NET 并行发展
  3. http://ASP.NET Core 是对 http://ASP.NET 的重新设计,更小,也更模块化
  4. 虽然能从 http://ASP.NET Core 中看到很多 http://ASP.NET 的熟悉身影,但这并不完全一样, http://ASP.NET Core 是对 http://ASP.NET 环境的一个重大改变
    什么是 http://ASP.NET Core?http://ASP.NET Core 是一个由微软创建的,用于构建 web 应用、API、微服务 的 web 框架。它使用常见的模式,诸如 MVC(Model-View-Controller)、依赖注入,和一个由中间件构成的请求处理管线。它基于 Apache 2.0 许可证开放源码,就是说,源代码可以自由获取,并且欢迎社区成员以 缺陷修复 和 新功能提交 的方式进行贡献。http://ASP.NET Core 运行在微软的 .NET 运行时库上,类似于 Java 的 虚拟机(JVM)或者 Ruby 的解释器。有几种语言(C#,Visual Basic,F#)可以用来编写 http://ASP.NET Core 程序。C# 是最常见的选择,我在本书中也会采用它。你可以在 Windows、Mac,和 Linux 上构建并运行 http://ASP.NET Core 应用。

http://ASP.NET Core 的优点

http://ASP.NET Core 具有以下优点:

  1. http://ASP.NET Core 有着大量的体系结构更改,这些更改使得 http://ASP.NET Core 更精简和更模块化
  2. 模块化的设计,使得 http://ASP.NET Core 不再基于 System.Web.dll ,而是基于一组精细且充分考虑的 NuGet
  3. http://ASP.NET Core 允许我们优化应用程序,只包含必要的 NuGet 包
  4. 更为精简的应用程序可以带来更高的安全性,更少的维护,更好的性能以及更低的成本

使用 http://ASP.NET Core ,我们可以获得以下好处:

  1. 能在 Windows,Mac 和 Linux 上构建和运行跨平台的 http://ASP.NET 应用程序
  2. 使用 http://ASP.NET Core 可以构建和并行运行版本化的应用程序
  3. 新的工具简化了现代 Web 应用程序的开发
  4. 统一的方式构建 Web UI 和 Web API
  5. 云环境配置
  6. 内置依赖注入
  7. 使得 Razor 标记更接近原声 HTML 的标签助手
  8. 应用程序即可以在 IIS 中运行,也可以在自己的进程中运行
    又一个 web 框架,需求何在?
    现存的 web 框架选项已经很多了:Node/Express、Spring、Ruby on Rails、Django、Laravel 等等,数不胜数。http://ASP.NET Core 又有什么可取之处呢?
  • 速度 http://ASP.NET Core 很快。因为 .NET Core 是编译运行的,执行速度远高于解释执行的语言,比如 JavaScript 或者 Ruby、http://ASP.NET Core 也已经为多线程和异步任务作了专门的优化。与使用 Node.js 写的代码相比,执行速度高出 5-10 倍是很正常的。
  • 生态 http://ASP.NET Core 可能初出茅庐,但 .NET 却已久经考验。在 NuGet(.NET 的包管理系统,类似 npm、Ruby gems,或者 Maven)上有成千上万的软件包。有现成的包可用来完成 JSON 反序列化、数据库连接、PDF生成,或者几乎你能想到的任何需求。
  • 安全性 微软的开发团队很注重安全性,http://ASP.NET Core 的构建就是为彻底的安全性。它已经自动处理了净化输入数据和跨域伪造请求(CSRF),你就不用操心这些了。你同时还享有 .NET 编译器的静态类型检测的优势,它像个时刻警惕着,还有些强迫症的审校者。这样,在使用一个变量或者某些数据时,那些无意识的错误就插翅难逃。
  • 作为对比,这里要指出, .NET Framework 是另一个 .NET标准 的实现,它只能运行在 Windows 上。在 .NET Core 出现并把 .NET 推向 Mac 和 Linux 之前,它是唯一的 .NET 运行时库。 http://ASP.NET Core 也可以跑在 Windows 专用的 .NET Framework 上,但我不会过多涉及这个主题。
    如果你已经被这些命名搞糊涂了,别发愁!咱们马上就要写代码进行实践了。
    .NET Core 和 .NET 标准
    你可能还会听说 .NET Core 和 .NET标准,这些命名有些混乱,所以在此做一简短的释疑:.NET 标准 是一个平台无关的接口,它定义了特性和 API。值得指出的是,.NET 标准并不等同于任何实际的代码或者功能,仅仅是 API 的定义。.NET 标准现存多个不同的“版本”或者说级别,反映出提供 API 的数量(或者说 API 所覆盖的广度)。比如 .NET标准2.0 的 API 数量比 .NET标准1.5 多,后者的 API 又比 .NET标准1.0 多。.NET Core 是可安装在 Windows、Mac或者Linux上的 .NET 运行时库。它在各个操作系统上,使用对应的平台相关代码实现了定义于 .NET 标准中的 API。你将要把它安装到机器上,用来构建和运行 http://ASP.NET Core 应用程序。
    .NET Core与 .NET Framework 相比优势包括: 跨平台、提高性能、并行版本控制、新API、开源。目前NET Framework 还不会被 .NET Core 代替。Core会试图缩小二者在实现上的差距,下表将 http://ASP.NET Core 与 http://ASP.NET 4.x 进行比较:http://ASP.NET Core http://ASP.NET 4.x 针对 Windows、macOS 或 Linux 进行生成 针对 Windows 进行生成 Razor 页面是在 http://ASP.NET Core 2.x 及更高版本中创建 Web UI 时建议使用的方法 使用 Web 窗体、SignalR、MVC、Web API、WebHooks 或网页 每个计算机多个版本 每个计算机一个版本 比 http://ASP.NET 4.x 性能更高 良好的性能 选择 .NET Framework 或 .NET Core 运行时 使用 .NET Framework 运行时
    运用场景
        (1) 在什么情况下要求使用 .NET Core包括: 用户有跨平台需求、用户正在面向微服务、用户正在使用 Docker 容器、需要高性能和可扩展的系统、需按应用程序提供并行的 .NET 版本。
        (2) 在什么情况下使用.NET Framework包括: 当前使用 .NET Framework(建议扩展而不是迁移)、不可用于 .NET Core 的第三方 .NET 库或 NuGet 包、不可用于 .NET Core 的 .NET 技术、不支持 .NET Core 的平台。
         不可用于 .NET Core的.NET技术包括:不能用于 http://ASP.NET Web 窗体、WCF 服务的实现(将来会考虑在Core上实现)、工作流相关的服务。
    欢迎添加个人微信号:Like若所思。
    欢迎关注我的公众号,不仅为你推荐最新的博文,还有更多惊喜和资源在等着你!一起学习共同进步!

a961dc047a148eb07e0f4b0a660826b4.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值