摘要: 适配器模式(Adapter Design Pattern) 将不兼容的接口转换为可兼容的接口,让原本由于接口不兼容而不能一起工作的类可以一起工作。 实现方式: 类适配器:继承 对象适配器:组合 如果 Adaptee 接口并不多,那两种实现方式都可以。 如果 Adaptee 接口很多,而且 Adapt 阅读全文
posted @ 2021-01-18 15:45 kudo_shini 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 装饰器模式 装饰器模式主要解决继承关系过于复杂的问题,通过组合来替代继承。它主要的作用是给原始类添加增强功能。这也是判断是否该用装饰器模式的一个重要的依据。除此之外,装饰器模式还有一个特点,那就是可以对原始类嵌套使用多个装饰器。为了满足这个应用场景,在设计的时候,装饰器类需要跟原始类继承相同的抽象类 阅读全文
posted @ 2021-01-18 15:44 kudo_shini 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 桥接模式( Bridge Design Pattern) 将抽象和实现解耦,让它们可以独立变化 Notification 类相当于抽象,MsgSender 类相当于实现,两者可以独立开发,通过组合关系(也就是桥梁)任意组合在一起。所谓任意组合的意思就是,不同紧急程度的消息和发送渠道之间的对应关系,不 阅读全文
posted @ 2021-01-18 15:42 kudo_shini 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 代理模式(Proxy Design Pattern) 通过引入代理类来给原始类附加功能;为了将框架代码和业务代码解耦,代理模式就派上用场了。 代理模式的原理解析 参照基于接口而非实现编程的设计思想,将原始类对象替换为代理类对象的时候,为了让代码改动尽量少,在刚刚的代理模式的代码实现中,代理类和原始类 阅读全文
posted @ 2021-01-18 15:41 kudo_shini 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 打印(message) 基本用法 message([<mode>] "message text" ...) message(<checkState> "message text" ...) 用法一(打印信息) mode usage -/NOTICE 无格式 STATUS 非重要消息; DEPRECA 阅读全文
posted @ 2021-01-15 18:05 kudo_shini 阅读(565) 评论(0) 推荐(0) 编辑
摘要: 宏和函数(marco&function) 基本用法 macro macro(MACRO_NAME arg) message("arg = ${arg}") endmacro() function function(FUNCTION_NAME arg) message("arg = ${arg}") 阅读全文
posted @ 2021-01-15 17:06 kudo_shini 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 断言 断言方法 断言结果 ASSERT_ * fatal failures(致命错误,程序中断) EXPECT_ * non-fatal failure(非致命错误,适用于普通错误) 基本断言方法 fatal assertion Nonfatal assertion Verifies ASSERT_ 阅读全文
posted @ 2021-01-15 09:36 kudo_shini 阅读(185) 评论(0) 推荐(0) 编辑
摘要: vue3+TS 组件导出 vue3.0+ TypeScript vue2.0中常用方法,不推荐 配合shims-vue.d.ts进行组件定义和注册 【注意】:导入组件时需加上‘.vue’后缀 import LaMenu from "@/components/Menu.vue"; 目前vue-clas 阅读全文
posted @ 2020-11-27 11:57 kudo_shini 阅读(5326) 评论(0) 推荐(0) 编辑
摘要: Doxygen注释 Doxygen是一种开源跨平台的,以类似JavaDoc风格描述的文档系统,完全支持C、C++、Java、Objective-C和IDL语言,部分支持PHP、C#。注释的语法与Qt-Doc、KDoc和JavaDoc兼容。Doxygen可以从一套归档源文件开始,生成HTML格式的在线 阅读全文
posted @ 2020-11-27 11:28 kudo_shini 阅读(516) 评论(0) 推荐(0) 编辑
摘要: Vue源码-工具方法 /* */ //Object.freeze()阻止修改现有属性的特性和值,并阻止添加新属性。 var emptyObject = Object.freeze({}); // these helpers produces better vm code in JS engines 阅读全文
posted @ 2020-11-27 11:18 kudo_shini 阅读(269) 评论(0) 推荐(0) 编辑