On Mar 5, 6:41 pm, Ded <[EMAIL PROTECTED]> wrote:
> Yurij wrote:
> >  Складская операция - сложный объект,
>     Стоп-стоп-стоп. Тока што объектом была таблица, а операция - это
> как-никак функция...
Тут возникает путаница из-за того, что таблица выполняет несколько
функций -
это и множество записей, и описание их структуры. А класс - это только
структура
объекта. Множество же объектов класса не во всех реализациях ООП
доступно вообще.

> > состоящий из связанных объектов
>     И состоит она (информационная реализация) из кода, а не из объектов.
> А материальная реализация состоит из вытаскивания из транспортного
> средства всякой хрени и ракладывания ея по площадям. Тоиссь, как ни
> крути - действие это, а не объект.

Действие раскладывается на его отображения в разных аспектах
информационной системы и поэтому описывается сложным объектом.

Если действие еще и длительное и сложное - то его можно описать
в терминах жизненного цикла объекта, расписать диаграмму состояний,
методы вызывающие переходы, права пользователей на эти методы
и придти в итоге к настраиваемому документообороту.


> >  Каждый подобъект в своих методах меняет то к чем относится -
> > накладная, как наследник документа, проходит свои этапы(прием,
> > проведение, итд), движение по складу меняет складские запасы, итд.

>     Тока одно без другого не имеет смысла ибо нарушает целостность
> данных. Нет, можно, канешна, пойти на прынцып и размножить и запутать
> код окончательно, но чота не хочется.

На склад могут товары попасть без накладной? Например из торгового
зала
обратно отнесут. Если могут - то уже движение по складу имеет смысл
выносить в отдельный объект.


> >  Объекты накладной состоит из шапки(полей объекта)
> > и строк(вложенного списка объектов-строк). Чорт его знает,
> > как автоматически такие объекты отображать на реляционную
> > модель - OR мапперы, hibernate всякие это как-то делают.
 >     А точно надо?
 При проектировании и реализации проще представлять накладную
как один объект, чем как набор из  нескольких связанных
записей в нескольких таблицах.

> > Создается или
> > открывается объект "Складская операция", GUI для него генерируется
> > автоматически по описанию объекта,
>     Пошол пить иад... Статические у меня гуя, не модно-то как :-( Дурень
> старый, ну нет сделать так, чтоп каждый раз всё само изобреталось,
> проц-то надо же чем-то занимать...

А меня от вида дизайнера форм и мышиной возни начинает бесить. Я
просто
не в состоянии аккуратно расставить 20 полей по форме. Проще
сгенерировать
автоматически - так они гарантированно аккуратное расположение иметь
будут


> >  Описание объекта в свою очередь состоит из описания его
> > хранения в СУБД(адаптер объект-СУБД), нескольких вариантов
> > описания его интерфейса(адаптеры GUI,адаптеры веб-интерфейса)
>     А теперь ап стенку... Сколько умных слоффффф, мне ж до утра не
> осмыслить...
Это я так разобрал по слоям структуру - объекты с бизнес-логикой
отдельно,
гуи отдельно, сохранение объектов отдельно.

>     Не надо, не надо скатываться в косный консервативный примитивизьм!
> Так хорошо начал, а тут - датасет, сиквел :-( Надо этта, извернуться
> как-нить из последних сил, наследование применить. И этот, как его,
> полиморфизьм, вот.

А потому что при любой попытке сделать для объектных баз что-либо
настолько
же удобное, как sql для получения отчетов и списков (фактически -
обработки
множеств объектов), получается либо птичий язык запросов, либо
многословный код
на императивном птичьем языке :)


>     Не, ну почему. Ацкесс и дбф - вот мудрость жизни. Или это таки всё
> же тоже СУБД?

Когда к системе, использующей firebird, заставляют подключить еще
старые
системы, писанные на фокспо и кларионе - то там еще и не такое
придумается.

Пределом шизофрении была хранимая процедура, дергающая udf, которая
обращается
к кларионовским таблицам. Скорость работы гораздо выше чем обращение
этим к
таблицам с рабочих мест, так как сервер с fb и файл-сервер с таблицами
были
рядом и соединены гигабитным каналом. И запросы выполнялись на
сервере, а не
данные мотались туда-сюда от клиента к файл-серверу.

Ответить