摘要: 目录 一、什么是单元测试 二、什么是集成测试 三、使用NUnit框架进行单元测试 3.1、如何进行单元测试 3.1.1、其中常用的Attribute 3.1.1.1、[TestFixture] 3.1.1.2、[Test] 3.1.1.3、[SetUp] 3.1.1.4、[TearDown] 3.1 阅读全文
posted @ 2021-06-10 07:08 Harley-Chang 阅读(2284) 评论(0) 推荐(0) 编辑
摘要: 一、块级声明 声明那些只能在函数内部、大括号之内才可以访问的变量,拥有以下特点: 函数内部 "{"和"}"之间 二、变量提升机制 在全局/函数作用域,使用var声明的变量,不管在哪里声明的变量,都会被当成在当前作用域顶部声明的变量,代码清单如下: function init(){ if (false 阅读全文
posted @ 2023-11-05 20:55 Harley-Chang 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 概述 我们在做网站开发时,为了网站的运行安全,往往会做一些渗透测试,来观察我们部署的系统是否存在安全问题,在做完这个之后,往往会形成一套开发规则,等待系统计划上线时,一定要遵循这个规则。 以下是一些站点部署的配置的记录,往往会在web.config文件中进行配置,这样网站运行时就会遵循这些规则 <h 阅读全文
posted @ 2023-10-29 19:26 Harley-Chang 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 概述 C#9.0中的switch 匹配模式引入了许多新特性,其中一些特性是C#8.0中不存在的,比如以下特性: 关系模式:可以使用关系运算符 模式匹配+逻辑模式:可以使用模式匹配+逻辑模式(如and、or)来组合多个模式 模式匹配+关系模式:可以使用模式匹配+关系运算符(如<、>、<=、>=、==、 阅读全文
posted @ 2023-10-22 13:57 Harley-Chang 阅读(632) 评论(0) 推荐(0) 编辑
摘要: dotnet --list-sdks // 列出已经安装的sdk版本信息 dotnet --list-sdks dotnet --list-runtimes // 列出已经安装的运行时版本信息 dotnet --list-runtimes dotnet nuget list source // 这会 阅读全文
posted @ 2023-10-15 21:14 Harley-Chang 阅读(1757) 评论(0) 推荐(0) 编辑
摘要: 访问者模式 定义(GoF):表示一个作用于某对象结构中的各种操作,它使你在不改变各个元素类的前提下定义作用于这些元素的新操作。 先通过结构图,来了解访问者模式 应用场景 我们先看一下访问者模式中都有哪些角色 实际上访问者模式中有三类对象,访问者、元素对象、对象结构,核心要做的事情都是在具体的访问者中 阅读全文
posted @ 2022-09-08 08:04 Harley-Chang 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 高层模块不应该依赖于低层模块。二者都应该依赖于抽象。 抽象不应该依赖于细节。细节应该依赖于抽象。 1、依赖倒置原则(dependency inversion principle) 为什么在这条原则的名字中使用“倒置”这个词。这是由于许多传统的软件开发方法,比如结构化分析和设计,总是倾向于创建一些高层 阅读全文
posted @ 2022-07-14 08:04 Harley-Chang 阅读(719) 评论(0) 推荐(0) 编辑
摘要: 这个原则用来处理“胖(fat)”接口所具有的缺点。如果类的接口不是内聚的(cohesive),就表示该类具有“胖”的接口。换句话说,类的“胖”接口可以分解成多组方法。每一组方法都服务于一组不同的客户程序,如果你是使用C#/Java这种面向对象编程语言的话,可以理解每一组方法都服务于不同的对象。这样一 阅读全文
posted @ 2022-07-12 08:14 Harley-Chang 阅读(746) 评论(0) 推荐(0) 编辑
摘要: OCP背后的主要机制是抽象(abstraction)和多态(polymorphism)。在静态类型语言中,比如C++和Java,支持抽象和多态的关键机制之一是继承(inheritance)。正式使用了继承,我们才可以创建实现其基类(base class)中抽象方法的派生类。 是什么设计规则在支配着这 阅读全文
posted @ 2022-05-29 23:41 Harley-Chang 阅读(594) 评论(0) 推荐(0) 编辑
摘要: 1、开放封闭原则(open—closed principle) 软件实体(类、模块、函数等等)或者说我们在面相对象编程时,应该是可以扩展的,但是不可修改的。 如果程序中的一处改动就会产生连锁反应,导致一系列相关模块的改动,那么设计就具有僵化性的臭味。OCP建议我们应该对系统进行重构,这样以后对系统在 阅读全文
posted @ 2022-05-22 22:46 Harley-Chang 阅读(649) 评论(0) 推荐(0) 编辑
摘要: 1、单一职责原则(single responsibility principle): 就一个类而言,应该仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在了一起。一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的(fragile)设计,当变化发生 阅读全文
posted @ 2022-05-15 15:19 Harley-Chang 阅读(400) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示