SOLID 提供指导创建易于理解、修改和扩展软件。

SOLID 首字母缩写

SOLID 首字母缩写代表:

  • S -> 单一职责原则(Single Responsibility Principle)
  • O -> 开放/封闭原则(Open/Closed Principle)
  • L -> 里氏替换原则(Liskov Substitution Principle)
  • I -> 接口隔离原则(Interface Segregation Principle)
  • D -> 依赖倒置原则(Dependency Inversion Principle)

单一职责原则(SRP)

指出类应该只有一个改变理由。换句话说,它应该在软件系统内有单一、良好定义职责或任务。

开放/封闭原则(OCP)

指出软件实体,如类,应该开放扩展但封闭修改。这意味着你可以添加新功能不改变现有代码。

里氏替换原则(LSP)

指出派生类对象应该能够替换基类对象不影响程序正确性。

接口隔离原则(ISP)

强调使用接口的类或组件不应该被迫依赖它们不使用的接口。

依赖倒置原则(DIP)

指出高层模块(或类)不应该依赖低层模块;两者都应该依赖抽象,如接口。

HTTP 状态码

HTTP 状态码由服务器发出响应客户端请求。这些简洁响应从服务器超级有用当调试我们 Web 应用、移动应用或 API。

1xx 信息

  • 信号客户端请求收到,处理继续(例如,100 Continue)

2xx 成功

  • 确认请求成功完成(例如,200 OK)

3xx 重定向

  • 需要客户端行动,如跟随重定向(例如,301 Moved Permanently)

4xx 客户端错误

  • 指示客户端导致请求失败(例如,404 Not Found)

5xx 服务器错误

  • 显示服务器失败处理请求(例如,500 Internal Server Error)

整洁架构

整洁架构是组织软件应用方式使它们易于理解、维护和扩展。整洁架构有 4 层,每层有清晰角色。这些层之间依赖总是指向内,确保松耦合、可测试和可维护系统。

  • 实体:这些是业务核心规则和逻辑。它们代表系统最稳定部分并独立任何外部系统或框架
  • 用例:这些定义你应用可以执行特定操作。它们编排数据流在实体和外部接口之间但不关心数据如何显示或存储
  • 接口适配器:这个层包括控制器、呈现器和网关。它转换数据从外层(如 Web、数据库或 UI)为用例和实体可以理解形式
  • 框架和驱动:这些是外部工具和系统如数据库、Web UI 或设备。它们坐在外面并依赖内层

Docker 工作原理

Docker 架构由三个主要组件组成:

Docker 客户端

  • 用户交互接口
  • 与 Docker 守护进程通信

Docker 主机

  • Docker 守护进程监听 Docker API 请求
  • 管理各种 Docker 对象,包括镜像、容器、网络和卷

Docker 注册表

  • Docker 镜像存储地方
  • Docker Hub 是广泛使用公共注册表

大型语言模型如何工作

数据收集和标记化

LLMs 开始通过摄入大量体积文本从来源如书籍、网站和代码。这个文本清理和打破为更小单元(标记)准备它用于训练。

预训练与 Transformer 架构

使用 transformer 模型和自注意力机制,系统学习预测序列中下一个标记。这个过程调整数十亿参数发展广泛语言理解。

微调为特定任务

预训练模型然后定制为特定应用通过微调技术,对齐它行为与人类偏好或专门任务。一些方法是 RLHF、LoRA 等。

推理和响应生成

模型生成响应基于输入提示在推理时间通过预测下一个最可能标记。高级策略和检索机制可以改善流畅性和事实准确性。

优化和部署

在部署前,模型压缩和过滤确保速度、效率和安全。它然后部署在环境如云平台和边缘设备为真实世界使用。

本文为学习目的的个人翻译,译文仅供参考。

原文链接:EP175: What is the SOLID Principle?

版权归原作者或原刊登方所有。本文为非官方译本;如有不妥,请联系删除。