我看到许多项目使用这种类型的文件。它通常包含从代码中的许多地方所需的函数。保存只包含一两个函数的类和命名空间的代码似乎很合理。但另一方面,它使代码不太分离成逻辑部分,这可能会使项目结构更难以理解。那么我的问题是什么。在项目中有这样的文件是好还是坏?我使用的语言是C++,但这个问题似乎适用于任何编程语言。
无论一个utils文件是否是不好的实践,都取决于许多因素。其他因素包括(列表不详尽且可能受到不同个人意见的影响):- 它是否包含逻辑上属于一起的函数。或者里面有一些不属于的函数。后者当然是不好的实践。 - 它是否是一个命名良好的命名空间的一部分,以明确utils的目的。 - 还有目录结构与命名空间结构相似。 - 单元测试显示工具如何工作以及用户应如何使用API。 - 如果你能找到比utils更好的名称,请务必这样做。 - 这些utils文件可以采用许多形式,服务也同样适用。 - 良好命名的类和函数名称、变量等。结论:它是好还是坏,很大程度上取决于更广泛的上下文和文件内容。清洁代码的规则始终适用。将实用程序函数放入单独的文件中的想法是常见的做法,但只有在它们被非常良好地结构化以便人们轻松找到它们并在其中时才有用。如果这样可以,人们会使用它们。否则,人们将不使用它们,并且您仍将拥有许多utils文件,这些文件仍包含许多具有稍微不同实现的重复内容。