03.11.2019, 14:25
|
#165
|
Разработчик
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений (для 412 пользователей)
|
Ответ: Проблемы разработки от EvilOkta
Сообщение от EvilOkta
Спасибо ) энтерпрайз дорого (я ж не зарабатываю программированием), идея с partial интересная. Параллельно в Excel заношу публичные методы классов и их сигнатуры, на всякий случай.
Продолжаю закидывать страшными вопросами. Я наконец-то разобрался со свойствами (pax за это отдельное спасибо), но терзают сомнения, можно ли их применять вот так:
protected static string[] Mounthes = new[] { "января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря" }; protected string _mounth; protected byte Mounth // храним номер месяца, выдаем его string из массива по номеру элемента { get { byte count = 1; while (count <= Mounthes.Length) { if (Mounthes[count-1] == _mounth) break; count++; } return count; } set { _mounth = Mounthes[value-1]; } }
Условно закидываем номер месяца, а получаем его string название. Или это плохая практика?
|
Конкретно к этому примеру - выглядит не очень. В первую очередь за счет цикла с сравнением строк внутри гетера. Добавь одну переменную и закэшируй туда индекс.
protected static readonly string[] Monthes = { "января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря" }; protected byte monthIndex; protected string monthName; protected byte MonthIndex { get => monthIndex; set { if (value <= 0 || value > 12) return; monthIndex = (byte) (value - 1); monthName = Monthes[monthIndex]; } } protected string MonthName => monthName;
|
(Offline)
|
|