“一件事情”范例何时会变得有害?
想要改善这篇文章吗?提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 此问题是从Stack Overflow 迁移而来的,因为可以在Software Engineering Stack Exchange上回答。 迁移 8年前。 为了便于讨论,下面是一个示例函数,该函数逐行打印给定文件的内容。 版本1: void printFile(const string & filePath) { fstream file(filePath, ios::in); string line; while (std::getline(file, line)) { cout << line << endl; } } 我知道建议函数在一个抽象级别上做一件事。对我来说,尽管上面的代码几乎做一件事,而且是原子的。 一些书(例如Robert C. Martin的Clean Code)似乎建议将上述代码分解为单独的函数。 版本2: void printFile(const string & filePath) { fstream file(filePath, ios::in); printLines(file); } …