架构师内功心法之设计原则
1.3.七大设计原则[x] 第1章 Open-Closed Principle 开闭原则[x] 第2章 Dependence Inversion Principle 依赖倒置原则[x] 第3章 Simple Responsibility Principle 单一职责原则[x] 第4章 Interface Segregation Principle 接口隔离原则[x] 第5章 Law of Demeter 迪米特法则[x] 第6章 Liskov Substitution Principle 里氏替换原则[x]...
2024-01-10实时协同编辑架构设计
今天和大家聊一聊协同编辑的架构设计。什么是协同编辑协同编辑是指多人同时对同一份文档进行编辑。例如我们熟悉的wiki,百度百科,以及办公产品腾讯文档,乃至我们的代码管理工具git,都可以算作是协同编辑产品。实时协同编辑随着大家在家办公,异地办公的情况普及,实时协同编辑...
2024-01-10MySQLOperator01|架构设计概览
高日耀 资深数据库内核研发毕业于华中科技大学,喜欢研究主流数据库架构和源码,并长期从事分布式数据库内核研发。曾参与分布式 MPP 数据库 CirroData 内核开发(东方国信),现主要负责 MySQL 系列产品内核开发(青云科技)。| 背景随着云原生技术的成熟和普及,MySQL 运行在 K8s 平台提供服务...
2024-01-10首日1.7亿访问量:穗康小程序口罩预约前后端架构及产品设计
在战“疫”期间,腾讯与广州市政府合作,在2天内上线了“穗康”小程序口罩预约功能,解决了购买口罩难的问题,上线首日访问量1.7亿,累计参与口罩预约人次1400万+。本文是腾讯云专家产品经理 汤文亮老师在「云加社区沙龙online」分享整理,为大家揭晓其前后端架构及产品设计。点击视频,查...
2024-01-10快手春节红包背后,高并发存储架构设计
2020年春节,腾讯云文件存储(CFS)在通过了预演层层压测的选拔后成为快手广告推荐业务的护旗手,以100%的可用性护航了快手春节红包活动。本文是腾讯云高级工程师陈宏亮在「云加社区沙龙online」的分享整理,为大家带来应对单文件大吞吐高并发的存储架构设计方案!点击视频,查看完整直播回...
2024-01-10架构设计|异步请求如何同步处理?
本文创意来自一次业务需求,这次需要接入一个第三方外部服务。由于这个服务只提供异步 API,为了不影响现有系统同步处理的方式,接入该外部服务时,应用对外屏蔽这种差异,内部实现异步请求同步。全文摘要:异步给现有架构带来的问题Dubbo 异步转同步解决方法异步转同步架构设计方案0x00...
2024-01-10《软件架构基础》常用的软件架构设计
可见度。各个子系统只能与同一层及其下一层的子系统存在依赖关系。易变性最上层放置随用户需求的改变而改变的元素最底层放置随实施平台的改变而改变的元素中间层放置广泛适用于各种系统和实施环境的元素层数。小型3层,原则不超过10层常见的分层模型客户端-服务器模型三层模型:...
2024-01-10架构设计模板
1.概述1.1 术语1.2 需求背景1.3 实现目标1.4 条件与限制2 用例分析2.1 涉众分析2.2 总体业务流程2.3 系统用例概述2.4 系统用例分析2.4.1 XXXX(用例名称)2.4.2 XXXX(用例名称) 2.5实体.2.5.1 XXX(实体名称)2.5.2 XXX(实体名称)3 系统架构和领域模型.3.1 定义系统整体架构3.2 关键...
2024-01-10计算压力倍增,携程度假起价引擎架构演变
携程度假每个旅游线路在每期、每天的价格均有变化,而价格变化又受到多个因素影响。为尽快捕捉到价格变化,需要不断优化调整架构,使得价格调整灵敏度更高更准。这对被调服务及硬件产生了极大的压力,也带来了新的瓶颈。那么,携程是如何解决这一难题的呢?本文是携程高级研发经理陈少...
2024-01-10前端架构设计:模型驱动的前端开发
如果把「客户端」想成是楼,把「数据」想成是水——「Model」就是这幢楼的蓄水池,提供充足的水源;「ViewModel」是将蓄水池里的水进行净化等加工的地方,然后输送给挨家挨户;「View」部分的每个 UI 组件就是「挨家挨户」,对水进行消费的地方。一切皆为模型模型是人们根据事物特征将它们分...
2024-01-10门票设计内容
门票设计是每个旅游景点都必备的重要元素,一张好的门票不仅可以为旅游景点带来更多的经济效益,还能够吸引更多的游客前来参观。门票设计应当符合百度SEO优化标准,以此来提升门票的曝光度,并将更多的游客吸引到景点。下面将从几个方面详细阐述门票设计中的必要元素。1.门票设计的视觉效...
2024-01-10手绘门票设计
手绘门票设计——让你的入场变得更加独特门票作为活动的入场凭证,一张好看的门票可以增强活动与参与者的互动感,让活动变得更加有趣、有价值。手绘门票设计因其个性化、艺术化、易保存等特点越来越受到大家的欢迎。本文将从手绘门票设计的好处、设计要点、常用手绘工具、手绘门票的分类...
2024-01-10静态存储SRAM设计
SRAM即静态随机存取存储器。它是具有静止存取功能的内存,不需要刷新电路便能保存它内部存储的数据。在工业与科学用的很多子系统,汽车电子等等都用到了SRAM。现代设备中很多都嵌入了几千字节的SRAM。实际上几乎所有实现了电子用户界面的现代设备都可...
2024-01-10概要设计
软件系统的开发是按阶段进行的,一般划分为以下阶段:可行性讨论;需求分析;系统设计(概要设计、详细设计);程序开发;编码,单元测试;系统测试;系统维护。 软件开发过程中要明确各阶段的工作目标、实现该目标所必需的工作内容以及达到的标准。只有在上一个阶段的工作完成后,才能开始...
2024-01-10自己设计门票
自己设计门票是一件很有趣的事情,不仅可以满足自己的创意和审美,还可以为自己的活动打造独一无二的形象。在这篇文章中,我将会介绍如何设计出令人印象深刻的门票,并结合实例进行详细阐述。1.选择合适的主题门票的主题是设计过程中的重要因素之一。主题可以根据活动的性质和主题进行选...
2024-01-10QML设计飘散效果
1,目标及展示首先希望实现文字、图片、控件等在触发后,呈现飘散并消失的效果。在QT例程《Qt Quick Particles Examples》是一个海星点击鼠标后呈现打散的效果,这个效果和最终需要的略有不同,所以我们在它的基础上再加上我需要的一些元素,最终实现如下效果。图1(gif)图62,设计分析这个项目...
2024-01-10FPGA设计技巧
FPGA的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元查找表(LUT)。而且还有一些其他资源,例如:DSP:实际上就是乘加器,FPGA内部可以集成多个乘加器,而一般的DSP芯片往往每个core只有一个。换言之,FPGA可以更容易实现多个DSP core功能。在某...
2024-01-10Qt设计时钟效果
作为一位Qt的初学者,也是一位编程的小白,我今天想教大家如何使用Qt来设计一个时钟。首先,我们要学习如何绘图——QPainter类QPainter通常在一个窗口的重绘事件(paint event)的处理函数paintEvent中进行绘制。QPainter类常用的功能有以下几类:1)设置绘图工具。包括设置画笔(setPen),设置画刷(setB...
2024-01-10设计原则
品牌型号:HUAWEI P50 Pocket系统:HarmonyOS 3设计原则有开闭原则、单一职责原则、依赖倒置原则、接口分离原则。一个软件实体,如类,模块和函数应该对外扩展开发,对内修改关闭。用抽象构建框架,用实现扩展细节。不以改动原有类的方式来实现新需求,而是应该以实现事先抽象出来的接口(或具体类继承抽象类)的方式来实现。一个类只允许有一个职责,即只有一个导致该类变更的原因。如果类与...
2024-01-14设计上海门票
上海是一个充满活力和梦想的城市,拥有许多独特的文化和历史遗迹。前往上海旅游的游客一定不会错过参观这座城市的名胜古迹,同时也需要购买门票。设计上海门票的工作,不仅需要考虑门票的价格、种类和购买方式,还需要注重门票的设计和营销策略,以吸引更多游客前来参观。本文将从不同角...
2024-01-10ue是交互设计吗
ue不是交互设计。交互设计(英语)Interaction Design,缩写IXD),它是定义和设计人工系统行为的设计领域。它定义了两个或多个互动个体之间沟通的内容和结构,以便相互合作,共同实现某种目的。互动设计努力创造和建立以嵌入信息技术为中心的人与产品和服务之间有意义的关系。交互系统设计的目标可...
2024-01-10设计模式学习代理模式
代理模式主要分为三种,静态代理、动态代理、Cglib代理一、静态代理静态代理的条件是目标类与代理类必须实现同一个接口然后通过调用相同的函数完成对目标函数的调用 ,业务操作由目标类实现,非业务操作由代理类实现1.接口public interface Test { void test();}2.目标类public class TestImpl implements T...
2024-01-10设计模式
1、说下你知道的设计模式有哪些?下面 3 种类型中各挑几个常见的或者你用过的说就可以了。2、工厂方法模式和抽象工厂模式有什么区别?工厂方法模式:一个抽象产品类,可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。每个具体工厂类只能创建一个具体产品类的实...
2024-01-10设计模式结构型组合模式
一、组合模式基本介绍组合模式(Composite Pattern),又叫部分整体模式,它创建了对象组的树形结构,将对象组合成树状结构,以表示“整体部分”的关系。组合模式依据树形结构来组合对象,用来表示部分以及整体层次;这种设计模式属于结构性模式;组合模式使得用户对单个对象和组合对象的...
2024-01-10JAVA设计模式-设计原则
6大原则:单一职责原则里氏替换原则依赖倒置原则接口隔离原则迪米特法则开闭原则一、单一职责原则定义:应该有且仅有一个原因引起类的变更带来的好处:类的复杂性降低,实现什么职责有清晰明确的定义可读性提高可维护性提高变更引起的风险降低对于单一职责原则,建议接口一...
2024-01-10设计模式(14)模板方法模式
模板方法模式模板方法模式是面向对象系统中非常朴实的一种模式,体现出面向对象设计中继承和多态的基本特征。在开发应用的过程中,往往会在初期规划一些较粗粒度的算法,而且对参与计算的对象进行抽象,明确算法会使用到哪些方法,每个方法可以提供哪些支持,但此时每个方法本身并没有...
2024-01-10设计模式系列原型模式
适用场景:1、类初始化消耗资源较多2、new 产生的一个对象需要非常繁琐的过程(数据准备、访问权限等)3、构造函数比较复杂原型模式创建方式分为两种:浅克隆 ,深克隆实现方式1、浅克隆克隆出的新对象的引用属性内存地址还是指向原实例属性地址。即新对象与原对象引用属性共用同一内...
2024-01-10设计模式结构型享元模式
一、享元模式基本介绍享元(Flyweight)模式也叫做蝇量模式,运用共享技术有效地支持大量细粒度的对象;常用于系统底层开发,解决系统性能问题,像数据库连接池,里面都有创建好的连接对象,在这些对象中,有我们需要的就直接拿来用,避开重新创建,如果没有我们需要的,则创建一个;享...
2024-01-10Go语言设计模式之结构型模式
目录一、组合模式(Composite Pattern)1.1、简述1.2、Go实现二、适配器模式(Adapter Pattern)2.1、简述2.2、Go实现三、桥接模式(Bridge Pattern)3.1、简述3.2、Go实现四、总结一、组合模式(Composite Pattern)1.1、简述在面向对象编程中,有两个常见的对象设计方法,组合和继承,两者都可以解决代码复用的问题...
2024-01-10设计模式前传——学习设计模式你要先知道这些
软件设计模式概述软件设计模式的产生背景“设计模式”这个术语最初并不是出现在软件设计中,而是被用于建筑领域的设计中。1987 年,肯特·贝克(Kent Beck)和沃德·坎宁安(Ward Cunningham)首先将建筑领域的模式思想应用在 Smalltalk 中的图形用户接口的生成中,但没有引起软件界的关注。1994 年,...
2024-01-10如何调用PIMPL设计模式中的参数化构造函数?
如何将PIMPL设计用于参数化构造函数?如何调用PIMPL设计模式中的参数化构造函数?/* ProcessImpl.h */ class ProcessImpl { public :ProcessImpl(); ProcessImpl(ProcessID thirdParty_pid); ~ProcessImpl(); } /* Process.h */ class Process { public:virtual ~Process() {}; Process(); Proc...
2024-01-10