我正在尝试创建一个类似于datatable结构的简单readonly结构,我将使用它来生成sql命令,我正在寻找最大性能以下是我想出的,想法是生成{{1来自Rows[]
。
IList<T>
每个单元格都包含对其列对象的引用,我不确定它是否正确,我想知道是否从单元格中删除列引用并使用对象顺序获取列引用是更好的选择,换句话说,我想微观优化它,因为它结构简单。
答案 0 :(得分:3)
我想微观优化它,因为它结构简单。
这不是微观优化这种结构的正当理由。
现在,你的班级结构甚至还不正确。首先关注正确性,然后您可以进行优化。
例如,通过返回您在内部使用的相同object[]
,这不是您声称它的“只读结构”。有人可以修改这个数组的元素并将其搞砸了。
根据您所说的,您正在尝试使用此框架(分析表达式树以生成SQL查询等),很可能您在此级别执行的任何优化都不会引人注意。但是,如果您确实想要开始优化,那么正确的开始位置是删除对阵列上.Count()
的调用。请改用.Length
。
但是,正如我在你的问题评论中所提到的,我强烈建议先尝试现有的框架。比你更聪明的人和我已经投入了大量的时间和精力,他们可能会做得比我们做得更好。 : - )