读书笔记:Pro ASP.NET Core MVC 2 [Chap1 ]

Part 1 Introducing ASP.NET Core MVC 2

CHAPTER 1 ASP .NET Core MVC in Context

这一章基本没有任何营养,可略过

ASP.NET Web Form的问题

  1. View State weight: 为了保存上下文信息,需要把大量的内容放在ViewState中,在client和server间传来传去,而且随着请求次数增多,这个体积会越来越大
  2. Page life cycle: 为了能够让整个客户端开发像是 event-driven的,页面的生命周期变得非常的复杂,很少有人能够写出不在runtime出现奇奇怪怪各种错误的程序
  3. False sense of separation of concerns: 后端代码融合了页面逻辑和业务逻辑,导致整个程序非常不稳定且笨重
  4. Limited control over HTML:使用控件产生的html代码经常和自己预期的结果不一样
  5. Leaky abstraction: 有时为了实现自己需求的功能,需要自己写HTTP逻辑,导致你不得不在复杂的web form逻辑中使用很复杂的方法才能完成最原始的技术
  6. Low testability: 页面逻辑的混合导致不容易测试

MVC框架的产生

2007年10月,Microsoft发布了新的开发平台,基于已有的ASP.NET,就像是专门解决大量对 Web Form的批评和与Ruby on Rails的竞争问题而开发的。回归了原始的编程方式,直接操作HTML和CSS等。

ASP.NET Core

2015年,微软发布了新的 ASP.NET和MVC框架发展方向,最终演变成了ASP.NET Core. ASP.NET Core是基于 .NET Core的,而后者是一个跨平台的.NET Framework. 它能够支持更多不同的操作系统和host环境,比如云。
ASP.NET Core是一个全新的框架,它不再含有Web Form中的残留物,非常容易上手。

主要优势
  1. ASP.NET Core MVC 使用 MVC模式
  2. 扩展性: ASP.NET Core and ASP.NET Core MVC 提供了很多独立的组件,包括接口和抽象类,可以完全自己制定。ASP.NET Core MVC给每个组件都提供了3种使用方式:
    1. 使用组件的默认实现
    2. 继承一个子类来稍微修改行为
    3. 直接实现接口或者抽象类来完全重写行为
  3. 与HTTP/HTML紧密关联
  4. 可测试性
  5. 强大的路由系统
  6. 使用语言最新的API
  7. 跨平台
  8. 开源

本书结构

  • Part 1: Introducing ASP.NET Core MVC: 使用一个例子来展示各个方面
  • Part 2: ASP.NET Core MVC in Detail: 逐一解释每个功能部分

你可能感兴趣的:(C#,ASP.Net,MVC)