欢迎光临
我们一直在努力

第 8 篇:适配器模式 (Adapter) —— 换芯片不换代码

专栏导读:适配器模式就像我们出国的“电源转换插头”。你(业务层)需要的是标准的 220V 两孔插座,而墙上(硬件层)提供的是美标、英标、欧标各种奇形怪状的插孔。适配器负责在中间做一次“翻译”,让你根本不需要关心墙后面是核电还是水电。


1. 场景还原 (The Pain)

假设你写了一个很酷炫的 UI 界面库,里面有按钮、进度条。 最开始,你用的是 0.96寸 OLED (SSD1306)。

菜鸟的写法:直接调用驱动

// Button.c void Button_Draw(Button* btn) {
    // 痛点:直接调用了 SSD1306 的特定 API     // 如果明天老板要把屏幕换成 2.4寸 LCD (ILI9341),     // 你需要搜索整个工程,把所有的 SSD1306_DrawPixel 替换掉。     // 而且 SSD1306 是单色 (0/1),ILI9341 是彩色 (RGB565),参数都不一样!     SSD1306_DrawPixel(btn->x, btn->y, 1);      SSD1306_DrawLine(btn->x, btn->y, btn->w, 1); }

架构师的审视

赞(0)
未经允许不得转载:171主机测评 » 第 8 篇:适配器模式 (Adapter) —— 换芯片不换代码
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址