反对匿名 - 在文本上运行



我有两个大文本文件要比较,每个文件包含约100,000行,每行代表DB中的一个实体,并且它的数据。

使用C#。为了比较,我刚刚通过行键入文件,然后第二个将每行键入一个字典,然后从每个文件内容中通过键比较值。这很好,但是对我来说有点尴尬,因为每行都是"愚蠢的",我对每个分式代表,混音等的控制权较少。, ETC,。从那时起,它是更干净的代码,更易于控制,但是明智的是,与以前的路相比,大约需要8分钟。

我想知道,如果转到从每一行中创建对象是正确的方式(明智的编程),或者在这样的情况下,"愚蠢"的分裂,循环和比较文本将是"清洁器"的方式吗?<<<<

目的更新:我将代码更改为反对行,因为每次分裂都有其自己的"设置",例如,一行将是一个看起来像00100的数量,然后我想将其解析为int,只有然后进行比较,有些分裂,是"忽略",每个分式都有一个名称(基本金额,公司等),因此,如果有差异,我想报告拆分的名称。我的疑问是,如果将在20秒内运行的代码更改为在10分钟内运行的代码,但是使我的生活更轻松,这是对的吗?

遵循的一个简单原则是您必须构建所需的东西,而不是看起来很漂亮。

如果您需要操纵所读的数据,则使用数据填充对象对我来说很有意义。但是,如果您只需要比较条目,就没有理由使条目"更聪明"。

但是,我建议您认为代码丑陋或以其他方式感到笨拙,请尝试寻找替代方案并选择您认为最好的东西。特别是为了比较,您可能想更深入地研究Linq或Regex。

在我看来,可维护性和可读性更为重要。一旦实现了这一目标,您就可以随时提高性能。

我看到了许多根本不需要的"早期"性能优化,只是使一切变得更加复杂。

相关内容

  • 没有找到相关文章

最新更新