zoukankan      html  css  js  c++  java
  • 11月core学习笔记

    假如你是一个架构的搭建者,该如何设计web框架
    背景:一个httpcontext,里面有request信息
     
    asp.net管道事件
    因为有多个固定步骤,每个步骤前后都可能要扩展动作,把动作前后分辨添加事件,支持动作注册
     
    注册动作后,请求进来时,就会按照顺序执行事件(注册的动作就执行了)
     
    以此完成扩展性设计
     
    管道模型的本质
     
    httprequest==》httpresponse
    httpcontext==》action
    管道的本质就是一个方法,接收httpcontext,然后去执行一些动作
     
     
    requestdelegate
    接收一个httpcontext
     
     
    1、confige
    1)是一张白纸,没有内置任何东西,要什么写什么 pay-for-what-you-use
    2)扩展比较容易
     
     
    ##############################################################
     
    why IOC
     
    1、可以去掉对细节的依赖,方便扩展
    减少影响范围,甚至转移到配置文件依赖,只需要改配置文件
    2、可以做到屏蔽细节,对象依赖注入(DI)
     
    DI依赖注入:是实现IOC的手段
    构造对象时,能自动把一拉的对象生成并传入 支持递归无限级
    这种技术手段就叫做依赖注入
     
     
    更好的解耦
     
     
     
    表示层
    IBLL
    业务逻辑层 依赖注入 IOC DI
    IDAL
    数据访问层
     
    调用
     
    数据源 实体类 辅助类
     
    ##############################################################
     
    ServiceCollection 内置在asp.netcore的全新的容器
     
    容器除了能生成对象,还能做很多其他事情
     
    AddTransient 瞬时生命周期 即时构造
    AddSingleton 单例 全程唯一
    AddScoped 作用域单例 容器实例单例
    没有线程单例
     
     
    1、单例很好?
    不建议太多的单例
    配置文件
    链接池
     
    2、瞬时容器
     
    3、请求单例--一次http请求就是一个实例
    这说明一次请求会创建一个容器
     
    比如事务 主要是适用于一次请求只需要一个对象,不同请求需要不同的对象

    AOP面向切面编程
    在不破坏封装的前提下,去额外的扩展功能
     
    1、聚焦业务逻辑,轻松扩展功能
    2、代码复用,集中管理
     
     
     
    面向切面编程-Filter
    1、Autorization Filter
    2、Resource Filter
    3、Action Filter
    4、Exception Filter
    5、Result Filter
     
     
    程序运行
     
    dotnet 项目.dll --urls="http://*:5000" --ip="127.0.0.1" --port=5000

  • 相关阅读:
    107. Binary Tree Level Order Traversal II
    103. Binary Tree Zigzag Level Order Traversal
    102. Binary Tree Level Order Traversal
    690. Employee Importance
    1723. Find Minimum Time to Finish All Jobs
    LeetCode 329 矩阵中最长增长路径
    7.2 物理内存管理
    LeetCode 面试题 特定深度节点链表
    LeetCode 100 相同的树
    npm安装包命令详解,dependencies与devDependencies实际区别
  • 原文地址:https://www.cnblogs.com/sailing92/p/14155158.html
Copyright © 2011-2022 走看看