Я использовал .Net Reflector на внутреннем приложении, чтобы попытаться понять, что делал предыдущий Дев, а также учиться. У меня никогда не было инструкция о том, как разрабатывать приложения, поэтому я беру оттуда, где могу (переполнение стека Hooray). Сказав это, я нашел кое-что, что меня смутило. Библиотека классов под названием WinConstant, содержащая приведенный ниже код.Библиотека констант - лучшая практика?
Вот мой актуальный вопрос:
Что можно использовать это может быть?
Какое значение имеется при хранении связки констант в классе ?
Считается ли это "Лучшим Практика"?
Мысли и руководство оценили!
Public Class clsConstant
Public Const cAccess As String = "Access"
Public Const cAddress As String = "Address"
Public Const cCancel As String = "Cancel"
Public Const cCity As String = "City"
Public Const cClear As String = "Clear"
Public Const cClickOnMessage As String = "Click on any row in top pane to see the detail fields in the bottom pane."
Public Const cClientID As String = "ClientID"
Public Const cColon As String = ": "
Public Const cComma As String = ","
Public Const cContactID As String = "ContactID"
Public Const cCounty As String = "County"
Public Const cDash As String = "-"
Public Const cDelete As String = "Delete"
Public Const cDepartment As String = "Department"
Public Const cError As String = "Error"
Public Const cExec As String = "Exec"
Public Const cFalse As String = "False"
Public Const cFavorite As String = "Favorite"
Public Const cFederal As String = "Federal"
Public Const cFriday As String = "Friday"
Public Const cfrmMain As String = "frmMain"
Public Const cfrmModuleLogin As String = "frmModuleLogin"
Public Const cfrmModuleSplash As String = "frmModuleSplash"
Public Const cHelp As String = "Help"
Public Const cHint As String = "Hint"
Public Const cImagePath As String = "../../image"
Public Const cIn As String = "In"
Public Const cInformation As String = "Information"
Public Const cInitialScreenID As String = "InitialScreenID"
Public Const cInsert As String = "Insert"
Public Const cJuvenileID As String = "JuvenileID"
Public Const cLetter As String = "Letter"
Public Const cManual As String = "Manual"
Public Const cMasterID As String = "MasterID"
Public Const cModuleID As String = "ModuleID"
Public Const cModuleName As String = "ModuleName"
Public Const cMonday As String = "Monday"
Public Const cName As String = "Name"
Public Const cNegative As String = "Negative"
_
Public Shared ReadOnly cNLowDate As DateTime = New DateTime(&H851055320574000)
_
Public Shared ReadOnly cNullDate As DateTime = New DateTime
Public Const cNullDateString As String = "12:00:00 AM"
Public Const cOfficeIDDefault As String = "01"
Public Const cOne As Integer = 1
Public Const cOut As String = "Out"
Public Const cPopUp As String = "PopUp"
Public Const cPositive As String = "Positive"
Public Const cProcess As String = "Process"
Public Const cProviderID As String = "ProviderID"
Public Const cQuestion As String = "Question"
Public Const cRead As String = "Read"
Public Const cReferralID As String = "ReferralID"
Public Const cReminder As String = "Reminder"
Public Const cReport As String = "Report"
Public Const cReportEngine As String = "ReportEngine"
Public Const cReportEnginePath As String = "ReportEnginePath"
Public Const cReportingServices As String = "ReportingServices"
Public Const cReportServer As String = "ReportServer"
Public Const cReportService As String = "ReportService"
Public Const cReportServiceLocal As String = "ReportServiceLocal"
Public Const cReportServiceServer As String = "ReportServiceServer"
Public Const cSaturday As String = "Saturday"
Public Const cSearch As String = "Search"
Public Const cSelect As String = "Select"
Public Const cSpace As String = " "
Public Const cSQLLoginError As String = "SQL Server login/password invalid"
Public Const cStart As String = "Select a module"
Public Const cState As String = "State"
Public Const cSubjectID As String = "SubjectID"
Public Const cSunday As String = "Sunday"
Public Const cThursday As String = "Thursday"
Public Const cTooltipCancel As String = "Reset form data values back to before all manual changes."
Public Const cTooltipClear As String = "Clears all data entry fields prior to an Insert"
Public Const cTooltipClient As String = "Display a Client popup window."
Public Const cTooltipClose As String = "Close this form"
Public Const cTooltipDelete As String = "Delete the current record being displayed, no undo possible."
Public Const cTooltipExe As String = "Initiate a batch process."
Public Const cTooltipInsert As String = "Insert a brand new record"
Public Const cTooltipSearch As String = "Perform a Search for values entered."
Public Const cTooltipSelect As String = "Perform a Select for values entered."
Public Const cTooltipUpdate As String = "Update an existing record"
Public Const cTrue As String = "True"
Public Const cTuesday As String = "Tuesday"
Public Const cUnderscore As String = "____________________________________________________________"
Public Const cUpdate As String = "Update"
Public Const cWarning As String = "Warning"
Public Const cWeb As String = "Web"
Public Const cWednesday As String = "Wednesday"
Public Const cWorkerID As String = "WorkerID"
Public Const cZero As Integer = 0
Public Shared strLongDate As String() = DateAndTime.Now.ToLongDateString.Split(New Char() { ","c })
Public Shared strModuleMainStatusStripFormID As String = Nothing
End Class
Этот код также напоминает файлы .h. –
Есть еще очень веские причины для использования классов, состоящих из констант. Не все в мире программирования может/будет соответствовать чистым идеалам OO. Для получения дополнительных пояснений см. Некоторые другие ответы. Это не обязательно то, что нужно реорганизовать. –
Этот список хорош, когда вы работаете с большим количеством наборов данных/данных и должны ссылаться на столбцы или таблицы из многих частей приложения. – StingyJack