【设计模式】建造者模式

00、前言

上期浅析了规划形式中 单例形式。还没阅读过的小伙伴,能够去看看,等待交流。今日要浅析的是制作者形式。咱们将以界说,内容,运用场景,类图,Android 中的制作者形式来共享制作者形式。

01、界说

制作者形式是一种目标创立形式,它通过将目标的构建进程分解成多个过程来创立杂乱的目标。它答应您运用相同的构建进程来创立不同类型的目标,而且能够愈加灵敏地操控构建进程。

02、组成与类图

【设计模式】建造者模式
[图源图解规划形式]

制作者形式一般由以下几个组成部分组成:

  • 产品类(Product):产品类是最终创立的目标,它包含了需要被构建的所有特点和办法。

  • 笼统制作者类(Builder):笼统制作者类界说了创立产品的笼统办法,而且一般还包括一些通用的构建过程。

  • 详细制作者类(Concrete Builder):详细制作者类完成了笼统制作者类中界说的办法,并负责构建产品的各个部分。

  • 指挥者类(Director):指挥者类负责运用制作者类的接口来构建产品。它一般包含一个构建办法,该办法将一系列过程按照特定的顺序组织起来,以便构建出一个完整的产品。

03、运用场景

制作者形式一般适用于以下场景:

  • 创立杂乱目标时,需要一步一步地构建其各个部分,而且每个部分能够按照不同的方式构建。

  • 需要构建多个目标,而且这些目标之间有一些相似之处。

  • 需要愈加灵敏地操控目标的构建进程。

04、Android 中的制作者形式

  • Notification.Builder:用于构建告诉目标的类,告诉能够在 Android 系统中显现。Notification.Builder 答应您自界说告诉的各个部分,例如标题、消息、图标等。

  • Retrofit.Builder:Retrofit 是一个盛行的 HTTP 客户端库,它能够协助您轻松地与 REST API 进行交互。Retrofit.Builder 用于构建 Retrofit 目标,它答应您指定一些重要的参数,例如服务器的根本 URL、转换器、拦截器等。

  • OkHttpClient.Builder:OkHttpClient 是另一个盛行的 HTTP 客户端库,它供给了丰厚的功用和定制选项。OkHttpClient.Builder 用于构建 OkHttpClient 目标,它答应您指定一些重要的参数,例如超时时间、缓存、拦截器等。

  • AlertDialog.Builder、PopupMenu.Builder、Toast.Builder 等等 Android 系统自带的 UI 控件也都运用了制作者形式。

05、结语

制作者形式是一种在 Android 开发中非常常见的规划形式,它能够协助咱们愈加灵敏地构建目标,而且能够进步代码的可读性和可维护性。