摘要: 前言 浅拷贝(shallow copy)和深拷贝(deep copy)是在编程中经常遇到的概念,尤其在处理数据结构时很重要。它们是针对对象(object)或数据结构(data structure)进行复制操作时的两种不同方式。 浅拷贝和深拷贝是在编程中常见的两种拷贝对象的方式,它们在拷贝对象时的行为 阅读全文
posted @ 2024-03-06 13:48 咸鱼翻身? 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 简介 管道 .NET Core 中的管道是一个用于处理 HTTP 请求的组件。它是 ASP.NET Core 应用程序的核心部分,负责将传入的 HTTP 请求传递给适当的处理程序并生成响应。管道由一系列中间件组成,每个中间件都可以对请求或响应进行操作,然后将其传递给下一个中间件或终止请求处理。 中间 阅读全文
posted @ 2024-03-05 16:18 咸鱼翻身? 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 简介 面向切面编程(AOP,Aspect-Oriented Programming)是一种编程范式,旨在增强现有的面向对象编程(OOP,Object-Oriented Programming)范式。AOP 通过在程序执行过程中动态地将横切关注点(cross-cutting concerns)从它们所 阅读全文
posted @ 2024-03-04 14:27 咸鱼翻身? 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 简介 迪米特法则(Law of Demeter,LoD),也称为最少知识原则(Principle of Least Knowledge),是面向对象设计中的一个重要原则。它强调了一个对象应该对其他对象有尽可能少的了解,也就是说,一个对象不应该直接与其它对象进行过多的交互。简而言之,一个对象应该对其他 阅读全文
posted @ 2024-02-29 16:55 咸鱼翻身? 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 简介 依赖倒置原则(Dependency Inversion Principle,DIP)是面向对象设计中的一个重要原则,它强调了高层模块不应该依赖于低层模块,二者都应该依赖于抽象;而且抽象不应该依赖于具体实现细节,具体实现细节应该依赖于抽象。简而言之,高层模块和低层模块都应该依赖于抽象,而不是依赖 阅读全文
posted @ 2024-02-29 16:45 咸鱼翻身? 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 简介 接口隔离原则(Interface Segregation Principle,ISP)是面向对象设计中的一项原则,它强调一个类对另一个类的依赖应该建立在最小的接口上,而不是依赖于不需要的接口。换句话说,一个类不应该强迫其他类依赖它们不需要的方法。 主要思想: 接口粒度:接口应该具有最小的粒度, 阅读全文
posted @ 2024-02-29 16:40 咸鱼翻身? 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 简介 里氏替换原则(Liskov Substitution Principle,LSP)是面向对象设计中的一个重要原则,由芭芭拉·利斯科夫(Barbara Liskov)在1987年提出。它是继承原则的一种深化和发展,强调子类必须能够替换掉父类并且不影响程序的正确性。 里氏替换原则的定义为:“如果对 阅读全文
posted @ 2024-02-29 16:31 咸鱼翻身? 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 简介 开闭原则(Open/Closed Principle)是面向对象设计中的一个重要原则,由勃兰特·梅耶(Bertrand Meyer)于1988年提出。该原则指导着设计者编写易于扩展和维护的软件系统。 开闭原则的定义为:“软件中的对象(类、模块、函数等)应该对扩展开放,对修改关闭。”简而言之,这 阅读全文
posted @ 2024-02-29 16:22 咸鱼翻身? 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 简介 单一职责原则(Single Responsibility Principle,SRP)是面向对象设计中的一个重要原则,它强调一个类应该只有一个责任。换句话说,一个类应该只有一个引起它变化的原因。这个原则最初由Robert C. Martin在他的著作《敏捷软件开发:原则、模式与实践》(Agil 阅读全文
posted @ 2024-02-29 16:13 咸鱼翻身? 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 简介 访问者模式(Visitor Pattern)是一种行为型设计模式,用于在不改变被访问元素的类的前提下,定义对这些元素的新操作。该模式通过将算法与数据结构分离,使得可以在不修改数据结构的情况下,增加新的操作。 结构 访问者(Visitor):定义了对于每个元素类所要执行的操作。这些操作可以是不同 阅读全文
posted @ 2024-02-29 15:14 咸鱼翻身? 阅读(25) 评论(0) 推荐(0) 编辑