0
以下のコードがあります。私たちは、どのアプローチがメモリパフォーマンスにとってより良いかについて議論しました。別の変数を使用せずに使用しても差はありませんか?それはそれに影響しますこれは可能な解決策ですか?メモリパフォーマンスのベストプラクティス
/// <summary>
/// Treatment Point Types
/// </summary>
public string DWTreatment
{
get
{
StringBuilder sbStatus = new StringBuilder();
.........
}
set
{
chkTreatSR.Checked = value.Split(',').Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.SR).ToString());
chkTreatIT.Checked = value.Split(',').Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.IT).ToString());
chkTreatEP.Checked = value.Split(',').Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.EP).ToString());
chkTreatWW.Checked = value.Split(',').Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.WW).ToString());
chkTreatQC.Checked = value.Split(',').Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.QC).ToString());
isSelectionSetByPage = true;
}
}
OR
/// <summary>
/// Treatment Point Types
/// </summary>
public string DWTreatment
{
get
{
StringBuilder sbStatus = new StringBuilder();
.........
}
set
{
var values = value.Split(',');
chkTreatSR.Checked = values.Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.SR).ToString());
chkTreatIT.Checked = values.Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.IT).ToString());
chkTreatEP.Checked = values.Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.EP).ToString());
chkTreatWW.Checked = values.Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.WW).ToString());
chkTreatQC.Checked = values.Contains(((int)AgencyListReportTemplate.SamplingPointTypesEnum.QC).ToString());
isSelectionSetByPage = true;
}
}
感謝。
テスト、テスト、ベンチマークおよびテスト。あなたが具体的な答えを得るのは唯一のことです。それ以外は、ベストプラクティスの質問はここで話題にはなりません。 – DavidG
"文字列型の"コードを書くと、一般的にパフォーマンスが心配するのが早すぎます...また、通常はプロパティとは異なる動作が期待されます - 'x.p = v;奇妙な変換を行い、設定プロパティがその値を変更する条件を満たすことはほとんどありません。 –
2番目のスニペットは、私の意見では耳障りなことです。同じ文字列を1の代わりに5回同じ方法で分割するのは、私にとってばかげているようです。 – itsme86