еще раз о свойствах
От: Pavel Dvorkin Россия  
Дата: 08.02.08 09:09
Оценка:
Вот такой вопрос у меня возник.

Свойства в C# или аналогичные set/get в Java. Они ведь чаще всего выглядят так

class A {
private int x;
public int X
{
get {return x;}
set { x = value;}
}

ну и в Яве аналогично.

Я не говорю — всегда. Но в большинстве случаев так.

В итоге посмотришь на некий класс — сотни строк. А разберешься — структура (в смысле С) из десятков двух полей плюс эти свойства.

А почему бы не ввести в язык "генерируемое по умолчанию свойство" ? Например, есть поле x — неявно в классе уже есть свойство X с соответсвующим кодом (см. выше).
Устраивает — пользуйтесь. Не устраивает — перекройте, явное описание отменяет неявное.
А с помощью аттрибутов (аннотаций) можно пометить поле как несоздающее свойство. Или весь класс пометить.

В IDE есть средства для автоматической генерации таких свойств. Почему не перенести эту генерацию в компилятор и не создавать эти сотни лишних строк вообще ?
With best regards
Pavel Dvorkin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.