关键语句:
静态和动态:设计模式分作用于类,典型的为Template Method。还有的是作用于对象,典型的如Decorator(装饰)。
延迟到子类: 创建型类模式将对象的部分创建工作延迟到子类。
创建型对象模式将对象的部分创建工作延迟到另一个对象中。
OOP难点:将系统分解成对象集合,要注意的对象因素:1封装,2粒度,3依赖关系,4灵和性,5性能,6演化,7复用。
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
800+累计阅读
823平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄14年
关键语句:
静态和动态:设计模式分作用于类,典型的为Template Method。还有的是作用于对象,典型的如Decorator(装饰)。
延迟到子类: 创建型类模式将对象的部分创建工作延迟到子类。
创建型对象模式将对象的部分创建工作延迟到另一个对象中。
OOP难点:将系统分解成对象集合,要注意的对象因素:1封装,2粒度,3依赖关系,4灵和性,5性能,6演化,7复用。
设计模式+-+可复用面向对象软件的基础( 高清 )
这一版是非扫描文字版,质量很高,非常清晰,并且添加了完整的书签目录,方便大家阅读,我上传的资源基本都是自己整理过书签或者去除水印的,主要与C++,设计模式,架构,QT等有关系,更多的可以去我的资源页看看。注意,此资源仅供个人学习交流之用,请勿用于商业用途。 《设计模式:可复用面向对象软件的基础》是引导读者走出软件设计迷宫的指路明灯,凝聚了软件开发界几十年设计经验的结晶。四位面向对象领域专家精心选取了具价值的设计实践,加以分类整理和命名,并用简洁而易于重用的形式表达出来。本书已经成为面向对象技术人员的圣经和词典,书中定义的23个模式逐渐成为开发界技术交流所必备的基础知识和语汇。
设计模式--可复用面向对象软件的基础(第一章 引言)
第一章 引言一、什么是设计模式二、SmalltalkMVCSmalltalk MVCSmalltalkMVC中的设计模式三、描述设计模式四、设计模式的编目五、组织编目六、设计模式怎样解决设计问题七、怎样选择设计模式八、怎样使用设计模式 一、什么是设计模式 一般而言,一个模式有四个基本要素: 1、模式名 一个助记名,它用一两个词来描述模式的问题、解决方案和效果; 2、问题 描述了应该在何时使用模式,它解释了设计问题和问题存在的前因后果; 3、解决方案 描述了设计的组成成分、它们之间的相互关系及各自的职责和协作
《设计模式 可复用面向对象软件的基础》中英文高清版
设计模式 可复用面向对象软件的基础 包含中文英高清版。
复用类(组合,继承,protected,向上转型,final,初始化以及类的加载)
复用类 复用代码是Java中众多引人注目的功能之一,也是程序员需要掌握的一项能力。 组合语法 组合语法就是将一个对象的引用放在新的类中。 class WaterSource{ private String s; WaterSource(){ System.out.println("WaterSource()"); s = "Constructed"; } public String toString(){ return s;
汇川EASY系列之以太网通讯(套接字socket做主站)
本文讲解汇川Easy系列使用以太网套接字socket通讯,本例中EasyPLC做主站。文中按步进行操作。细节明确。
深信服防火墙路由模式开局部署-手把手教学(小白篇)
手把手教学,拿到深信服的防火墙路由模式该如何开局?
软件构造知识点理解与总结
软件构造知识点理解与总结: 目录 软件构造:开发高质量的软件系统 软件构造的多维度视图和质量目标 软件测试与测试优先的编程 软件构造过程与配置管理 数据类型与类型检验 设计规约 抽象数据类型(ADT) 面向对象的编程(OOP) ADT和OOP中的“等价性” 面向复用的软件构造技术 面向可维护性的构造技术 面向可复用性和可维护性的设计模式 面向正确性与健壮性的软件构造 0.软件构造:开发高质量的软件系统 设计目标:编程的“视野” 设计原则:编程的“标尺” 设计模式:编程的“经验” 1.软件构造的多维度
保姆级教程:在Android车机上从零配置USB Gadget,搞定CarPlay有线连接
本文详细介绍了在Android车机上从零配置USB Gadget以实现CarPlay有线连接的完整实践指南。涵盖内核驱动开发、Android系统配置及用户空间通信架构,帮助开发者深入理解USB子系统和iAP2协议栈,实现稳定可靠的CarPlay有线连接功能。
软件构造复习大纲
软件构造思维导图,不一定非常好(不能插入图片就很难受)
基于大疆TSDK与Pix4D的热红外数据工程化处理:从RJPG到温度正射影像的完整工作流
本文详细介绍了基于大疆TSDK与Pix4D的热红外数据工程化处理完整工作流。通过Python脚本自动化解析RJPG格式的热红外图像,提取并转换其中的原始辐射数据为包含真实温度信息的TIFF文件,再结合Pix4Dmapper进行批量拼接,最终生成可直接用于GIS分析的温度正射影像图。该流程解决了手动处理效率低下、参数校准复杂等难题,实现了从原始数据到定量分析成果的高效、准确、可重复生产。
【开源数据集】电动车佩戴头盔检测数据集(TWHD)
佩戴头盔检测数据集VOC格式图像与标注数量各5448张
2022哈工大软件构造课程总结与经验分享(复习指导)
2022哈工大软件构造课程总结与复习指导,学习笔记与经验分享
从冰棍到铸钢:手把手用Fluent融化凝固模型模拟3个不同场景(含案例设置对比)
本文深入探讨了Fluent融化凝固模型在冰棍融化、巧克力涂层凝固和钢铁连铸三个不同场景中的应用。通过详细的参数设置和案例对比,帮助工程师掌握相变模拟的核心技巧,提升工业级CFD分析的精度和效率。
[设计模式Java实现附plantuml源码~行为型]对象间的联动~观察者模式
观察者模式是一种使用频率非常高的设计模式,无论是移动应用、Web应用或者桌面应用,观察者模式几乎无处不在。它为实现对象之间的联动提供了一套完整的解决方案,凡是涉及一对一或者一对多的对象交互场景都可以使用观察者模式。观察者模式广泛应用于各种编程语言的GUI事件处理的实现,在基于事件的XML解析技术(例如SAX2)以及Web事件处理中也都使用了观察者模式。
9篇9章1节:认识 SHARE 数据库
SHARE数据库是欧洲最大的跨国老龄化追踪调查项目,覆盖28个欧洲国家和以色列的50岁及以上人群。自2004年启动以来,已完成14-16万受访者的50-60万次访谈,形成跨度20年的纵向数据。该数据库采用标准化的多阶段抽样方法,收集健康、经济和社会关系等领域的多维度信息,具有高度的跨国可比性。SHARE与美国HRS、英国ELSA等调查对接,构成全球老龄化研究网络。数据免费向科研人员开放,但需注册并承诺仅用于非商业性研究。该项目由欧盟委员会等多方资助,为老龄化研究和政策制定提供了重要实证依据。
华为OD新系统机试真题 2026.5.10 - 美观的灯笼
华为OD新系统机试真题【美观的灯笼】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【美观的灯笼】
【架构】谈一谈软件设计的思想,即软件设计认知体系
摘要:软件设计是一个系统化规划过程,旨在满足业务需求并具备优秀工程特性。其核心目标是可维护性、可扩展性、可复用性、可靠性和可理解性,通过高内聚低耦合的黄金法则实现。设计过程需遵循分层体系:架构设计(宏观)、模块设计(中观)、类设计(微观)和接口设计(交互层)。落地工具包括设计模式和UML建模,流程涵盖需求分析到设计评审。常见误区包括过度设计、忽视业务和技术紧耦合,应坚持"适度设计,贴合业务"原则。最终目标是构建既满足当前需求又能适应变化的系统。
pscad IEEE标准系统搭建说明
pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。
设计模式总结:从原理到实践的全面梳理
行为型模式专注于 “对象间的交互与职责分配”,解决 “如何让对象协作完成复杂功能” 的问题。模式名称核心思想适用场景优缺点典型案例模板方法模式(Template Method)父类定义算法骨架(固定步骤),子类实现算法的可变步骤算法步骤固定,但部分步骤实现不同(如 “登录流程:验证→授权→返回结果”)优点:复用骨架代码;缺点:子类可能影响父类逻辑(“钩子方法” 风险)Spring 的refresh方法骨架)策略模式(Strategy)定义一系列算法,将每个算法封装起来,使它们可互相替换。
lwip-2.0.3
lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。
NTscan扫描工具
ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。
软件构造复习1
软件构造复习
VC中sqlite的使用
在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示
ysyx:pa.批处理系统
System.out.println("[验证] 方法 " + jp.getSignature().getName() + " 开始执行");System.out.println("[日志] 方法 " + jp.getSignature().getName() + " 执行完成");System.out.println("[监控] 开始执行: " + pjp.getSignature().getName());System.out.println("[错误处理] " + e.getMessage());
Flink学习笔记:多流 Join
System.out.println("[验证] 方法 " + jp.getSignature().getName() + " 开始执行");System.out.println("[日志] 方法 " + jp.getSignature().getName() + " 执行完成");System.out.println("[监控] 开始执行: " + pjp.getSignature().getName());System.out.println("[错误处理] " + e.getMessage());
设计原则与思想:总结课
文章目录设计原则与思想:总结课总结回顾面向对象、设计原则、编程规范、重构技巧等知识点一、代码质量评判标准如何评价代码质量的高低?最常用的评价标准有哪几个?如何才能写出高质量的代码?二、面向对象img三、设计原则四、规范与重构常见的 Anti-Patterns 设计原则与思想:总结课 总结回顾面向对象、设计原则、编程规范、重构技巧等知识点 如果你看了之后,感觉都有印象,那就说明学得还不错;如果还能在脑子里形成自己的知识架构,闭上眼睛都能回忆上来,那说明你学得很好;如果能有自己的理解,并且在项目开发中,开始思考
哈工大软件构造笔记二
目录 1、软件构造中的多维视图: 2、视图之间的联系: 3、软件系统的质量属性: 1.外部质量与内部质量 2.外部质量因素 3.内部质量因素: 4.折中原理: 5.五个关键的质量指标: 1、软件构造中的多维视图: (1)先要搞清楚:软件构造的对象是什么、如何刻画如何再关注:如何构造 (2)除了要搞清楚“要构造的结果是什么”,还要理解清楚“构造的结果如何才算好” 按阶段划分:构造时/运行时视图 区别在于表现的是某一时刻的软件形态,还是一...
OOP为什么存在:面向对象编程如何解决过程式开发的痛点
面向对象编程(OOP)是当今主流编程范式,但很多开发者只停留在会写class的层面,并未理解它背后的设计初衷。随着软件规模增大,过程式编程的全局变量失控、数据与操作分离、复用粒度不足等问题会迅速放大,而OOP通过封装、继承、多态和抽象,将数据和操作绑定为对象,让状态变化可控、扩展更加安全。从银行账户到订单系统,再到PHP框架ThinkPHP的MVC架构,OOP在真实项目中的应用无不体现着“管理复杂度”的核心价值。本文从过程式与对象式的思维对比入手,结合具体代码案例,剖析OOP存在的真实原因,并指出过度设计、
设计模式架构设计实践
以广泛采用的分层架构为例,其表现层、业务逻辑层、数据访问层的清晰分离,为多种模式的应用提供了天然舞台。正确的做法是:首先深入理解业务需求和架构约束,识别出真正的痛点(如变化点、性能瓶颈、耦合过紧等),然后选择最匹配的模式。它并非具体代码,而是一种经过验证的最佳实践思想,如工厂模式解耦对象创建,观察者模式处理对象间动态通知,策略模式封装可互换的算法族。例如,在核心业务逻辑中采用领域驱动设计(DDD) 的相关模式(如实体、值对象、聚合、领域服务),会深刻影响整个业务层的结构。设计模式架构设计实践。
3906
204

被折叠的 条评论
为什么被折叠?



