Я не понимаю, как влияют на производительность различные объявления
Стоимость оценки запроса к базе данных, вероятно, составит миллионов или *В 1007 * миллиардах раз разница в стоимости изменяется от константы до поля только для чтения или наоборот.Даже не беспокойтесь о производительности чего-то, что занимает пару наносекунд, когда у вас есть операции с базой данных, у которых задержка измеряется в миллисекундах.
Вам следует беспокоиться не о производительности, а о семантике.Вопрос сводится к «только для чтения, постоянный или нет?»
Получите правильную семантику .Поле «только для чтения» означает «это поле изменяется ровно один раз за каждый раз, когда выполняется эта программа», от нуля до его значения.Поле «const» означает, что «это значение никогда не изменяется, ни сейчас, ни в следующей версии, ни когда-либо, оно постоянно для всего времени ».Обычное поле может изменить значение в любое время.
Поле только для чтения - это что-то вроде номера версии.Он меняется со временем, но не меняется при выполнении программы.Константа - это что-то вроде пи или атомного номера свинца;это фиксировано, вечно, никогда не меняется.Обычное поле хорошо для того, что меняется в ходе программы, например, цены на золото.Какой ваш запрос?Будет ли она постоянной в течение всей программы, постоянной для всего времени или не постоянной вообще?