自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 设计模式14-观察者模式

观察者模式是一种软件设计模式,也称为发布-订阅模式。在这种模式中,存在一个被称为主题(Subject)的对象,以及若干个观察者(Observer)对象。主题对象维护了一个观察者对象列表,当主题对象的状态发生变化时,它会通知所有的观察者对象,使它们能够自动更新。这种模式常被用于构建分布式系统、事件处理系统以及MVC(模型-视图-控制器)架构中。它可以有效地降低组件之间的耦合性,让系统更易于扩展和维护。而观察者对象则会实现一个更新方法,用于在接收到主题对象的通知后进行相应的更新操作。

2024-05-02 10:38:33 6 1

原创 设计模式13-模板方法模式

模板方法模式是一种行为设计模式,它通过定义一个算法的骨架,而将一些步骤延迟到子类中实现,从而使得子类可以在不改变算法结构的情况下重新定义算法的某些步骤。这种模式促进了代码的重用和扩展性。在模板方法模式中,通常有一个抽象类定义了一个模板方法,该方法定义了算法的骨架,并且在其中调用了一系列的抽象方法或者具体方法,这些方法可以由子类实现以完成算法的特定步骤。子类可以根据需要选择性地覆盖这些方法,以实现自己的行为,但是算法的结构保持不变。举个例子,假设我们有一个制作饮料的模板方法。算法包括准备材料、加工和装饰。

2024-04-30 09:36:37 180

原创 设计模式12-策略模式

策略模式是一种软件设计模式,它允许在运行时选择算法的行为。在策略模式中,算法被封装成单独的对象,称为策略。这些策略对象可以相互替换,从而使客户端代码能够在运行时选择不同的算法,而不必更改其结构。:上下文是一个类,它包含一个对策略对象的引用,并且可以将请求委托给策略对象。上下文通常会根据客户端的需求动态地切换不同的策略。:策略是一个接口或抽象类,它定义了一个算法族的通用接口。不同的具体策略类实现了这个接口,代表着不同的算法。:具体策略是实现了策略接口的具体算法。每个具体策略类都提供了一种算法的实现。

2024-04-29 15:39:24 115 1

原创 设计模式11-享元模式

享元模式(Flyweight Pattern)是一种软件设计模式,旨在有效地支持大量细粒度的对象。它主要用于减少内存使用和提高性能,通过共享尽可能多的相似对象来实现这一目的。在享元模式中,对象分为两种:内部状态(Intrinsic State)和外部状态(Extrinsic State)。内部状态是对象共享的部分,而外部状态是对象独立的部分。享元模式通过共享内部状态来减少对象的数量,而外部状态则可以通过参数化来个性化不同的对象。这个模式在需要创建大量相似对象但又需要保持系统性能的场景中非常有用。

2024-04-27 11:34:33 236

原创 设计模式10-组合模式

组合模式是一种结构型设计模式,用于将对象组织成树形结构,以表示“部分-整体”的层次关系。该模式通过使用一个统一的接口来处理单个对象和组合对象,使得客户端可以一致性地处理它们。

2024-04-26 09:43:32 292 1

原创 设计模式9-桥接模式

定义抽象类接口,它维护一个指向实现部分的引用对象,并定义了基于实现部分的高级操作。

2024-04-25 09:20:08 203 1

原创 设计模式8-外观模式

外观模式(Facade Pattern)是一种软件设计模式,属于结构型模式。它提供了一个统一的接口,用于访问子系统中的一组接口,从而简化了对复杂系统的访问。

2024-04-24 09:23:43 146

原创 如何利用SAM(segment-anything)制作自己的分割数据集

利用SAM(segment-anything)制作自己的分割数据集

2024-04-23 21:41:39 1030

原创 设计模式7-代理模式

代理模式是一种结构型设计模式,其目的是通过引入一个代理对象来控制对另一个对象的访问。

2024-04-23 09:23:29 205

原创 设计模式6-装饰器模式

装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许向现有对象动态地添加功能,而无需修改其源代码。这种模式通过将对象包装在一个装饰器类的实例中来实现。装饰器类具有与原始对象相同的接口,这样客户端就无需知道装饰器和原始对象之间的区别。

2024-04-22 09:11:08 227

原创 设计模式5-适配器模式

适配器模式(Adapter Pattern)是一种结构型设计模式,用于将一个类的接口转换成客户端所期待的另一个接口。它允许原本不兼容的类能够合作无间。

2024-04-19 10:07:55 267

原创 设计模式4-原型模式

首先定义一个抽象的Shape类,作为图形对象的原型,其中包含抽象的clone方法用于复制图形对象。// 抽象原型类 Shape// 克隆方法@Overridetry {// 浅拷贝。

2024-04-18 08:54:13 293

原创 设计模式3-生成器模式

生成器模式(Builder Pattern)是一种创建型设计模式,旨在通过一步一步构建复杂对象来创建对象。这种模式允许你使用相同的构建过程来创建不同的表示形式。 在软件开发中,有时候我们需要构建一个复杂的对象,这个对象可能包含多个部分,每个部分都有自己的构建步骤和规则。如果直接在客户端代码中创建这个复杂对象,会导致代码复杂,难以维护,也不利于对象的重用。生成器模式通过将构建复杂对象的过程拆分成多个步骤,每个步骤由一个生成器(Builder)负责完成,从而实现对象的创建。生成器模式的核心思想是将

2024-04-17 07:36:46 228

原创 设计模式2-单例模式

单例模式是一种设计模式,其主要目的是确保一个类只有一个实例,并提供一个全局访问点。:当多个对象需要共享某些资源(如数据库连接、文件管理器等)时,使用单例模式可以确保所有对象都使用同一个实例,避免资源的重复创建和浪费。:某些类在应用程序中需要全局唯一的实例来管理全局配置或状态。:单例模式可以延迟对象的创建,直到第一次访问时才进行初始化,从而节省系统资源。

2024-04-16 10:13:33 216

原创 设计模式1-工厂模式

简单工厂模式(Simple Factory Pattern)是一种创建型设计模式,它提供了一个简单的工厂类,根据不同的参数来实例化不同的对象,而客户端无需直接创建对象,只需要通过工厂类来获取所需的对象。简单工厂模式封装了对象的创建过程,使客户端代码与具体类的实现解耦,提高了代码的灵活性和可维护性。客户端根据需要选择合适的工厂类,并通过工厂类创建按钮和窗口,而无需关心具体产品的实现细节。下面是一个抽象工厂模式的示例,演示了如何创建一个简单的 GUI(图形用户界面)工厂,用于创建不同操作系统下的按钮和窗口。

2024-04-15 10:25:48 1515 2

原创 RT-DETR(pytorch) 推理方法

以下是推理代码predict.ipynb。

2024-01-10 10:46:44 499 1

原创 RT-DETR(Pytorch)训练自己的数据集

rt-detr; 目标检测

2024-01-04 17:37:21 1037

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除