突然有一次遇到<tamplate>标签的代码可以折叠,但它内部的代码块却无法折叠 解决方法: 点击VSCode软件左上角工具栏的:文件 =》 首选项 =》设置 =》在搜索设置输入框输入 Folding =》修改 Editor:Folding Strategy 选项的值 auto 为 indentat ...
分类:
其他好文 时间:
2020-09-17 16:23:16
阅读次数:
19
首先了解策略模式的主要作用:能够把算法进行封装和动态传递; 可能听上去很抽象,我们引入一个方便理解的案例来解释; 给定一个数组 int[] array = {32,12,42,26,-23,0,-2,99,-19,-29}; 设计功能要求:输出所有的数字大于0的数字 很简单 //判断正数 publi ...
分类:
其他好文 时间:
2020-08-27 17:04:55
阅读次数:
61
策略模式 简介 策略模式用于算法的自由切换和拓展,对应于解决某一问题的一个算法族,允许用户从该算法族中任意选择一个算法解决问题,同时还可以方便地更换算法或增加新的算法。策略模式将算法族中的每一个算法都封装成一个类,每一个类称为一个策略(Strategy)。 策略模式:定义一系列算法,将每一个算法封装 ...
分类:
其他好文 时间:
2020-08-26 17:06:08
阅读次数:
52
代码中有时候会堆积很多if-else,后续有条件变动,需要回过头来对if-else对应的代码块进行修改,这违反了开闭原则。有没有一种方式重构这类代码呢?网上浏览到一篇博客,感觉方式很好,特记录下来,还是用原博客的例子(根据不同条件处理订单)。 通过策略模式+注解的方案重构if-else代码块。 思路 ...
分类:
其他好文 时间:
2020-08-25 18:47:02
阅读次数:
79
开发场景举例 让我们以一个实际开发场景来切入这篇文章的正题。现在,假设需要开发这样一个需求:购物车商品结算时需要根据用户会员等级进行打折。 我们假设用户会员等级被分为几个档次:青铜、白银、黄金、钻石、王者,对应折扣分别为:九折、八折、七折、六折、五折。 那么,我们很容易想到的一种实现方式,就是像下面 ...
分类:
其他好文 时间:
2020-07-24 16:35:37
阅读次数:
74
基本介绍 策略模式的策略,该怎么理解呢?在我看来,就是在面对不同的场景,采取不一样的处理方式 策略模式属于行为型模式,大多应用于动态在一个对象的多种行为进行切换的场景。 **意图:**定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换,以避免在多种算法相似的场景下,使用过多的 if...e ...
分类:
其他好文 时间:
2020-07-22 11:33:06
阅读次数:
63
ReactJs as a JavaScript library created by Facebook that lets us build dynamic user interfaces. What this dynamic user interface even means is that we ...
分类:
Web程序 时间:
2020-07-21 09:48:32
阅读次数:
76
Sharding-Proxy是一个分布式数据库中间件,定位为透明化的数据库代理端。作为开发人员可以完全把它当成数据库,而它具体的分片规则在Sharding-Proxy中配置。它的整体架构图如下: 在架构图中,中间的蓝色方块就是我们的中间件Sharding-Proxy,下面连接的是数据库,我们可以配置 ...
分类:
其他好文 时间:
2020-07-20 15:24:41
阅读次数:
84
K8s之deploy挂载Volumes 一. 创建Host类型pv 1.1 创建pv yaml文件 -bash-4.2# cat iam_mount_pvc.yaml apiVersion: apps/v1 kind: Deployment metadata: creationTimestamp: ...
分类:
其他好文 时间:
2020-07-20 13:34:07
阅读次数:
165
模版方法模式(Template Method Pattern):用于定义一个操作中算法的骨架,而将一些步骤延迟到子类中。
模版方法模式使得子类可以不改变一个算法的结构及可重定义该算法的某些特定步骤。
简而言之:模版方法模式功能在于固定算法骨架,而让具体算法实现可扩展。 ...
分类:
其他好文 时间:
2020-07-20 10:59:57
阅读次数:
75