设计模式详解

R语言maftools包实战:5分钟搞定TCGA癌症突变数据可视化(附完整代码) 本文详细介绍了如何使用R语言的maftools包快速解析和可视化TCGA癌症突变数据。通过实战演示,从环境搭建、数据导入到核心可视化(如瀑布图、棒棒糖图)和深度统计分析(如生存分析、突变特征),帮助生物信息学研究者高效完成癌症基因组学分析,大幅提升从原始MAF数据到发表级图表的效率。 阅读详情

  设计模式(Design pattern)是一套被反复使用、经过分类编目的、代码设计经验的总结。使用设计模式使得代码具有更好的代码重用性、可读性、可扩展性、可靠性,使得程序呈现高内聚-低耦合的特性。
  设计模式在软件中哪里?面向对象(oo)=>功能模块[设计模式+算法(数据结构)]=>框架[使用到多种设计模式]=>架构 [服务器集群]

六大设计原则

单一职责原则:类的设计尽量做到只有一个原因可以引起它的改变
里氏替换原则:只要父类出现的地方子类就可以出现,且替换成子类也不会出现任何错误或者异常
依赖倒置原则:包含三层含义:高层模块不应该依赖低层模块,两者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。面向接口编程,而不是面向实现编程。在Java语言中,抽象就是指接口或抽象类,两者都是不能直接被实例化的;细节就是实现类,实现接口或继承抽象类而产生的类就是细节,其特点就是可以直接被实例化,也就是可以加上一个关键字new产生一个对象。依赖倒置原则在Java语言中的表现就是:

  • 模块间的依赖是通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的
  • 接口或抽象类不依赖于实现类
  • 实现类依赖接口或抽象类。

面向接口编程,而不是面向过程编程。
接口隔离原则:不要建立臃肿庞大的接口。即接口尽量细化,同时接口中的方法尽量少
迪米特法则: 一个对象应该对其他对象有最少的了解,也就是说一个类要对自己需要耦合或者调用的类知道的最少
开闭原则ocp: 一个软件实体,比如类,模块,函数应该对扩展开放,对修改关闭
合成复用原则:尽量使用合成/聚合的方式,而不是使用继承
在这里插入图片描述
依赖:继承、实现、关联(聚合、组合)

各分类中模式的关键点

【1】单例模式
  单例模式就是确保某一个类只有一个实例,并且提供一个全局访问点。单例模式具备典型的3个特点:1、只有一个实例;2、自我实例化;3、提供全局访问点。
  单例模式的主要优点就是节约系统资源、提高了系统效率,同时也能够严格控制客户对它的访问。也许就是因为系统中只有一个实例,这样就导致了单例类的职责过重,违背了“单一职责原则”,同时也没有抽象类,所以扩展起来有一定的困难。

【2】简单工厂模式
  定义了一个创建对象的类,由这个类来封装实例化对象的行为(代码)。

【3】工厂方法模式
  定义了一个创建对象的抽象方法,由子类决定要实例化的类。工厂方法模式将对象的实例化推迟到子类。
  工厂方法模式非常符合“开闭原则”,当需要增加一个新的产品时,只需要增加一个具体的产品类和与之对应的具体工厂即可,无须修改原有系统。同时在工厂方法模式中用户只需要知道生产产品的具体工厂即可,无须关系产品的创建过程,甚至连具体的产品类名称都不需要知道。

【4】抽象工厂模式
  定义了一个interface用于创建相关或有依赖关系的对象簇,而无需指明具体的类。抽象工厂模式可以将简单工厂模式和工厂方法模式进行整合。
  从设计层面看,抽象工厂模式就是对简单工厂模式的改进(或者称为进一步的抽象)。将工厂抽象成两层, AbsFactory(抽象工厂) 和 具体实现的工厂子类。程序员可以根据创建对象类型使用对应的工厂子类。 这样将单个的简单工厂类变成了工厂簇,更利于代码的维护和扩展。

【5】原型模式
  原型模式就是用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。它主要应用与那些创建新对象的成本过大时。它的主要优点就是简化了新对象的创建过程,提高了效率,同时原型模式提供了简化的创建结构,即:对象.clone()。
  浅拷贝 VS 浅拷贝

【6】建造者模式
  建造者模式主要是将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。建造者模式将复杂产品的构建过程封装分解在不同的方法中,使得创建过程非常清晰,同时它隔离了复杂产品对象的创建和使用,使得相同的创建过程能够创建不同的产品。

