Обекти и класове
Привет,
необходимо ли е да използваме property-та в конструктора на даден клас и ако да защо(защо е грешно ако не ги ползваме)?
Поне аз до сега си създавам полете от тип public и след това си ги инициализирам в конструктора с this.
Ясно е , че property-то ни предпазва от невалидно подадени стойности,примерно char вместо int..не съм го пробвал но и с this. ако към конструктора се подаде невалиден параметър(char вместо int ) би трябвало да хвърли exception...
Ако говорим за валидация за тип на подаваната стойност ще е излишно нали, тъй като при грешно подадена стойност към конструктора няма да ни позволи да изпълним кода?
Говоря за валидация в смисъла на if(value < 0) или if(string.IsNullOrEmpry(value)), сеш се :) А това с валидацията по тип... пропъртито има конкретен тип (приерно int), и за това няма как да му вкараш като value друг тип и вътре да го питаш "ма ти int ли си". Същото е, като с методите, ако даден метод връща int, няма как да напишеш return "abc", щото "abc" не е int. Или пък ако приема като параметър string, няма да ти позволи да му подадеш променлива от друг тип. Тия неща най-добре си ги тествай едно по едно, за да видиш точно кво се случва в дадена ситуация. Успех.
Мерси, ще ги прецъкам за да си ги доизясня :)