.Net Core学习

1..Net Core 和.Net Framework 的区别

  • 推出时间和历史背景
    • .Net Framework:第一个版本大约在 2002 年推出,历史悠久,经过多年的发展和迭代,积累了丰富的类库和成熟的开发工具,在 Windows 平台上有广泛的应用和深厚的基础。
    • .Net Core:第一个版本在 2016 年左右推出,是微软为了适应云计算、移动计算等新的技术趋势和跨平台需求而推出的新一代开发框架。(https://dotnet.microsoft.com/learn/dotnet/what-is-dotnet-core
  • 开源性
    • .Net Framework:尽管其中的一些部分后来开源了,但它是通过商业协议发布的,本质上是一个私有的商业软件。开发基于.Net Framework 的产品时,需要遵循微软的规则。
    • .Net Core:是完全开源的,通过开源协议发布。任何个人或企业发布基于.Net Core 的产品时,无需向微软付费,只需按照开源协议的规则即可。(https://github.com/dotnet
  • 跨平台性
    • .Net Framework:主要针对 Windows 平台,包含了 Windows 平台的各种特性,无法在 Linux、macOS 等其他操作系统上直接运行。
    • .Net Core:可以在 Windows、Linux、macOS 等多个操作系统上运行,具有很好的跨平台特性,方便开发者在不同平台上共享业务逻辑。(https://dotnet.microsoft.com/learn/dotnet/what-is-dotnet-core
  • 应用场景和功能侧重
    • .Net Framework:适合开发 Windows 桌面应用程序、企业级应用等对 Windows 平台特性依赖较强的应用。可以使用 Windows 窗体(WinForms)、WPF 等技术进行桌面应用开发,并且在 Web 开发方面有 ASP.NET(非 ASP.NET Core)等框架支持。
    • .Net Core:更适合开发云原生应用、微服务、Web 应用等现代化的应用程序。在 Web 开发方面,有 ASP.NET Core 框架,其性能更高、更轻量级,并且易于部署和扩展。(https://dotnet.microsoft.com/learn/dotnet/what-is-dotnet-core
  • 性能表现
    • .Net Core:在性能方面进行了优化,尤其是在处理高并发、大规模数据等场景下,表现出更好的性能和可扩展性。例如,.Net Core 的启动速度更快,占用资源更少,能够更好地适应云计算和容器化的环境。(https://dotnet.microsoft.com/learn/dotnet/what-is-dotnet-core
    • .Net Framework:性能也较为出色,但在一些特定的场景下,可能不如.Net Core 表现得那么优秀。
  • 部署方式
    • .Net Framework:是通过将运行时安装到 Windows 系统中,让所有应用可以共享这个运行时。
    • .Net Core:由于是跨平台的,需要针对不同的平台进行打包运行时。不过,它也支持独立部署,即可以将运行时与应用程序一起打包,方便在不同的环境中部署。(https://dotnet.microsoft.com/learn/dotnet/what-is-dotnet-core

2..Net Core 不同版本的变化

  • .Net Core 1.x 系列(2016 年)
    • 这是.Net Core 的最初版本,提供了跨平台、高性能和轻量级的开发体验,为后续版本奠定了基础。但作为初始版本,存在一些功能上的限制和局限性,且后续不再得到维护和支持。
  • .Net Core 2.x 系列(2017 年)
    • 性能大幅提升,带来了更好的开发体验。
    • 加强了与.Net Framework 的兼容性,使开发者更容易从.Net Framework 迁移到.Net Core。
    • 引入了 ASP.NET Core 2.x,为构建 Web 应用程序提供了更强大的功能和工具。(Download .NET Core 2.2 (Linux, macOS, and Windows)
  • .Net Core 3.x 系列(2019 年)
    • 首次引入对 Windows 桌面应用的支持,包括对 WPF 和 Windows Forms 的现代化和改进,拓宽了.Net Core 的应用场景。
    • 引入了 C# 8.0 的语言特性,提升了编程语言的表达能力和开发效率。
    • 推出了长期支持版本.Net Core 3.1,为企业级应用提供了更稳定的选择。(Download .NET Core 3.1 (Linux, macOS, and Windows)
  • .Net 5(2020 年)
  • .Net 6 及后续版本
    • 在性能和功能上持续优化,支持多种操作系统和平台,不断引入新的语言特性和框架组件。例如,.Net 6 引入了新的 MAUI(Multi-platform App UI)框架,用于构建跨平台的本机应用程序;.Net 7 在性能改进、对 ARM64 的支持等方面有了进一步的提升。(Download .NET 6.0 (Linux, macOS, and Windows)

3..Net Core 学习路线

  • 基础阶段
    • 学习 C# 语言基础
      • 网站推荐
        • 微软官方文档 - C#:这是微软官方提供的 C# 语言文档,内容详细、权威,涵盖了 C# 语言的各个方面,包括语法、数据类型、面向对象编程等基础知识,是学习 C# 的重要参考资料。
        • 菜鸟教程 - C# 教程:该网站的教程简单易懂,适合初学者快速入门,对 C# 的基础语法、基本概念等进行了详细的讲解和示例演示。
        • W3School - C# 教程:提供了丰富的 C# 学习资源,包括教程、示例代码和在线测试等,方便学习者边学边练,巩固所学知识。
    • 了解.Net Core 基础概念
      • 网站推荐
        • .Net Core 官方网站:微软官方的.Net Core 介绍页面,提供了.Net Core 的基本概念、特性、应用场景等方面的信息,是了解.Net Core 的权威来源。
        • 开源中国 -.Net Core 专区:有很多关于.Net Core 的技术文章、教程和项目案例分享,开发者可以在这里了解到.Net Core 在国内的应用情况和实践经验。
        • InfoQ -.Net Core 专题:提供了高质量的.Net Core 相关技术文章、演讲视频和专家观点,有助于学习者深入了解.Net Core 的技术趋势和最佳实践。
  • 中级阶段
  • 高级阶段
    • 学习云计算和容器化
      • 网站推荐
        • 微软 Azure 官方文档:如果想学习在微软 Azure 云平台上部署和运行.Net Core 应用程序,Azure 官方文档是必不可少的学习资源,提供了详细的操作指南和最佳实践。
        • 阿里云 -.Net Core 上云指南:阿里云也提供了.Net Core 在其云平台上的部署和使用指南,对于在国内使用阿里云的开发者来说具有参考价值。
        • Docker 官方文档 -.Net Core 相关:学习如何将.Net Core 应用程序容器化,Docker 官方文档提供了详细的教程和示例,帮助开发者掌握容器化技术。
    • 深入研究性能优化和安全
      • 网站推荐
        • 微软官方文档 -.Net Core 性能优化:微软官方提供的.Net Core 性能优化指南,介绍了如何优化.Net Core 应用程序的性能,包括代码优化、数据库优化、缓存使用等方面的技巧。
        • OWASP -.Net Core 安全指南:OWASP 是一个专注于应用程序安全的组织,其提供的.Net Core 安全指南对于开发者保障.Net Core 应用程序的安全具有重要的参考价值。
        • CSDN -.Net Core 性能优化与安全专栏:CSDN 上有很多开发者分享的.Net Core 性能优化和安全方面的技术文章和经验总结,是一个很好的学习资源。

4..Net Core 重点知识点归纳

  • 依赖注入:这是.Net Core 中非常重要的一个概念,用于实现对象之间的解耦,提高代码的可维护性和可测试性。开发者需要掌握如何使用依赖注入容器(如 Microsoft.Extensions.DependencyInjection)来管理对象的生命周期和依赖关系。(依赖关系注入 - .NET | Microsoft Learn
  • 中间件:在 ASP.NET Core 中,中间件是处理 HTTP 请求和响应的重要组件。开发者需要了解中间件的概念、作用和使用方法,以及如何编写自定义中间件来实现特定的功能,如日志记录、身份验证、授权等。(ASP.NET Core 中间件 | Microsoft Learn
  • 配置管理:.Net Core 提供了灵活的配置管理机制,开发者需要掌握如何读取和使用配置文件(如 appsettings.json)中的配置信息,以及如何在不同的环境中使用不同的配置文件。(ASP.NET Core 中的配置 | Microsoft Learn
  • 数据库操作(Entity Framework Core):Entity Framework Core 是.Net Core 中用于数据库操作的 ORM 框架,开发者需要掌握如何使用 Entity Framework Core 进行数据的增删改查、事务处理、数据库迁移等操作。(Entity Framework Core 概述 - EF Core | Microsoft Learn
  • 身份验证和授权:对于需要保护的应用程序,身份验证和授权是必不可少的。开发者需要了解.Net Core 中身份验证和授权的机制和实现方法,如基于 JWT 的身份验证、基于角色的授权等。(ASP.NET Core 身份验证概述 | Microsoft Learn
  • 部署和发布:掌握.Net Core 应用程序的部署和发布方法,包括在不同操作系统上的部署、容器化部署(如使用 Docker)、在云平台上的发布等。(应用程序发布 - .NET | Microsoft Learn
  • 性能优化:了解.Net Core 应用程序的性能优化方法,如代码优化、数据库优化、缓存使用、异步编程等,以提高应用程序的性能和响应速度。(https://docs.microsoft.com/zh-cn/dotnet/core/performance/performance-tips
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值