Показать сообщение отдельно
Старый 21.11.2011, 19:35
tofflife вне форума Посмотреть профиль Отправить личное сообщение для tofflife Найти все сообщения от tofflife
  № 8  
Ответить с цитированием
tofflife

Регистрация: Jul 2009
Сообщений: 95
согласен с волшем. Паблик переменные - зло, особенно, если проект средних размеров (от 20000 строк и более),

Зло, потому что утрудняют изучение кода.

Вот что значит данная запись?

Код AS3:
var value:Object = anyObject.something;
получения ссылки на функцию? Или же получение некой переменной? А можно ли записать туда что-то?

Ещё печальнее обстоят дела, когда происходит запись в объект:

Код AS3:
anyObject.something = null
это проперти, или паблик-переменная? Стоит ли пологаться на something? ведь, возможно, null - недопустимое значение для неё.

Поэтому я считаю, что лучшее средство - это ВСЕГДА писать геттеры и сеттеры. И не эдобовские геттеры и сеттеры, а джавовские, т.е:

Код AS3:
public function getData():IData{
  return m_data;
}
 
public function setData(data:IData):void{
  assert(data != null, "blabla");
  m_data = data;
  update();
}
поскольку в таком случае, когда

Код AS3:
function myFunction():void{
  var value:IData = data;//непонятно, читается переменная или свойство?
}
вполне ясно, что

Код AS3:
function myFunction():void{
  var value:IData = getData();//явно вызывается функция
}
В довершение ко всему, как вы собираетесь отлавливать изменения в паблик-переменных?


Последний раз редактировалось tofflife; 21.11.2011 в 19:37.