Я не знаю, влияет ли это на производительность или нет, но любые поля, для которых у вас есть явные значения по умолчанию, я лично предпочитаю назначать их в объявлениях, например:
Public Class MyClass
Private pIsDirty As Boolean = False
Private pDated as Date = Now()
End Class
Имейте в виду, что большинство "простых" типов, таких как булевы, целочисленные и т. Д., Имеют автоматическую настройку по умолчанию и НЕ ДОЛЖНЫ инициализироваться, но я показываю это здесь в качестве примера, а иногда для ясности, вы все равно хотите его. Кроме того, поскольку все классы, которые я пишу, предназначены только для внутреннего использования (мы не продаем какие-либо объекты кода для публичного использования), я могу быть уверен, что потребители моих классов. Поэтому я, как правило, просто пишу минимальный конструктор (если нужен не по умолчанию), который принимает только основные поля, и раскручиваю любые дополнительные значения с новым синтаксисом With
в VB следующим образом:
Dim myObj = New SomeClass() With { .Prop1 = "value", .Prop2 = Now() }