делать автосвойства, если они почти ничем не отличаются от полей?
главное что понял, что можно навесить дополнительные проверки при установке значения и/или сделать доступ только для чтения. на стаке читаю сейчас про плюсы/минусы get set я не понимал зачем вообще их использовать, если можно просто полю поставить модификатор паблик и готово
да верно, но это не основная причина, это следствие. Так как это ООП то по сути всё программирование сводится к написанию взаимодействия объектов между собой. Для того чтобы они корректно между собой взаимодействовали у каждого класса должно быть АПИ (хоть такой термин к объектам применяют долбоёбы вроде меня) - яркий инструмент четкого отделения АПИ объекта от его реализации - интерфейс. Так вот в интерфейсах могут быть указаны только методы, свойства, индексируемые свойства, события. Соответственно и использование объектов должно сводится к этим 4 инструментам. Т.е. свойство явно является частью интерфейса объекта - то через что можно взаимодействовать с объектом, в то время как поле всегда является частью реализации объекта.
Принял, спасибо!
Обсуждают сегодня