使用现有自动化代码还是从头开始编写?

43次阅读
没有评论

问题描述

在使用自动化代码(如cookbooks、playbooks、dockerfiles等)时,有一个疑问是应该使用现有的代码还是从头开始编写。他注意到很多自动化代码的质量并不高,即使质量较高的代码也很少涵盖所有情况。因此,每次都需要根据自己的需求进行定制,而其中大部分代码却没有被使用(增加了复杂性、降低了修改的便利性、缺乏自动化代码之间的统一性)。

用户特别提到,配置管理大多数情况下都是“足够高级”,即使从头开始实现某些功能,也不需要编写太多样板代码。唯一的例外可能是针对特定用例的额外“纯模块”,如果DSL(领域特定语言)提供的功能不足够。

用户希望了解其他人的经验,是否存在一种最佳实践,即何时从头开始实现解决方案,何时使用现有的基础设施/部署自动化代码。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1

根据我的有限经验,使用现有的自动化代码确实可以快速获得第一个解决方案;然而,通常在“初次接触”或后续使用过程中,可能会出现意想不到的问题,特别是当您希望为不寻常的情况扩展配置时。

因此,我倾向于保持开放的态度。我通常会从现有的代码开始,但有时直觉告诉我要深入了解,然后我会即兴决定是自己动手还是继续使用现有代码…

方案2

请注意以下操作注意版本差异及修改前做好备份。
另一种方法是从头开始编写自己的自动化代码。这样可以确保代码完全符合自己的需求,并且可以更好地控制代码的质量和可维护性。当现有的自动化代码无法满足特定需求时,从头开始编写代码可能是一个不错的选择。

以下是一些决定是否从头开始编写自动化代码的因素:
1. 自定义需求:如果您有特定的需求,而现有的自动化代码无法满足,那么从头开始编写代码可能是一个好主意。
2. 控制权:从头开始编写代码可以让您完全控制代码的质量和可维护性。如果您对代码的质量有较高的要求,或者希望能够轻松修改和维护代码,那么从头开始编写代码可能是一个好选择。
3. 学习机会:从头开始编写代码可以提供学习新技术和工具的机会。如果您对学习新东西感兴趣,或者希望提高自己的技术水平,那么从头开始编写代码可能是一个好机会。

总的来说,是否使用现有的自动化代码还是从头开始编写取决于您的具体需求和偏好。在做出决定之前,建议您评估现有的自动化代码是否能够满足您的需求,并考虑从头开始编写代码的潜在好处和挑战。

示例

以下是一些不好的自动化代码的示例,根据我的观点:
1. 缺乏文档和注释:自动化代码应该有清晰的文档和注释,以便其他人能够理解和使用它。如果代码缺乏文档和注释,那么它可能很难理解和维护。
2. 不可扩展性:自动化代码应该具有良好的可扩展性,以便能够适应不同的需求和场景。如果代码缺乏可扩展性,那么在需要进行修改和定制时可能会遇到困难。
3. 不稳定性:自动化代码应该是稳定和可靠的,以便能够在各种情况下正常工作。如果代码不稳定,那么它可能会导致意外的错误和故障。

这些只是一些示例,具体的不好的自动化代码可能因情况而异。在评估自动化代码质量时,建议您考虑这些因素,并根据自己的需求和标准进行评估。

正文完