01 2025 档案

摘要:​ 核心思想 桥接模式(Bridge Pattern)是一种结构型设计模式,将抽象部分与其实现部分分离,使它们可以独立变化。降低代码耦合度,避免类爆炸,提高代码的可扩展性。 ​ 编辑 结构 1. Implementation(实现类接口) 定义具体实现的行为接口。 2. ConcreteImplem 阅读全文
posted @ 2025-01-30 20:04 SlackClimb 阅读(25) 评论(0) 推荐(0) 编辑
摘要:​ 核心思想 装饰者模式(Decorator Pattern)是一种结构型设计模式,通过“包装”现有对象来为其添加额外的功能,而无需改变原有对象的代码。装饰者模式通过创建一个装饰类来扩展对象的功能而不是继承。这样可以灵活地在运行时动态地组合功能。 ​ 编辑 结构 1. Component(抽象构件) 阅读全文
posted @ 2025-01-30 20:02 SlackClimb 阅读(46) 评论(0) 推荐(1) 编辑
摘要:​ 核心思想 适配器模式(Adapter Pattern)是一种结构型设计模式。它通过引入一个适配器类,将一个类的接口转换为客户端期望的另一个接口,使得原本由于接口不兼容而无法协作的类能够协同工作。 ​ 编辑 结构 1. 目标接口(Target) 定义客户所期待的接口。 2. 需要适配的类(Adap 阅读全文
posted @ 2025-01-28 18:28 SlackClimb 阅读(24) 评论(0) 推荐(1) 编辑
摘要:​ 核心思想 代理模式(Proxy Pattern)是一种结构型设计模式,用于为对象提供一个代理对象,从而控制对目标对象的访问。代理模式可以为目标对象添加额外的功能,同时不改变目标对象的代码。 结构 抽象主题(Subject) 定义代理对象和目标对象的通用接口,使代理对象可以替代目标对象。 真实主题 阅读全文
posted @ 2025-01-28 18:24 SlackClimb 阅读(18) 评论(0) 推荐(0) 编辑
摘要:​ 核心思想 原型模式(Prototype Pattern)是一种创建型设计模式。它通过复制现有对象来创建新的对象,而不是通过实例化类。原型模式适用于创建成本较高或复杂的对象,或者需要避免暴露类内部复杂结构的场景。核心思想是 “克隆” 。 ​ 编辑 结构 1. Prototype(抽象原型类) 定义 阅读全文
posted @ 2025-01-24 17:17 SlackClimb 阅读(34) 评论(0) 推荐(0) 编辑
摘要:​ 核心思想 生成器模式(Builder Pattern)是一种创建型设计模式,用于分步骤构建复杂对象,允许用户通过控制对象构造的过程,定制对象的组成部分,而无需直接实例化它们的细节。建造者模式特别适合构建具有多种配置的复杂对象。 结构 Builder(抽象建造者) 定义构造产品的抽象方法,具体建造 阅读全文
posted @ 2025-01-24 17:15 SlackClimb 阅读(27) 评论(0) 推荐(0) 编辑
摘要:​ 核心思想 通过配置文件和反射机制动态决定具体工厂的选择,减少客户端对具体工厂和具体产品的硬编码依赖,使系统更灵活、更易扩展。 改进点: 配置文件解耦:使用配置文件动态加载具体工厂类。 反射机制扩展:通过反射机制创建具体工厂对象,避免客户端直接依赖具体工厂类。 提升扩展性:新增产品族时无需修改客户 阅读全文
posted @ 2025-01-23 18:28 SlackClimb 阅读(7) 评论(0) 推荐(0) 编辑
摘要:​ 核心思想 抽象工厂模式是一种创建型设计模式,它提供一个接口,用于创建一系列相关或互相依赖的对象,而无需指定它们的具体类。抽象工厂模式解决了产品族的问题,可以管理和创建一组相关的产品。 ​ 编辑 结构 1. 抽象工厂 定义创建一些列相关对象的接口。 2. 具体工厂 实现抽象工厂接口,负责实例化具体 阅读全文
posted @ 2025-01-23 18:26 SlackClimb 阅读(16) 评论(0) 推荐(0) 编辑
摘要:核心思想 简单工厂模式是一种创建者模式,它通过一个工厂类负责创建不同类型的对象,根据传入的参数决定实例化的具体类,也被称为“静态工厂方法”模式,因为工厂方法通常是静态的。 结构 1. 工厂类: 提供一个静态方法,根据不同条件创建并返回具体的产品对象。 2. 产品接口(抽象类) 定义产品的通用行为。 阅读全文
posted @ 2025-01-22 17:49 SlackClimb 阅读(30) 评论(0) 推荐(0) 编辑
摘要:​ 核心思想 简单工厂模式是一种创建者模式,它通过一个工厂类负责创建不同类型的对象,根据传入的参数决定实例化的具体类,也被称为“静态工厂方法”模式,因为工厂方法通常是静态的。 结构 1. 工厂类: 提供一个静态方法,根据不同条件创建并返回具体的产品对象。 2. 产品接口(抽象类) 定义产品的通用行为 阅读全文
posted @ 2025-01-22 17:44 SlackClimb 阅读(11) 评论(0) 推荐(0) 编辑
摘要:​ 分布式工作流程 Centralized Workflow(集中式工作流) ​ 编辑 所有开发者都与同一个中央仓库同步代码,每个人通过拉取、提交来合作。 如果两个开发者同时修改了相同的文件,后一个开发者必须在推送之前合并其他人的更改。 Integration-Manager Workflow(集成 阅读全文
posted @ 2025-01-21 18:25 SlackClimb 阅读(18) 评论(0) 推荐(0) 编辑
摘要:​ 协议 1. Git 远程仓库及通信协议概述 1.1. 远程仓库的重要性 作用:提供协作平台,支持团队共享代码,即使主机离线,其他人仍可访问。 常见形式:裸仓库(不含工作目录,仅保存 Git 元数据)。 2. Git 支持的协议类型 1. 本地协议 适用场景: 在同一台主机或共享文件系统(如 NF 阅读全文
posted @ 2025-01-21 18:24 SlackClimb 阅读(23) 评论(0) 推荐(0) 编辑
摘要:​ 变基 1. 变基的由来 回顾之前分支合并 分叉的提交历史 ​ 编辑 通过合并操作来整合分叉的历史 ​ 编辑 有一种方法:你可以提取在 C4 中引入的补丁和修改,然后在 C3 的基础上应用一次。 在 Git 中,这种操作就叫做 变基(rebase)。 你可以使用 rebase 命令将提交到某一分支 阅读全文
posted @ 2025-01-21 18:23 SlackClimb 阅读(40) 评论(0) 推荐(0) 编辑
摘要:​ 远程分支 远程引用: 远程引用是远程仓库中分支、标签等的指针,可以通过 git ls-remote 或 git remote show 查看。 但在日常开发中,更常用远程跟踪分支(如 origin/main)与远程分支交互,简化了对远程仓库状态的管理和使用。 远程跟踪分支: 它是本地 Git 对 阅读全文
posted @ 2025-01-21 18:22 SlackClimb 阅读(34) 评论(0) 推荐(0) 编辑
摘要:​ 分支开发工作流 由于分支管理的便捷, 才衍生出这些典型的工作模式,你可以根据项目实际情况选择。 1. 长期分支 适用于持续开发和发布周期长的项目。常见的长期分支包括: master:只保留稳定的代码,通常用于生产环境。 develop 或 next:用于开发中的功能,可能不稳定,但在达到一定稳定 阅读全文
posted @ 2025-01-21 18:20 SlackClimb 阅读(9) 评论(0) 推荐(0) 编辑
摘要:分支管理 1. 常用分支管理命令 列出所有分支: git branch 当前检出的分支前会标记一个 *。 查看分支最后一次提交: git branch -v 查看已合并到当前分支的分支: git branch merge 可以用来确认哪些分支已经合并,可以安全删除。 查看未合并到当前分支的分支: g 阅读全文
posted @ 2025-01-21 18:19 SlackClimb 阅读(9) 评论(0) 推荐(0) 编辑
摘要:​ ⭐分支的新建与合并 先引入一个实际开发的工作流: 开发某个网站。 为实现某个新的需求,创建一个分支。 在这个分支上开展工作。 正在此时,你突然接到一个电话说有个很严重的问题需要紧急修补。你将按照如下方式来处理: 切换到你的线上分支(production branch)。 为这个紧急任务新建一个分 阅读全文
posted @ 2025-01-21 18:17 SlackClimb 阅读(31) 评论(0) 推荐(0) 编辑
摘要:​ 分支简介 1. 分支的重要性 作用:分支允许将工作从主开发线上分离,避免影响主线开发。 传统版本控制的劣势:创建分支通常需要复制整个项目文件,效率低下。 Git 的优势:分支是 Git 的“必杀技特性”,创建和切换分支都非常轻量和高效,几乎瞬间完成。 2. Git 分支的核心概念 2.1. 数据 阅读全文
posted @ 2025-01-21 18:15 SlackClimb 阅读(13) 评论(0) 推荐(0) 编辑
摘要:目的 提高软件系统的可维护性和可复用性,增加软件的可拓展性和灵活性,程序员遵循 6 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。 开闭原则(OCP) 核心思想 1. 对拓展开放 软件模块应该在不修改原有代码的情况下,通过扩展的方式增加新功能。 目标:提高系统的可拓展性,适应不 阅读全文
posted @ 2025-01-21 18:10 SlackClimb 阅读(47) 评论(0) 推荐(0) 编辑
摘要:核心思想: 属于创建型设计模式,核心目的是确保一个类在整个程序运行期间只有一个实例,并提供一个全局访问点来获取该实例。 控制共享资源的访问(如数据库链接、配置管理、日志处理器等) 真实世界类比:政府是单例模式的一个很好的示例。 一个国家只有一个官方政府。 不管组成政府的每个人的身份是什么,“某政府” 阅读全文
posted @ 2025-01-21 18:07 SlackClimb 阅读(311) 评论(0) 推荐(1) 编辑
摘要:​ ⭐获取 Git 仓库 获取 Git 仓库有两种方式: 将未进行版本控制的本地目录转换为 Git 仓库。 从其他服务器克隆一个已存在的 Git 仓库。 在已存在目录中初始化 Git 仓库 进入目标目录 在 Linux 上:$ cd /home/user/my_project 在 macOS 上:$ 阅读全文
posted @ 2025-01-12 21:01 SlackClimb 阅读(15) 评论(0) 推荐(0) 编辑
摘要:Why Git? 1. 本地版本控制系统 Why: 许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。 这么做唯一的好处就是简单,但是特别容易犯错。 有时候会混淆所在的工作目录,一不小心会写错文件或者覆盖意想外的文件。 为了解决这个问题,人们很久以前就开发了许多种 阅读全文
posted @ 2025-01-11 11:06 SlackClimb 阅读(8) 评论(0) 推荐(0) 编辑
摘要:架构图 核心功能 Tomcat是Apache开源的轻量级Java Servlet容器,其中一个Server(Tomcat实例)可以管理多个Service(服务),一个Service包含多个Connector和一个Engine,负责管理请求到应用的整个流程。 Tomcat要实现的两个核心功能: 处理S 阅读全文
posted @ 2025-01-08 13:36 SlackClimb 阅读(25) 评论(0) 推荐(0) 编辑
摘要:概念 Servlet是运行在服务端的小程序(Server Applet),可以处理客户端的请求并返回响应,主要用于构建动态的Web应用,是SpringMVC的基础。 生命周期 加载和初始化 懒加载(默认在客户端第一次请求加载到容器中),通过反射实例化,并调用init(),且init()只能被调用一次 阅读全文
posted @ 2025-01-08 13:31 SlackClimb 阅读(78) 评论(0) 推荐(0) 编辑
摘要:起源 1. 三层架构:一个 Servlet 只能处理一个请求,耦合度高,复用性差,整页刷新用户体验差 2. MVC 模式:部分解耦但后端仍负责 View层,高并发有限 3. 前后端分离:异步调用,复用性强,支持复杂交互,用户体验性强 概念 SpringMVC 是 Spring 框架中的一个模块,用于 阅读全文
posted @ 2025-01-08 13:21 SlackClimb 阅读(323) 评论(0) 推荐(1) 编辑
摘要:概念 外观模式是一种结构型模式,为复杂的子系统提供一个统一的接口,使得子系统的功能对外界更加简单、易用。 与真实世界的类比 当你通过打电话给商店下达订单时,接线员就是该商店所有服务和部门的外观。 接线员为你提供了一个包含购物系统、支付网关、送货等服务的简单语言接口。 外观模式结构图 // 空调 pu 阅读全文
posted @ 2025-01-06 22:36 SlackClimb 阅读(25) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示