0

一、单例模式

一、模式定义: 保证一个类只有一个实例,并且提供一个全局访问点 二、使用场景: 重量级对象,不需要多个实例,如:线程池,数据库连接池 三、类图: 四、不同方式创建的单例设计与区别 4.1、懒汉单例模式 懒汉单例模式的特点是延迟加载,只有在真正使用的时候,才开始实例化,用该方式创建单例对象时,对于线程 ...

Carey_ccl 发布于 2026-02-08 17:12 评论(0) 阅读(15)
0

设计模式的前言——Solid设计原则

Solid原则是为针对面向对象的程序语言设计,从本质上来讲,SOLID是5个原则的缩写,这5个原则有助于软件设计:更加容易理解,更灵活,可维护性更强。这个与掌握软件设计原理无关,这个原理是很多原则的子集。 单一职责原则(Single responsibility principle) 开闭原则(op ...

Carey_ccl 发布于 2026-02-08 15:55 评论(0) 阅读(4)
1

阿里云DTS按业务场景批量迁移RDS MySQL表实战(下):迁移管理平台设计与实现

本文是 阿里云DTS按业务场景批量迁移RDS MySQL表实战(上):技术选型和API对接 的后续,应用状态模式,完成业务系统中的迁移模块。DTS的对接方式可参考前文。 迁移管理平台设计与实现 完成DTS API对接后,就需要考虑如何将DTS和业务系统有机结合实现整套的迁移流程。 出于信息安全角度的 ...

五岳 发布于 2026-02-03 22:34 评论(0) 阅读(242)
0

vivo互联网全链路多版本环境落地实践

本文系统介绍vivo通过“全链路多版本环境管理”模式,实现开发测试环境的快速构建与高效管理,使多版本环境能够像“平行宇宙”一般,实现安全、隔离、高效的并行测试与发布。 ...

vivo互联网技术 发布于 2026-01-22 15:47 评论(0) 阅读(26)
0

【架构师角度】详细解析 OpenStack4j 中 PropagateOnStatus 的异常处理机制

Openstack4j 提供了一套可插拔的 HttpExecutor 框架,支持 Apache HttpClient、Resteasy等,根据分析默认使用 Apache Httpclient。目前尚不清楚为什么要提供这个HTTP框架统一层,看起来有些多余。但是在吸收这个库的时候发现,它有着目前为止我... ...

一杯半盏 发布于 2026-01-11 12:19 评论(0) 阅读(94)
0

2.面向对象设计原则

2.面向对象设计原则 ​ 对于面向对象软件系统的设计而言,在支持可维护性的同时,提高系统的可复用性是一个至关重要的问题,如何同时提高一个软件系统的可维护性和可复用性是面向对象设计需要解决的核心问题之一。在面向对象设计中,可维护性的复用是以设计原则为基础的。每一个原则都蕴含一些面向对象设计的思想,可以 ...

CodeMagicianT 发布于 2025-12-19 19:28 评论(0) 阅读(65)
0

“静态回调+上下文指针”模式实现回调机制

0 摘要 以常用的某品牌相机的驱动为例,分析回调机制的实现。 1 SetCallback(即,注册回调)的实现 1.1 函数签名 int MV_CC_RegisterImageCallBackEx( void* handle, // 相机设备句柄 void (__stdcall *pCallBack ...

_bob 发布于 2025-12-17 22:15 评论(0) 阅读(83)
0

JWT令牌

该笔记介绍SpringBoot中JWT令牌的使用,内容涵盖Maven依赖坐标配置、JWT生成方法(设置算法、自定义声明、签名及过期时间)、JWT解析验证(验证签名、过期时间等)以及配置映射(YAML配置与JwtProperties类实现配置管理),并提供了完整的Java代码实现示例。 ...

Nobody_Cares 发布于 2025-10-25 23:57 评论(0) 阅读(70)
0

《Head First设计模式》读书笔记 —— 单例模式

《Head First设计模式》读书笔记 相关代码:Vks-Feng/HeadFirstDesignPatternNotes: Head First设计模式读书笔记及相关代码 用来创建独一无二的,只能有一个实例的对象的入场券 为什么需要单件模式 有些对象只能有一个实例 线程池、缓存、对话框、设备的驱 ...

Vcats 发布于 2025-05-13 15:26 评论(0) 阅读(174)
1

C语言一点五编程实战:纯 C 的模块化×继承×多态框架

本文探讨在C语言中模拟面向对象编程(OOP)的"一点五编程"技术,通过函数指针、结构体嵌套和二级指针强制转换实现类、接口与多态。开发流程分声明(接口/类结构体、类型转换函数)、实现(方法绑定、初始化)和使用三阶段,强调方法集指针必须位于类结构体首地址以实现动态绑定。该方法将硬件驱动与业务逻辑解耦,结... ...

FreakStudio 发布于 2025-05-11 00:52 评论(4) 阅读(547)
0

《Head First设计模式》读书笔记 —— 工厂

《Head First设计模式》读书笔记 相关代码:Vks-Feng/HeadFirstDesignPatternNotes: Head First设计模式读书笔记及相关代码 除了new操作符外,还有更多制造对象的方法 “实例化”这个活动不应该总是公开地进行 初始化经常造成“耦合”问题 实例化的问题 ...

Vcats 发布于 2025-05-02 22:23 评论(0) 阅读(153)
0

《Head First设计模式》读书笔记 —— 装饰者模式

《Head First设计模式》读书笔记 相关代码:Vks-Feng/HeadFirstDesignPatternNotes: Head First设计模式读书笔记及相关代码 给爱用继承的人一个全新的设计眼界 本节用例 Starbuzz咖啡因迅速扩展,准备更新订单系统,以合乎其饮料供应需求 原有类设 ...

Vcats 发布于 2025-04-29 16:29 评论(0) 阅读(137)
0

开窍了!如何为缓存工具类(CacheUtil中的static方法)定义interface(上)

职责相同的2个工具类里都是static方法,基于OOP的程序设计思想,我如何为这2个工具类抽取共同的interface? ...

buguge 发布于 2025-04-28 09:11 评论(0) 阅读(97)
1

《Head First设计模式》读书笔记 —— 观察者模式

《Head First设计模式》读书笔记 相关代码:Vks-Feng/HeadFirstDesignPatternNotes: Head First设计模式读书笔记及相关代码 让你的对象知悉现状,不会错过对象感兴趣的事 对象甚至在运行时可决定是否要继续被通知 JDK中使用最多的模式之一 本节例子 系 ...

Vcats 发布于 2025-04-25 16:21 评论(0) 阅读(159)
0

学习设计模式有这两就够了:手册+实战项目

历经一年时间,设计模式手册和练手项目已全部编写完成 秘籍1设计模式手册:《掌握设计模式:23种经典模式实践、选择、价值与思想》 秘籍2练手项目:设计模式实战项目--markdown文本编辑器软件开发(已开源) 秘籍1 设计模式手册 该手册将为你回答: 什么是设计模式? 怎么学习设计模式 为什么学 ...

渊渟岳 发布于 2025-04-25 07:37 评论(0) 阅读(520)
2

学习设计模式找不到练手的实战项目?项目已开源

手写解析器、渲染器、主题样式、自定义弹窗和精细的撤销/恢复机制等。 整体总结 YtyMark-java 项目,从用户输入到用户查看到实时渲染结果的全过程 监听文本区域内容是否发生变化 解析和渲染:“原始文本的块裁剪”→“块级元素解析” → “行内元素解析” → “渲染” 四大阶段 将渲染结果重新 ...

渊渟岳 发布于 2025-04-24 08:32 评论(0) 阅读(618)
0

开源项目YtyMark文本编辑器--UI界面相关功能(关于设计模式的实战运用)

开源项目地址 GitHub 开源地址(YtyMark-java) 欢迎提交 PR、Issue、Star ⭐️! 1. 简述 YtyMark-java项目分为两大模块: UI界面(ytyedit-mark) markdown文本解析和渲染(ytymark) 本文主要内容为UI界面相关功能 ...

渊渟岳 发布于 2025-04-23 07:43 评论(0) 阅读(508)
0

markdown文本编辑器--核心功能(解析和渲染)

开源项目地址 GitHub 开源地址(YtyMark-java) 欢迎提交 PR、Issue、Star ⭐️! 1. 简述 YtyMark-java项目分为两大模块: UI界面(ytyedit-mark) markdown文本解析和渲染(ytymark) 本文主要内容为核心模块--mark ...

渊渟岳 发布于 2025-04-21 09:30 评论(0) 阅读(639)
0

分享个人设计模式笔记文档:《掌握设计模式:23种经典模式实践、选择、价值与思想》

本文主要分享我的设计模式笔记PDF文档:《掌握设计模式:23种经典模式实践、选择、价值与思想》 这只是设计模式的秘籍1:《掌握设计模式:23种经典模式实践、选择、价值与思想》 后续还会分享练手项目秘籍2:设计模式实战项目--markdown文本编辑器软件开发(开放所有源代码) 前言 为什么要写这份资 ...

渊渟岳 发布于 2025-04-09 08:23 评论(0) 阅读(324)
1

为什么学习设计模式?

1. 学习设计模式的意义:让代码更优雅,让开发更从容 设计模式的学习常常被贴上“枯燥”“抽象”的标签,但它更像一本软件开发的“烹饪食谱”——不是要求你死记硬背,而是教会你如何用更巧妙的方式组合代码的“食材”,最终做出一道既美味(功能完善)又美观(易于维护)的“佳肴”。以下是它的核心价值与意义: 1. ...

渊渟岳 发布于 2025-04-08 08:22 评论(0) 阅读(732)