c#中建造者设计模式详解
基础介绍: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 说白了就是将一个复杂的对象拆分成一个一个零件,然后按照既定顺序和规则进行组装,最终形成这个相对复杂的对象。 具体可分为4个角色: Product(产品):复杂对象本身。 Builder(抽象建造者):既可以是抽象 ...阅读全文
基础介绍: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 说白了就是将一个复杂的对象拆分成一个一个零件,然后按照既定顺序和规则进行组装,最终形成这个相对复杂的对象。 具体可分为4个角色: Product(产品):复杂对象本身。 Builder(抽象建造者):既可以是抽象 ...阅读全文
本节介绍Util应用框架对AspectCore AOP的使用. 概述 有些问题需要在系统中全局处理,比如记录异常错误日志. 如果在每个出现问题的地方进行处理,不仅费力,还可能产生大量冗余代码,并打断业务逻辑的编写. 这类跨多个业务模块的非功能需求,被称为横切关注点. 我们需要把横切关注点集中管理起来 ...阅读全文
总体介绍: 工厂模式主要有三种类型:简单工厂、工厂方法和抽象工厂,该模式用于封装和管理对象的创建,是一种创建型模式。 万物皆对象,创建对象时必然需要new该对象,当需要更改对象时,需要把项目中所有地方都修改一遍,这显然违背了软件设计的开闭原则。 如果使用工厂来生成对象,那么我们只需要跟工厂打交道就可 ...阅读全文
退款业务强耦合到售后系统中,并且业务代码分散到各个业务层,严重缺乏系统的领域边界和分层设计,重构后退款业务逻辑不强依赖售后核心业务逻辑,做到可以独立部署。 ...阅读全文
基础介绍: 确保一个类只有一个实例,并提供一个全局访问点。 适用于需要频繁实例化然后销毁的对象,创建对象消耗资源过多,但又经常用到的对象,频繁访问数据库或文件的对象。 其本质就是保证在整个应用程序的生命周期中,任何一个时刻,单例类的实例都只存在一个。 特性和功能:确保一个类只有一个实例,并提供一个全 ...阅读全文
OpenKey.Cloud 作为 ChatGPT 生态圈内的重要基础设施,提供官方 API 的转发,长久以来一直保持着高稳定性,这是如何做到的?今天就来揭秘 OpenKey 系统的详细架构图。 ...阅读全文
基本介绍: 享元模式的定义:运用共享技术有效地支持大量细粒度的对象重复使用。适用于大量小粒度的对象造成的运行效率和内存使用效率低下的情况。 “享元”顾名思义,“享”共享的意思,“元”单元,最小对象,零部件的意思。 即从字面意思不难看出,该模式旨在共享一些零部件供其使用。 想要实现对这些零部件的重复使 ...阅读全文
网关上的请求头和响应头 当您通过MSE网关将请求转发到后端服务时,在网关中添加的请求头(例如 "hello")会在到达后端服务时一并发送给后端服务。您可以在后端服务中通过请求头获取该值。 当您在MSE网关中添加响应头(例如 "good"),该响应头会在后端服务完成响应之后,由MSE网关添加到响应中。 ...阅读全文
为了广泛支持营销活动的复杂与灵活,Wonder8.promotion(旺德發.营销)引擎使用专门设计的表达式高度提炼信息,可以轻松表达营销活动与用户选取的商品组合之间匹配范围、要求、折扣方式,可以设定多条营销规则的逻辑联合、分组、优先级,并且支持多种为用户计算最优折扣的策略。 本引擎功能细节较多,建... ...阅读全文
一、定义 为子系统中的一组接口提供一个一致的入口,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式是一种结构型模式。 二、描述 包含以下两个角色:1、Facade(外观角色):在客户端可以调用它的方法,在外观角色中可以知道相关的(一个或多个)子系统的功能和责任;在正常情况下, ...阅读全文
非功能性需求是什么呢?保障系统持续健康运转的辅助需求。依然以电商系统的优惠券为例,在促销活动期间发放大量优惠券,如何防止用户集中领券时系统不崩盘呢?活动结束后,如何收缩服务器,节省服务器资源呢? 非功能性需求是面向运维的,重要但是不太紧迫,有时候可以没有操作界面,由架构师提出解决方案,再推动各个业务... ...阅读全文
Kafka 介绍 Kafka 是一个开源的分布式流式平台,它可以处理大量的实时数据,并提供高吞吐量,低延迟,高可靠性和高可扩展性。Kafka 的核心组件包括生产者(Producer),消费者(Consumer),主题(Topic),分区(Partition),副本(Replica),日志(Log), ...阅读全文
本文演示Util应用框架开发的项目中如何编写集成测试. 准备 完成 Web Api 快速入门,本文将在之前生成的示例项目上讲解集成测试的开发. 测试概述 自动化测试对于Util应用框架的开发非常重要,它能保证基础功能的稳定性. 对于使用 Util 开发的业务项目,自动化测试不是必须的,但掌握它可能很 ...阅读全文
当今社会,wifi 、无线网、wlan、热点,无时无刻不在影响着人们生活的方方面面。无论购物生活都离不开wifi,虽然目前无线网的普及率很高,流量资费相对较低,但是仍然还有很大一部人人不能很方便的使用wifi无线网络。很多人可以看到附近很多的wifi热点,但是却无法使用,很恼火,然后就会去想办法破解 ...阅读全文
本文是Util应用框架 Angular UI 开发快速入门教程. Util前端技术概述 Util 应用框架目前仅支持用于开发管理后台的 UI. 本文介绍了 Util UI 的技术特点和功能支持. UI 技术选型 Js语言 TypeScript TypeScript 是 微软开发的脚本语言, 扩展了弱 ...阅读全文
Telegram 宣布为其开发者提供了一项“能够在 App 中运行迷你应用”的新功能( 迷你应用即 Mini App,下文中以“小程序”代替)。 ...阅读全文
一、定义 动态地给一个对象增加一些额外的职责。就扩展功能而言,装饰模式提供了一种比使用子类更加灵活的替代方案。装饰模式是一种结构型模式。 二、描述 包含以下三个角色:1、Component(抽象构件):它是具体构件和抽象装饰类的父类,声明了在具体构件中实现的业务方法,它的引入可以是客户端以一致的方式 ...阅读全文
几年前,我被问到“你是如何变成一名架构师的?”。基于这个话题,我们讨论了很多,比如必要的技术、经验以及所需要的知识储备等。这一次讨论促使我开始思考要成为一名架构师应该具备和学习的东西有哪些,成为一个优秀的架构师应该具备哪些能力和做哪些事情。为此我查阅资料,走访各位大佬,当然也结合自己的经历,最终我输 ...阅读全文
翻出老物件,搭建一个简单的 IOT 开发环境,也算是废物利用了 ,接下来加传感器。1. STM32 采集数据: RTOS。 资源相对比较丰富,可以根据项目需求定制。2. ESP32 网络传输(AT固件 MQTT协议) : AT:封装好的接口,扩展性不是那么好,业务简单的话将就可以用。 SDK:接口比 ...阅读全文
Nexus配置 接上一篇 Nexus安装:https://www.cnblogs.com/huzccc/p/17773901.html 仓库类型 仓库类型 说明 proxy 代理到远程仓库,默认国外,可以修改为国内阿里云代理 group 存放:通过 Nexus 获取的第三方 jar 包 hosted ...阅读全文