• 面试打底稿⑥ 项目一的第二部分


    简历原文

    抽查部分

    • 计算运费模块板块扩展性优化,采用责任链模式,实现不同地区间寄件的运费模板扩展的优化,为模块解耦,提高了系统的扩展性
    • 短信模块设计,设计了短信发送数据模板的数据化存储,规范了发送短信的流程

    模拟问答

    1.你们运费模板是用来做什么的?责任链模式是什么?

    我们的运费模板是用来在不同寄送范围下分类计算运费。比如同城寄和省内寄是不一样的收费模式。

    因为运费需要根据订单起点、终点的所在城市、省份等确定,所以写在服务层的查询代码会比较臃肿,我们可以使用抽象类将这些模板的共性抽取出来,定义好处理本节点和下一个节点的方法;再用@Order注解编辑顺序,最后组装成链,这样不仅使代码更优美,实际上的添加模板、修改顺序的操作也更加方便了。这就是责任链模式,用抽象类共性,然后组装成链。

    2.你是如何设计短信发送流程的?

    调用阿里云的短信api,要传4个参数:接收的手机号码、短信签名、模板号、短信中的变量与对应的值。

    于是,我们把短信发送流程规范化。短信签名、模板号分类为短信模板,单独设计一张 表存储不同模板;手机号码、短信中的变量属于短信信息,又放另外一张表存储。

    此外,我们还提供了短信类型、内容类型的不同扩展功能,例如短信类型可以分为验证与通知,内容类型可以分为文字版和语音版。

    我们还可以设计扩展记录传入不同微服务的名称,具体追踪是哪个微服务调用的这个短信微服务的接口,方便错误追踪等。

  • 相关阅读:
    模电学习路径
    redis(1)-hiredis-Windows下的编译
    python --opencv图像处理形态学(开运算、闭运算、梯度运算、顶帽运算、黑帽运算)
    代码随想录 单调栈part3
    webSocket的通信流程,以及对网络等错误的处理
    强化学习-策略梯度和PPO
    AI芯片软件定义硬件架构
    QFile和QDataStream二进制文件读写第三集
    Transformer在小目标检测上的应用
    源码部署ELK日志分析管理系统
  • 原文地址:https://blog.csdn.net/m0_46948660/article/details/133434092