【7】适配器模式
  适配器模式将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。其别名为包装器(Wrapper)。主要分为三类:类适配器模式、对象适配器模式、接口适配器模式。

【8】桥接模式
  桥接模式(Bridge模式)是指:将实现与抽象放在两个不同的类层次中,使两个层次可以独立改变。基于类的最小设计原则,通过使用封装、聚合及继承等行为让不同的类承担不同的职责。它的主要特点是把抽象(Abstraction)与行为实现(Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能扩展。

【9】装饰模式
  装饰者模式,动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更加有弹性的替代方案。

【10】组合模式
  组合模式,它创建了对象组的树形结构,将对象组合成树状结构以表示“整体-部分”的层次关系。组合模式使得用户对单个对象和组合对象的访问具有一致性, 即:组合能让客户以一致的方式处理个别对象以及组合对象。

【11】外观模式
  外观模式为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式通过定义一个一致的接口,用以屏蔽内部子系统的细节,使得调用端只需跟这个接口发生调用,而无需关心这个子系统的内部细节。

【12】亨元模式
  享元模式运用共享技术有效地支持大量细粒度的对象。常用于系统底层开发,解决系统的性能问题。像数据库连接池,里面都是创建好的连接对象,在这些连接对象中有我们需要的则直接拿来用,避免重新创建, 如果没有我们需要的,则创建一个。
  享元模式能够解决重复对象的内存浪费的问题,当系统中有大量相似对象,需要缓冲池时。 不需总是创建新对象,可以从缓冲池里拿。这样可以降低系统内存,同时提高效率。
  享元模式经典的应用场景就是池技术了, String常量池、数据库连接池、缓冲池等等都是享元模式的应用,享元模式是池技术的重要实现方式。

【13】代理模式   为一个对象提供一个替身,以控制对这个对象的访问。 即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能。被代理的对象可以是远程对象、 创建开销大的对象或需要安全控制的对象代理模式有不同的形式, 主要有三种 静态代理、 动态代理 (JDK代理、接口代理)和 Cglib代理 (可以在内存动态的创建对象,而不需要实现接口, 他是属于动态代理的范畴)。
  静态代理在使用时,需要定义接口或者父类,被代理对象(即目标对象)与代理对象一起实现相同的接口或者是继承相同父类。优点:在不修改目标对象的功能前提下, 能通过代理对象对目标功能扩展。缺点:因为代理对象需要与目标对象实现一样的接口,所以会有很多代理类一旦接口增加方法,目标对象与代理对象都要维护。
  动态代理,代理对象不需要实现接口, 但是目标对象要实现接口, 否则不能用动态代理。代理对象的生成, 是利用JDK的API,动态的在内存中构建代理对象。动态代理也叫做: JDK代理、 接口代理。JDK中生成代理对象的API:代理类所在包:java.lang.reflect.Proxy;JDK实现代理只需要使用newProxyInstance方法,但是该方法需要接收三个参数:static Object newProxyInstance(ClassLoader loader, Class<?>[] interfaces,InvocationHandler h )。
  静态代理和JDK代理模式都要求目标对象是实现一个接口,但是有时候目标对象只是一个单独的对象,并没有实现任何的接口,这个时候可使用Cglib代理,它是在内存中构建一个子类对象从而实现对目标对象功能扩展, 有些书也将Cglib代理归属到动态代理。Cglib是一个强大的高性能的代码生成包,它可以在运行期扩展java类与实现java接口。它广泛的被许多AOP的框架使用,例如Spring AOP, 实现方法拦截。Cglib包的底层是通过使用字节码处理框架ASM来转换字节码并生成新的类。在AOP编程中如何选择代理模式:

  1. 目标对象需要实现接口, 用JDK代理
  2. 目标对象不需要实现接口, 用Cglib代理

【14】模板模式
  在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。模板方法模式 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构,就可以重定义该算法的某些特定步骤。

【15】命令模式
  命令模式将请求封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。同时命令模式支持可撤销的操作。命令模式可以将请求的发送者和接收者之间实现完全的解耦,发送者和接收者之间没有直接的联系,发送者只需要知道如何发送请求命令即可,其余的可以一概不管,甚至命令是否成功都无需关心。

【16】访问者模式
  封装一些作用于某种数据结构的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。主要将数据结构与数据操作分离,解决数据结构和操作耦合性问题访问者模式的基本工作原理是: 在被访问的类里面加一个对外提供接待访问者的接口。访问者模式主要应用场景是: 需要对一个对象结构中的对象进行很多不同操作(这些操作彼此没有关联),同时需要避免让这些操作"污染"这些对象的类,可以选用访问者模式解决。

【17】迭代器模式
  如果我们的集合元素是用不同的方式实现的, 有数组,还有java的集合类或者还有其他方式,当客户端要遍历这些集合元素的时候就要使用多种遍历方式,而且还会暴露元素的内部结构,可以考虑使用迭代器模式解决。迭代器模式提供一种遍历集合元素的统一接口,用一致的方法遍历集合元素,不需要知道集合对象的底层表示,即: 不暴露其内部的结构。

【18】观察者模式
  对象之间多对一依赖的一种设计方案,被依赖的对象为Subject,依赖的对象为Observer, Subject通知Observer变化。

【19】中介者模式
  用一个中介对象来封装一系列的对象交互。中介者使各个对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

【20】备忘录模式
  备忘录模式在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。备忘录模式有着相同的含义,备忘录对象主要用来记录一个对象的某种状态,或者某些数据,当要做回退时,可以从备忘录对象里获取原来的数据进行恢复操作。

【21】解释器模式
  解释器模式是指给定一个语言(表达式), 定义它的文法的一种表示,并定义一个解释器, 使用该解释器来解释语言中的句子(表达式)。

【22】状态模式
  状态模式主要用来解决对象在多种状态转换时,需要对外输出不同的行为的问题。状态和行为是一一对应的,状态之间可以相互转换。当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了
其类。

【23】策略模式
  策略模式就是定义了算法族,分别封装起来,让它们可以互相转换,此模式然该算法的变化独立于使用算法的客户。策略模式也非常完美的符合了“开闭原则”,用户可以在不修改原有系统的基础上选择算法或行为,也可以灵活地增加新的算法或行为。

【24】责任链模式
  为请求创建了一个接收者对象的链。 这种模式对请求的发送者和接收者进行解耦。职责链模式通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推。
  职责链模式使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。

MOOS-ivp实战:从零搭建水下机器人通信系统(Ubuntu 22.04版) 本文详细介绍了在Ubuntu 22.04系统上从零开始搭建MOOS-ivp水下机器人通信系统的完整实战流程。内容涵盖环境准备、核心安装、MOOSDB通信模型解析、自定义应用节点开发、以及调试监控工具链的使用,旨在帮助开发者快速掌握这一分布式机器人系统框架,构建稳定可靠的水下机器人通信与控制系统。 阅读详情

相关推荐

什么是plm系统?-数字化转型网

当今世界,产品研发能力是企业在激烈的市场竞争中保持战略优势的核心竞争力之一。如何有效地缩短产品研发周期、改善产品服务的设计迭代流程、有效降低产品的研发成本,也是企业面临的主要问题之一。PLM(Product Lifecycle Management,产品生命周期管理)在优化产品研发的全管理流程、增强企业产品的市场竞争力方面具有关键的作用。

cxo17757154043的博客 883

20个算法毕设项目分享(二)

1 基于python的搜索引擎设计与实现学长设计的系统目的是在信息处理分析的基础上,建立一个完整的中文搜索引擎。

m0_12378的博客 251

动态掩码语言模型(MLM)优化策略:效率提升与最新技术实践

本文深入探讨了动态掩码语言模型(MLM)的优化策略与技术实践,涵盖核心原理、效率优化及2025年最新突破。重点解析了动态掩码在提升模型性能中的关键作用,包括工程实现、掩码策略演进及混合专家动态掩码等创新技术,为自然语言处理领域的研究与应用提供实用指南。

vscode5coder的博客 220

【最佳实践】模块化设计

在大型软件工程中,一般会伴随着多团队开发,而各个团队之间,都是弱耦合交互,团队交付的业务之间以一种契约化形式的接口,定义了业务之间的接口,以此来满足各个团队的业务独立发展,互不影响,实现快速迭代演进,这就需要业务模块化。而在做代码工程模块化的技术选型上,因为Entry类型的HAP是工程默认存在的,且不能存在多个,所以主要考虑的就是几种模块类型:Feature类型的HAP模块,HAR模块和HSP模块。在大屏设备上,应用内的多个任务可以以多窗口的形式存在,用户可以并行操作应用的不同功能。

Alexzhang369学习总结空间 3206

机器学习 -- 信用卡评分模型 -- 互联网金融风控

互联网金融主要分为资金类和资产类。资金类主要是理财产品,吸储,主要指标是用户转化、留存和复投,重在客户运营。资产类主要是贷款,包括消费金融和现金贷,小额贷款属于此类,主要目的是用户转化,还款和风险控制,信用卡评分模型就属于风险控制。 信用评分作用是对贷款申请人(信用卡申请人)做风险评估分值的方法。 信用卡评分是以大量数据的统计结果为基础,根据客户提供的资料和历史数据对客户的信用进行评估,评分卡模型...

XiaoMaEr66的博客 2420

华为防火墙NAT避坑指南:当双ISP出口遇到服务器发布,这些细节不注意会翻车

本文深入解析华为防火墙在双ISP出口环境下服务器发布的实战配置,重点探讨no-reverse参数对Server-Map表的影响、源进源出功能的实现及线路切换时的会话保持问题。通过策略路由和智能选路技术,确保HTTP/FTP服务在多运营商链路中的高可用性,避免路径不对称和NAT映射冲突等常见陷阱。

weixin_30897233的博客 549

设计模式七大原则

一、什么是设计模式 软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。这个术语是由埃里希·伽玛(Erich Gamma)等人在1990年代从建筑设计领域引入到计算机科学的。 设计模式的重要性 拿实际工作经历来说, 当一个项目开发完后,如果客户提出增新功能,怎么办?。(可扩展性,使用设计模式,软件具有很好的扩展性) 如果项目开发完后,原来程序员离职,你接手维护该项目怎么办? (维护性[可读性、规范性]) 目前程序员门槛越来越高,一线 IT 公

z1360408752的博客 514

光模块MCU开发全解析:从架构原理到固件调试实战

在高速光模块中,MCU并非传统印象里的核心处理器,而是负责数字诊断、闭环控制和协议管理的嵌入式管家。随着800G、1.6T模块的普及,MCU与DSP/SoC的协同、I2C总线通信、ADC采集、APC/TEC控制等低速域任务愈发关键。理解MCU的选型规格、启动流程和固件设计,是保障光模块稳定运行的基础。本文从光模块架构切入,剖析MCU的角色定位,详细拆解I2C从机实现、电芯片配置、校准与升级等工程细节,并结合实际调试经验梳理常见故障与排查思路,为嵌入式工程师提供一份可落地的光模块MCU开发指南。

weixin_29192365的博客 364

Spark SQL调优

1 spark.sql.codegen 默认值为false,当它设置为true时,Spark SQL会把每条查询的语句在运行时编译为java的二进制代码。可以提高大型查询的性能,但是如果进行小规模的查询的时候反而会变慢,就是说直接用查询反而比将它编译成为java的二进制代码快。所以在优化这个选项的时候要视情况而定。 2 spark.sql.inMemoryColumnStorage.compressed 默认值为false 它的作用是自动对内存中的列式存储进行压缩 3 spark.sql.inMemoryC

ThreeAspects的博客 1709

ROS入门教程(四)—— URDF文件与导出

本文将介绍如何在ROS中描述我们的机器人。

吾门的博客 8185

人工智能在慢病管理中的具体应用全集:从技术落地到场景创新

这一成果的取得,得益于 AI 对居民血压数据的实时监测和分析,以及及时的干预措施。据统计,医疗支出下降了 18%,这主要是由于 AI 慢病管理系统实现了对慢病患者的早筛早诊早治,减少了并发症的发生,降低了医疗资源的浪费,从而减轻了患者和社会的医疗负担。医院信息系统(HIS)、电子病历(EMR)、区域卫生平台、可穿戴设备(如三诺血糖仪、华为手环)、第三方健康APP以及体检中心的数据往往采用不同的数据标准和格式(如HL7、FHIR、JSON、CSV等),且存储在相互隔离的系统中,形成典型的数据孤岛。

AllenLV的博客 2091

数据库范式

  范式是关系数据库理论的基础,在设计数据库结构过程中所要遵循的规则和指导方法。6种范式依次是:1NF,2NF,3NF,BCNF(巴斯-科德范式),4NF,5NF。这里介绍前三个范式,即:第一范式(1NF),第二范式(2NF),第三范式(3NF)。 ◆ 第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。   考虑这样一个表:【联系人】(姓名,性别,电话)。如果在实际场景中,一个联系...

ThreeAspects的博客 1663

AutoSAR EcuM系列01- EcuM模块的功能概述和变体类型

在【ECU的软硬件架构】文章中我们了解ECU的功能和组成,那么ECU具体是怎么启动的呢?我们知道,AutoSAR标准架构有三层,即APPL应用层、RTE层和BSW层。而这些层又被进一步划分为更多单独的组件,如BSW层可能有80多个组件。在ECU启动时,这些组件必须相互交互,有时也必须以某种顺序交互。这些组件的启动顺序由ECU管理器模块或EcuM处理。EcuM负责整个ECU的初始化和去初始化,包括对一些系统模块如。......

1766

【转发】设计模式详解

转发两篇总结比较详细的有关设计模式的文章: 1、刘伟--史上最全设计模式导学目录 2、23种设计模式详解

Java学习 286

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

图文详解23种设计模式关系

设计模式:可复用面向对象软件的基础》是软件工程领域的经典著作,由四位顶尖专家(Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides,合称GoF)编写,首次系统化提出了23种设计模式,分为创建型、结构型和行为型三大类‌。该书被誉为面向对象设计的"圣经",其核心价值在于总结可复用的解决方案,帮助开发人员更好地组织代码,提升代码的可维护性、扩展性和团队协作效率。‌‌

独码乐,不如众码乐,乐享其中 525

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

推荐开源项目:DesignPattern —— 翻越编程丛林的设计模式指南

推荐开源项目:DesignPattern —— 翻越编程丛林的设计模式指南 在编程的世界里,设计模式就像是一座座灯塔,引导开发者们在复杂系统中找到最佳实践和解决方案。今天,我们向您隆重推荐一个开源项目——DesignPattern,它是由FengJungle发起并维护的一系列关于设计模式的讲解与实现。这个项目不仅提供了详尽的理论知识,还辅以实际代码示例,帮助开发者从实践中理解并掌握设计模式。 项目...

gitblog_00021的博客 438

23种常见设计模式详解

23中常见设计模式详解

写代码的渣渣苏 4963

23种设计模式汇总详解

用最简洁最接地气的语言帮助你理解设计模式

贾欣晓的博客 494

常用设计模式详解

本文详细解析了软件开发中常用的设计模式,重点介绍了创建型模式中的单例模式和工厂模式。单例模式通过五种实现方式(饿汉式、懒汉式、双重检查锁、静态内部类、枚举)确保类仅有一个实例,并分析了Spring框架中单例实现的三级缓存机制。工厂模式则通过示例代码展示了工厂方法模式的应用,并说明Spring的IoC容器如何基于工厂模式构建Bean管理体系。文章还涉及这些模式在主流框架如Spring中的实际应用场景,为开发者提供从理论到实践的完整指导。

qq_844085127的博客 3214

24种设计模式详解

大佬分享的24总设计模式详解,包含图解,源码。 需要的评论,点赞,我会及时回复!

lz970704的博客 435

详解Vue设计模式

Vue 的组件化设计模式通过单文件组件、父子通信和插槽等特性,将页面拆分为多个独立模块。开发者可以方便地创建高内聚、低耦合的组件,提高了项目的复用性和可维护性。通过组件化开发,复杂的项目结构可以被分解为简单、独立的单元,使得开发更高效、代码更清晰,尤其在中大型项目中,这种模式的优势尤为明显。

DeL的博客 2626

Java 中的 23 种设计模式详解

项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

微笑听雨 7万+

java设计模式实例详解

声明:本文为转载,转载地址为:https://blog.youkuaiyun.com/qq_30764991/article/details/80516912 一、设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模...

caisenbinbeida2009的专栏 552

Java设计模式详解

Java设计模式详解1. 设计模式目的2. 设计模式原则3. 设计模式概述4. 设计模式分类5. 设计模式详解 1. 设计模式目的 编写软件过程中, 程序员面临着来自 耦合性, 内聚性以及可维护性, 可扩展性, 重用性, 灵活性 。 1.代码重用性 (即: 相同功能的代码, 不用多次编写) 2.可读性 (即: 编程规范性, 便于其他程序员的阅读和理解) 3.可扩展性 (即: 当需要增加新的功能时, 非常的方便, 称为可维护) 4.可靠性 (即: 当我们增加新的功能后, 对原来的功能没有影响) 5.使程序呈现

靖节先生的博客 2062
上一篇: ZooKeeper数据存储
下一篇: LeetCode——堆
K. Bob
博客等级 码龄8年 82粉丝 294原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值