刷新
设计模式之访问者模式

博主头像 大多数情况下你不需要访问者模式,但当一旦需要访问者模式时,那就是真的需要它了,这是设计模式创始人的原话。可以看出应用场景比较少,但需要它的时候是不可或缺的,这篇文章就开始学习最后一个设计模式——访问者模式。 ...

【设计模式】之迭代器模式

博主头像 定义 迭代器模式(Iterator pattern):用于顺序访问集合对象里的每一个元素,不用暴露集合是怎样存储元素的。 举例 某个班级有若干个学生,现在需要统计这些学生的平均分数。假设所有学生的分数是用数组存储的: int totalScore(int *array, int n) { int s ...

设计模式之模板方法模式

博主头像 在我们实际开发中,如果一个方法极其复杂时,如果我们将所有的逻辑写在一个方法中,那维护起来就很困难,要替换某些步骤时都要重新写,这样代码的扩展性就很差,当遇到这种情况就要考虑今天的主角——模板方法模式。 ...

初识设计模式 - 装饰器模式

博主头像 装饰器模式(Decorator Design Pattern)是一种结构型设计模式,通过将对象放入包含行为的特殊封装对象中来为原对象绑定新的行为。简单地说,就是允许向一个现有的功能添加新的功能,同时又不改变其结构。 ...

了解CI/CD流水线

博主头像 自动化流水线在CI/CD(持续集成/持续交付或持续部署)的实践中发挥着核心作用。本文将对什么是CI/CD流水线、如何构建CI/CD流水线进行讨论。 *持续集成:Continuous Integration *持续交付:Continuous Delivery *持续部署:Continuous Depl ...

DevOps:定义汽车软件新开发模式

博主头像 当前,全球汽车产业正在经历从传统工业向数字化转型的大变革,智能化、数字化、信息化正在成为汽车电子行业转型发展的必由之路。“软件定义汽车”(Software Defined Vehicles,SDV)概念的提出,说明软件在汽车产品中承担的角色越来越重要。随着汽车软件的量级和复杂度不断提高,汽车厂商对嵌 ...

设计模式之策略模式

博主头像 在一个收银系统中,如果普通用户、中级会员、高级会员分别对应着不同的优惠策略,常规编程就要使用一系列的判断语句,判断用户类型,这种情况下就可以使用策略模式。 ...

【设计模式】Java设计模式 - 命令模式

博主头像 命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。 ...

设计模式之状态模式

博主头像 实际开发中订单往往都包含着订单状态,用户每进行一次操作都要切换对应的状态,而每次切换判断当前的状态是必须的,就不可避免的引入一系列判断语句,为了让代码更加清晰直观,我们引入今天的主角——状态模式。 ...

原型模式(创建型)

博主头像 原型模式 介绍 定义:用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象。 简单理解,就是当需要创建一个指定的对象时,我们刚好有一个这样的对象,但是又不能直接使用,我会clone一个一模一样的新对象来使用,这就是原型模式。关键字:Clone。 原型模式分为“深拷贝”和“ ...

【设计模式】之责任链模式

博主头像 定义 **责任链模式(Chain of Responsibility Pattern)**中,有一条由请求处理者对象组成的链条,每个对象(除最后一个对象外)都持有下一个对象的引用,请求发送者将请求发送给第一个对象,请求就会顺着链条走下去,直到有对象能够处理请求。该模式将多个处理者对象解耦,使得请求发 ...

幂等设计详解

博主头像 本文主要从研发人员的角度,结合研发人员日常常见的各类业务场景,从经典系统框架的每一层入手分析幂等处理的时机。希望通过这篇文章的分析,让开发者在日常开发中对幂等的处理不再陌生。抓住导致请求、接口不幂等的本质,在工作中避免再陷入这个陷阱中。 ...

微服务设计(四)---微服务网关与链路追踪

博主头像 一、微服务网关概述 如下图: 不同的微服务一般会有不同的网络地址,客户端在访问这些微服务时必须记住几十甚至几百个地址,这对于客户端方来说太复杂也难以维护。如果让客户端直接与各个微服务通讯,可能会有很多问题: 客户端会请求多个不同的服务,需要维护不同的请求地址,增加开发难度,在某些场景下存在跨域请求的 ...

<1···444546···50>