.Net 应用程序体系结构—C#高级编程(第10版)学习笔记5

1、.Net数据访问:EF(Entity Framework ):Code First优先,并不意味着数据库不能事先存在。而且是更好的选择,也支持关系数据库和NoSQL。

2、一些.net体系结构概念:搞清CLR、.Net Native、IL、Windows 运行库、CLI和.Net 4.6编译器、.Net Core CLI编译等。

3、WPF基于矢量图形;Windows Forms基于像素图形。

4、软件业正转向声明性编程:而.net的XAML是WPF、UWP及.net迈向声明性编程的一步,意味着不是通过编程方式创建对象,而是通过XML类型的编程方式声明一切对象。XAML : eXtensible Application Markup Language

5、UWP相关

需要一个适用于所有Windows设备的API,每个设备系列都可以添加自己的软件开发包(Software Development Kit,SDK)来添加不是API的一部分、但对所有设备可用的功能。添加这些SDK不会破坏程序,但需以编程方式检查在运行程序的平台上是否可用。,以需区分API调用,代码可能混乱,所以依赖注入可能是更好的选择。

6、Web服务和ASP.Net Web API 

1)能满足分布式应用程序90%以上的需求,基于REST,定义了无状态、可伸缩的web服务的指导方针和最佳实践。

2)客户端可以接收Json或XML数据,Json或XML也可以格式化来使用Open Data规范(OData)。

3)便于通过Javscript和UWP使用web客户端。

4)也是创建微服务的一个好方法。微服务可以独立运行和部署,可以自己控制数据存储。

7、WebHooks和SignalR

    对于实时web功能以及客户端和服务器端间的双向通信,可以使用的Asp.Net技术是WebHooks和SignalR.

1)只要信息可用,SignalR就允许将信息尽快推送给连接的客户,使用的是Websocket技术,在webSocket不可用时,它可以回退到基于拉的通信机制。

2)webHooks可以集成公共服务,这些服务可以调用公共Asp.Net Web API服务。webHooks技术从Github或Dropbox和其他服务中接收推送通知。

8、Web服务&windows服务

1)web服务,无论是通过WCF完成或者是ASP.net Web服务完成,都需要一个主机才能运行。而IIS通常是一个很好的选择(因为它提供了所有的服务),但它也可以是自定义程序。

2)windows服务:使用自定义选项创建一个后台进程,在运行Windows时启动的是windows服务。(System.ServiceProcess)

      基于windows内核的操作系统的后台运行,持续运行,做好响应事件的准备,而不是让用户显式地启动时,才可以使用服务。

      一个很好的例子就是web服务器上的world Wide web服务,它监听来自客户端的web请求。

8、Web应用程序

    1) ASP.net5中,不再包含ASP.net Forms,只是ASP.net MVC6.

    2) ASP.net MVC基于MVC模式,更易单元测试,只在后台使用C#,允许前台用户界面代码与HTML、CSS、Javascript清晰分离。

原文地址:https://www.cnblogs.com/yxli2008/p/10885501.html