Когда конструктор / свойства действительно необходимы в .Net? - PullRequest
0 голосов
/ 26 октября 2018

Очень быстрый вопрос, так как я никогда не понимал необходимость конструктора / свойств в некоторых случаях ... У меня есть класс под названием "Проверка", где все, что я планирую сделать, это взять значение из некоторых текстовых полей и быть уверенным что они либо заполнены или в правильном формате. Я могу заставить функции работать и возвращать значения без конструктора или установки приватных полей и свойств для них.

Так зачем вообще беспокоиться? Есть ли веская причина? Пример кода ниже:

Вызов функции:

Dim validation As New Validation
Dim allFields As Boolean = False
allFields = validation.testFunction("Yes")

    If allFields = True Then
        MsgBox("Success")
    Else
        MsgBox("Fail")
    End If

Класс:

Public Class Validation

    Function testFunction(randomField As String) As Boolean

        If randomField = "Yes" Then
            Return True
        Else
            Return False
        End If

    End Function

End Class

Итак, зачем мне возиться с конструктором и объявить _randomField со свойством, если оно делает то, что я хочу, с этим небольшим кодом? Спасибо.

1 Ответ

0 голосов
/ 26 октября 2018

Если вы хотите, чтобы что-то всегда выполнялось при создании нового экземпляра, вы используете конструктор. Но это также зависит от другого шаблона (например, фабричный шаблон может инициализироваться вне конструктора).

Когда вы начинаете иметь больше логики в вашей программе, например, «Грязное состояние» или «Атрибуты», они создаются со свойствами из-за добавленной возможной логики. То же самое с частным сеттером и публичным геттером. Но кое-что из этого можно сделать с помощью метода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...