c - 软件组件如何报告(缺失)功能?
问题描述
软件组件提供功能。其中一些功能具有依赖性(例如硬件或外部库)。我主要考虑与 I2C 等硬件紧密耦合的便携式软件组件(并非所有 I2C 外设都具有相同的功能,并且 I2C 的软件仿真有局限性)。
如果无法模拟这些依赖项中缺少的功能,则会破坏该功能,并且需要使用此组件的软件知道它。然后,该软件可以提供解决方法或将错误报告给更高层。
作为一名嵌入式固件工程师,我遇到过许多奇怪的限制或驱动程序缺失功能仅在测试期间才变得明显的情况。它根本没有记录在案,也没有在软件中进行交流。
我可以想到三种技术来报告缺失的功能或限制:
- 确实提供函数的接口,但只是返回错误代码或引发异常。缺点:事后。
- 使用常量来传达特性 (FEATURE_X_SUPPORTED) 和限制 (MAX_FREQUENCY)。缺点:功能列表可能非常大,使用组件的代码必须了解它使用的所有功能。据我所知,没有标准化的方法可以做到这一点。
- 记录它。
这个问题的官方术语是什么?我记得听说过一个名为“功能列表”之类的概念。还有哪些其他技术可以解决兼容性问题?
解决方案
推荐阅读
- preact - testing-library/preact 和 react-redux 不工作
- docker - 如何在 docker 的一个标签下推送具有不同 OS/ARCH 的多个摘要?
- python - 使用 Selenium 使用 Python 单击按钮
- python - 如何在MYSQL数据库中保存很长的整数数据
- python - 将 BSC 智能合约代币铸造到 10 个不同的钱包中
- java - 在java中比较两个json响应
- ios - Swift、iOS15、UIKit、CollectionView 标头问题
- mysql - 如何在查询中找到前 3 名的薪水?
- ajax - 一键将多个商品添加到 Shopify 购物车
- database - 如何使用 TypeORM 持久化多列、可重新排序的列表?