Показать сообщение отдельно
  #1  
Старый 30.04.2014, 17:32
Аватар для madMonia
madMonia madMonia вне форума
Новичок
 
Регистрация: 25.02.2014
Сообщения: 50
Версия Delphi: Delphi XE3
Репутация: 2545
По умолчанию Delphi code convensions: public vs published

Продолжаем обсуждение стиля обджект паскаль кода .
При изучении стандартотв embarcadero, и в стандарте JEDI http://wiki.delphi-jedi.org/index.php?title=Style_Guide#class_.2F_interface_Na ming
у меня возникли следующие вопросы:

1) В документах сказано, что любое поле класса должно быть в секции private. С одной стороны это, конечно, правильно, с другой, сам я частенько засовывал поля в protected. Как считаете вы?
2) В статьях используются следующий пример определения класса
Код:
  TMyClass = class(TObject)
  private
    FMyData: Integer;
    function GetData: Integer;
    procedure SetData(Value: Integer);
  public
  published
    property MyData: Integer read GetData write SetData;
  end;
Получается, что свойства, по-умолчанию, должны быть в published. Сам я пользовался published только при разработке компонентов, и в published переводил только свойства, и только те свойства, который имели смысл вне рантайма. С другой стороны, все published свойства\методы попадают в RTTI и могут быть использованы не только в рамках Object Inspector'а. Сам я RTTI не пользовался, в связи с этим вопрос: какие плюсы\минусы это дает. Другими словами, какими правилами следует руководствоваться?
__________________
Невозможно заточить карандаш тупым топором. Столь же тщетно пытаться сделать это десятком тупых топоров
Ответить с цитированием