Было бы особенно плохо использовать StringBuilder в геттере C#?

Получатель получит сообщение о состоянии структуры, в которой он находится, которое определяется комбинацией свойств структуры, которые являются конечными.

Во-первых, речь идет не о микрооптимизации, я просто думаю, что:

StringBuilder msg = new StringBuilder();
...
msg.AppendLine("static string");
...

выглядит чище, чем:

String msg = String.Empty;
...
msg = String.Concat(msg, "static string", System.Environment.NewLine)
...

так что просто эстетический выбор.

Переменная msg в любом случае должна быть инициализирована пустой, поэтому лишняя строка меня не беспокоит. Но насколько плохо создавать новый StringBuilder в поле, которое возвращает строку?

РЕДАКТИРОВАТЬ Я просто хотел знать, не приведет ли размещение конструктора StringBuilder в геттере к открытию огромной банки червей, нелепых накладных расходов, некоторые никогда не используют конструкторы в геттерах, что-то вроде анти-шаблона и т. д. ... не знать, что всем нравится наиболее эффективный способ объединения незацикленных строк.

РЕДАКТИРОВАТЬ2 Каков обычно рекомендуемый порог производительности для геттера и не ниже ли этого значения конструктор StringBuilder?

0
задан capn 14 May 2012 в 23:03
поделиться