编写便携式固件入门

想要重用软件的开发人员要取得成功要克服几个挑战。这些挑战包括但不限于:

  • 字节序
  • 处理器架构
  • 母线宽度
  • 模棱两可的标准
  • 开发时间和预算
  • 模块化
  • 代码耦合

与简单地编写功能完备的代码(后来被丢弃)相比,入门可能会令人不知所措,并且导致更多的压力和困惑。成功开发可移植代码的关键是确定固件当前满足可移植软件特性的程度,一旦被理解,就决定要去哪里。为了确定您现在在开发便携式固件的位置,请首先绘制如下图所示的图表。在图中,为每个辐条贴上对您的组织最重要的便携式固件特性。

然后,在每个确定的类别中,开发人员可以评估其代码展示这些属性的程度。例如,试图过渡到编写更多可移植代码的开发人员可能会用如下图结果评估自己:


快速浏览上图可以告诉开发人员很多信息。首先,我们在文档和模块化方面具有优势。这是开发便携式固件的重要一步,我们才刚刚开始。该图还向我们显示了我们的弱点在哪里,例如代码耦合和内聚。
从此一目了然,我们现在可以确定应该从哪里开始集中注意力。如果仅改善几个点,哪个特性将极大地改善我们的代码?让我们以代码耦合为例。如果开发人员要改善代码耦合,则需要确定如何进行改进。他们可能认为最好的方法是:

  • 计划代码审查
  • 查找可以提供模块依赖图的工具
  • 使用依赖图工具(仅因为我们拥有工具并不意味着我们有使用它的纪律性)
  • 开发考虑模块耦合的高级架构

开发人员可能会认为某个方面的改进足以开始,或者需要完成所有工作。关键是我们不会在一夜之间开始编写完美的,可重用的代码。该过程是反复进行的,可能需要花费几年时间才能将所有粗糙边缘平滑,但这没关系。以下是开发人员可以用来提高固件可移植性的简单过程:
1)分析其代码特征
2)找出优点和缺点
3)确定未来3个月需要改善的特征
4)确定可以做些什么来逐步改进
5)实施改进
6)在指定的时间段后重复

如果您想了解有关如何开发可重用代码的更多信息,请签出“开发可重用固件–API的实用方法’s, HAL’s and Drivers

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.