Текущий архив: 2009.01.11;
Скачать: CL | DM;
Вниз
Верно ли это? Найти похожие ветки
← →
Тын-Дын © (2008-11-11 22:41) [40]А для чего скрывать public-переменные? Из принципа?
Вот я предоставляю (как было выше сказано) поле как контейнер для хранения данных, даю программисту возможность обрабатывать его как методами моего класса, так и доступом напрямую, например к некоторой структуре. Причём надо учитывать, что никаких проверок не нужно.
И что же в этом плохого? Зачем делать дополнительные вызовы, нагружать класс ненужными свойствами и методами?
То, что однажды (через пару десятков лет) вдруг кто-то решит использовать мой класс в качестве родителя?
Да ради бога.
← →
Тын-Дын © (2008-11-11 22:44) [41]
>
> правильно сказал. в Делфи это противоречит основным стандартам.
>
> советую http://www.delphikingdom.com/asp/viewitem.asp?catalogid=802
Э-э... догматизм в действии?
В статье очень много полезного, но вот эта фраза - Данные всегда должны располагаться только в приватной секции
несёт элемент бреда.
← →
Anatoly Podgoretsky © (2008-11-11 23:16) [42]> Тын-Дын (11.11.2008 22:41:40) [40]
От себя самого скрывать.
Какую дополнительную нагрузку ты видишь, для свойства read F write F
И тебе что строчек жалко в файле, так не 80 годы, когда носитель была дискета 180/360 кб, а теперь уже террабайтные винчестеры норма.
Зато ради этой фиктивной экономии идешь на снижения надежности.
← →
Anatoly Podgoretsky © (2008-11-11 23:18) [43]> Тын-Дын (11.11.2008 22:44:41) [41]
Для кого то бред, а для кого то основа надежных программ.
← →
Eraser © (2008-11-11 23:22) [44]> [29] Leonid Troyanovsky © (11.11.08 16:14)
по-сути Application - это синглтон. всякие прокси-объекты только путать будут. если уж делать строго синглтоном, то как в примере из википедии http://ru.wikipedia.org/wiki/Одиночка_(шаблон_проектирования)
← →
Поросенок Винни-Пух © (2008-11-12 13:36) [45]Во-первых, где границы твоих знаний?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
end.
← →
Leonid Troyanovsky © (2008-11-12 13:43) [46]
> Поросенок Винни-Пух © (12.11.08 13:36) [45]
> var
> Form1: TForm1;
Тяжелое наследие попыток борландов
переманить пользователей VB.
← →
GrayFace © (2008-11-18 13:04) [47]var Form1: TForm1 - безусловно правильное решение. Проблем не вызывает, а удобства много.
Приходит на ум 1 плюс создания property для полей - что сразу можно писать FValue, где-то Value и не надо будет потом заменять Value на FValue, если там надо будет добавить set"тер или get"тер какую-то работу со значением.
В статье есть несколько ерундов:
ИМХО, уродливо оформляется if-then-else и case, слишком много разделительных//----
(после каждой функции) и одна явная глупость - совет далать так:MyGlobalVariable: Pointer // = nil;
(вместо того чтобы явно написать = nil без комментария, раз уж нужно показать, что инициализируется нулем)
← →
Плохиш © (2008-11-18 13:20) [48]
> GrayFace © (18.11.08 13:04) [47]
> var Form1: TForm1 - безусловно правильное решение. Проблем
> не вызывает, а удобства много.
Это, да. По вопросам в "Начинающим" видно, сколько удобств...
Страницы: 1 2 вся ветка
Текущий архив: 2009.01.11;
Скачать: CL | DM;
Память: 0.55 MB
Время: 0.015 c