当前位置: 首页 > news >正文

旅游网站做精准营销的佛山营销型网站建设公司

旅游网站做精准营销的,佛山营销型网站建设公司,怎样登录柳州建设网站,泉州外贸网站开发公司模版方法实践案例 实践之前还是先了解一下模版方法的定义 定义 模板方法模式是一种行为设计模式,它定义了一个骨架,并允许子类在不改变结构的情况下重写的特定步骤。模板方法模式通过在父类中定义一个模板方法,其中包含了主要步骤&#xf…

模版方法实践案例

实践之前还是先了解一下模版方法的定义

定义

模板方法模式是一种行为设计模式,它定义了一个骨架,并允许子类在不改变结构的情况下重写的特定步骤。模板方法模式通过在父类中定义一个模板方法,其中包含了主要步骤,而将一些步骤的实现留给子类。这样,子类可以在不改变算法整体结构的情况下,根据需要重新实现某些步骤。

在什么情况下要使用模版方法呢?设计模式不能生搬硬套,而是在一些适合的场景下进行使用,否则会适得其反,可以看看这篇文章http://www.ayqy.net/blog/设计模式总结(《head-first设计模式》学习总结)

进入正题

以下是我项目应用模版方法的代码片段

/*** @Author: HWQ* @Version: 1.0* @Description: 基本api请求*/
public abstract class BaseRequest<O, T extends ResultResponse> {private Map<String, Object> requestParams = new HashMap<>();/*** get方法** @return {@link}*/public abstract String getMethod();/*** 获取路径** @return {@link String}*/public abstract String getPath();/*** 获取响应类** @return {@link Class}<{@link T}>*/public abstract Class<T> getResponseClass();@JsonAnyGetterpublic Map<String, Object> getRequestParams() {return requestParams;}public void setRequestParams(O params) {// 将JSON对象转为Mapthis.requestParams = new Gson().fromJson(JSONUtil.toJsonStr(params), new TypeToken<Map<String, Object>>() {}.getType());}
}

BaseRequest定义了骨架,具体的步骤包括获取请求方法(getMethod)、获取路径(getPath)、获取响应类(getResponseClass)等。

/*** @author HWQ* @date 2024/2/28 11:54* @description*/@Accessors(chain = true)
public class ChatAIRequest extends BaseRequest<ChatAIParams, ResultResponse> {@Overridepublic String getPath() {return "/chatAi";}/*** 获取响应类** @return {@link Class}<{@link NameResponse}>*/@Overridepublic Class<ResultResponse> getResponseClass() {return ResultResponse.class;}@Overridepublic String getMethod() {return RequestMethodEnum.GET.getValue();}
}

ChatAIRequest继承了BaseRequest这个抽象类,实现了获取请求方法(getMethod)、获取路径(getPath)、获取响应类(getResponseClass)

分析一下

好处在哪?

  1. 提高代码一致性

如果我的系统中仅有ChatAIRequest这个类,那我大可不必采用模版方法

问题是我的项目中有大量的Request类,并且这个Request的骨架是相同的,所以这些Request类只需要继承BaseRequest这个抽象类,实现各自的获取请求方法(getMethod)、获取路径(getPath)、获取响应类(getResponseClass)即可

在这里插入图片描述

  1. 减少重复代码: 具体的请求类(例如 chatAiRequest)无需重复实现算法的整体结构,只需专注于实现特定的步骤,如获取请求方法、路径等。这降低了代码的冗余,符合"Don’t Repeat Yourself"(DRY)原则

  2. 提高代码的可维护性: 算法的整体结构集中在 BaseRequest 类中,使得代码更易理解和维护。如果有新的请求类需要添加,只需创建新的具体子类,并实现特定的步骤,而不需要修改已有的代码

http://www.tj-hxxt.cn/news/90530.html

相关文章:

  • 网站制作一条龙线上如何推广自己的产品
  • 做seo时网站发文目的站长工具端口检测
  • wordpress自定义schema谷歌外贸seo
  • 怎么区分营销型和展示型的网站江门网站建设
  • iis怎么做网站优化大师下载旧版本安装
  • 福州光电网站建设360网站推广费用
  • wordpress 模板兔成都网站优化排名推广
  • 电影网站开发教程营销型网站建设模板
  • 商城网站建设适合于哪类企业seo推广服务
  • 某某公司网站建设论文网络销售的好处和意义
  • 深圳开发软件公司威海百度seo
  • 无限流量网站建设汕头seo外包平台
  • 织梦dede门户资讯新闻网站源码球队积分排名
  • 商城网站建设设计介绍互联网推广渠道有哪些
  • 做的最成功的个人网站如何自己建个网站
  • 陶瓷 中企动力 网站建设拼多多运营
  • 哪些网站做代理商企业网站优化软件
  • wordpress 好看的主题东莞网站建设优化推广
  • 专业做网站价格网络上哪里可以做推广
  • 网站设计怎么用黑色广州网站运营专注乐云seo
  • 免费做外贸的网站平台有哪些今日新闻联播
  • 怎样做无水印视频网站免费建网站平台
  • 台州电子商务网站开发国家免费培训学校
  • 崇左做网站公司山东东营网络seo
  • 建设银行etc网站学电商出来一般干什么工作
  • 福建建设科技人才网站宁德市地图
  • 如何做属于自己的领券网站千锋教育地址
  • 投资公司取什么名字最好深圳博惠seo
  • 宁波企业建站程序新闻10 30字
  • 金水郑州网站建设seo优化师是什么