Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 5 6 7 8 9 10 11 12 [13] 14   вперед  Ctrl
 Re: НРМ  [new]
okdoky
Member

Откуда:
Сообщений: 349
mir:
Предлагаю Вам для упрощения диалога задавать вопросы и одновременно давать им ответ, так же как это сделал я в диалоге с U-gene. Мне (как и U-gene) будет намного легче отвечать. В крайнем случае, можно воспользовать вариантом ДА-НЕТ :). Весьма желательно, конечно, чтобы вопросы соответствовали топику!!!
17 апр 06, 15:02    [2571075]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
2 okdoky
В свою очередь, предлагаю вам немного занятся самообразованием в области математики, логики и баз данных. Глядишь, в головушке прояснится, а все ваши вопросы отпадут сами собой, как дурацкие.

Кстати, если вам так интересно задавать вопрос, тут же давая на него свой ответ, вам форум и не нужен. Вы полностью самодостаточны. Осталось лишь освоить партеногенез.

P.S. Как я понял, ни на один к вам вопрос ответа не будет.
17 апр 06, 17:06    [2571853]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
okdoky
Member

Откуда:
Сообщений: 349
mir:
Уважаемый mir. Возможно, вы как и ЧАЛ, уверены в своей непогрешимости. Но, повторюсь специально для Вас. Пожалуйста, внимательнее читайте сообщения авторов форума. В диалоге важно не только давать ответы (и тем более вопросы), но и выслушивать (прочитывать) эти ответы. При этом лучше их понимать в целом и даже в контексте, а не так, как это делаете вы, по частям.

Вы как всегда недопоняли. Мои ответы, это - предположения или мнение, которое вытекает из предыдущих сообщений автора. Или Вы не даете мне право на свое мнение? Прочитайте еще раз:
okdoky
U-gene:
В чем выражаются Ваши объектные расширения к РМД? В отображении состояния объекта через отношение? В чем по вашему заключаются особенности объектной модели?

Не дожидаясь ответа попробую высказать свое мнение. Главная (прежде всего практическая важность) объектной модели заключается в ведении понятия иерархия типов. Отсюда вытекают и другие понятия и идеи (наследование) Как вы можете представить это в своей модели? К сожалению, ваши упрощения (тип - множество значений) слишком напоминают ошибочный подход mirа. Даже его главный кумир (Дэйт) все чаще пытается уточнить тип и определяет его, как минимум, именованное множество значений. Возможно поэтому он (Дэйт) ушел от своего старого любимого термина домен. Мне кажется вы не сможите расширить РМ извнутри средствами самой РМ, ИМХО
Я вовсе не претендую в отличие от Вас на исключительную правоту своих ответов. Даже даю возможность U-gene дать не только правильный ответ, но и опровергнуть мое мнение. Надеюсь, U-gene найдет время для этого?
17 апр 06, 19:09    [2572363]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
2 okdoky
А можно, я не буду давать Вам "правильный" ответ? Ну хотя бы потому, что мои "упрощения" слишком уж напоминают "ошибочный" подход mira/ У меня другого нет. Используемое мною определение типа для меня фактически является аксиомой.
17 апр 06, 22:20    [2572715]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
2 mir

Писал, порой они отвечали на dbdebunk.com, порой через майл. Но мои вопросы не касались НРМ - мне более интересно было выяснить некоторые моменты ТТМ. И могу сказать, что в целом ТТМ выглядит как крепость - в том смысле, что есть подойти близко и ковырять по камешкам, то вряд ли получиться сделать дырку :).

Хотя на один из моих вопросов я так и не получил ответа (за исключением сообщения от Паскаля, о том, что он пересылает этот вопрос Дарвену).

"...initial assumption, which these reasonings and conclusions are built on, does not seem to me full. I mean the question " What concept in the relational world is the counterpart to the concept "object class" in the object world?" and two answers
1. domain = object class
2. relation = object class
ИМХО на этом утверждении, которое проскальзывает в самом начале ТТМ весь ТТМ и построен.Его нельзя назвать неправильным, но...
I'm not sure that these two answers (of course, the first one is true and second one is false) are only possible ones. And what is more - I'm not sure, that the question itself is only one question we should answer to find relationship between objects and relations. Really these assumptions look like just your personal opinion, because there is no any argument for adequacy of only these cases.
...нигде не сказано, что оно является единственно возможным. Другими словами позможны принипиально другие варианты.
How can you argue this assumption?..."

...ИМХО и надеюсь, что один из этих вариантов рассматривается в НРМ."
18 апр 06, 18:22    [2576524]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
CREATE CLASS Article
{
No STRING
CONSTRAIN GLOBALKEY No;
BrandName STRING
CONSTRAIN FOREIGNKEY BrandName ON Brand.Name;
}

DESCRIBE TUPLE ArtQty
{
Art Article;
Quantity INTEGER;
}

CREATE CLASS GoodsMotion
{
No INTEGER
CONSTRAIN GLOBALKEY No;
DateOfAction DATE;
FromWarehouse Warehouse;
ToWarehouse Warehouse;
MovedItems SET OF ArtQty
CONSTRAIN
LOCALKEY Art;
}

Почему

Объектному типу GoodsMotion соответствует R-переменная этого типа
GoodsMotion со схемой (OID:DOID, No:INTEGER, DateOfAction:DATE,
FromWarehouse:Warehouse, ToWarehouse:Warehouse, MovedItems.Article:STRING,
MovedItems.Quantity:INTEGER).

а не

MovedItems.Art: Article,
18 апр 06, 18:47    [2576634]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
Да. спасибо, описался. Исправлю. Конечно схема R-переменной полностью соответствует схеме компонента +Object():TOID
18 апр 06, 19:01    [2576705]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
Из той же оперы
автор
Пример. Определение объектного типа GoodsMotion можно также [ в том числе?] рассматривать как объявление R-переменной компонента типа GoodsMotion.MovedItems со схемой (OID, Article, Quantity). Соответственно, проекция Object(GoodsMotion.MovedItems
WHERE Article = "art1") вернет значение, представляющее собой множество OID объектов, которые описывают движения товаров с артикулом "art1".


cо схемой (OID:DOID, Art:Article, Quantity:INTEGER).?

WHERE Art.No = "art1" ?
18 апр 06, 19:03    [2576717]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
с.5:
Локальный ключ может задаваться для компонентов-множеств. В него входят поля, определяющие уникальность входящих в множество скаляров или кортежей в пределах компонента объекта (при этом в разных объектах эти скаляры или кортежи, конечно же, могут повторяться). В случае отсутствия явно определенного локального ключа подразумевается, что элементы множества различаются по своему полному значению, или, другими словами, что структура ключа совпадает со структурой элементов множества.

c.12:
Как мы сказали, схема R-переменной компонента типа t.a представляет собой схему компонента a, дополненную атрибутом OID. Ключи переменной t.a также однозначно определяются ключами, заданными для этого компонента. Возможны три случая:
• если для компонента a определен глобальный ключ, ключ соответствующей
переменной t.a содержит в точности те же поля, что и этот глобальный ключ (это относится и к внешним ключам);
• если для компонента a определен локальный ключ, ключ соответствующей
переменной t.a содержит поля, входящие в указанный локальный ключ, а также поле
OID;
• если для компонента a ключ не определен, ключ соответствующей переменной t.a содержит единственное поле OID.

??
18 апр 06, 19:14    [2576769]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
okdoky
Member

Откуда:
Сообщений: 349
Постараюсь быть максимально кратким в объяснении своего мнения. Кажется оно Вам не очень-то интересно. Любые идеи и взгляды сторонников объектных, объектно-реляционных, сетевых, иерархических и прочих подходов на этом форуме жестко пресекаются. Только РМД является абсолютно истинной и непререкаемой. Возможно поэтому часто нормальная дискуссия уходит из конструктивного русла… Впрочем, подшутить друг над другом для разрядки я и сам непротив.

Итак, начнем с аксиом. Согласитесь, что любое правильное дело должно начинаться с правильных слов. Хотя согласно той же математической логике, которую часто предлагает изучить mir, истина может порождаться не только истиной, но и ложью. Аксиома, которую я предлагаю, имеет вид Тип есть описываемое (или определяемое) множество значений. В чем преимущество такого определения? Оно позволяет тип непосредственно ассоциировать с описанием множества значений, фактически даже определять как просто описание. В свою очередь это позволяет конструировать сложные типы, состоящие из простых. Даже Вы в своей статье (ссылке) начав с упрощенного определения типа как множества значений незаметно переходите к «спецификациям» типа.

К сожалению у меня нет под рукой Введения в системы БД Дэйта на которого Вы как и mir равняетесь. На одной из страниц он фактически отказывается от своего старого определения отношения и составляющих его доменов только через скалярные значения. Даже признается, что это была его ошибка или неточность. Хотя он тут же поправляется и говорит, что отношение со значениями (объектами) любой сложности всегда можно нормализовать, то есть привести к множеству кортежей состоящих из скалярных значений. Соответственно не думаю, что своей статьей вы его в чем удивите ИМХО. Скорее всего Дэйт понимает прежде всего практическую важность использования в качестве значений не только скаляров, но и сложных объектов. Ваши предложения связанные с объектными и реляционными проекциями (извините за мои формулировки, спешу) больше мне напомнили попытки разбирать и собирать автомобиль. Часто ту или иную деталь автомобиля можно легко найти не разбирая его. Кроме того Вы разобрав автомобиль (или систему) не сможете гарантировать что не потеряете какую-либо связь между деталями. Ну а сколько времени потребуется чтобы его разбирать и собирать?

Простейший пример с таблицей, которую любят и понимают сторонники РМД.
Отдел; Ученики
a; {b1,b2,b3}
Она имеет несколько непривычный ненормализованный вид. Но абсолютно очевидно, что можно сразу перейти от класса ко всем ученикам. Для этого совсем необязательно использовать таблицу
Класс; Ученики
a; b1
a; b2
a; b3
Первая таблица более наглядна и семантически правильна. Мы знаем, что учениками класса а является именно множество из b1,b2,b3 а не b1 или b2 или b3. Кроме того первую таблицу проще реализовать на компьютере, то есть использовать ссылки, которые существенно повышают быстродействие. Достаточен лишь один переход от а, не требуются переборы и «разборы».

В любом случае, Желаю Вам успехов. Жаль, что не успел разобрать более интересные примеры. Спешу...
18 апр 06, 19:41    [2576857]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
с.5:
Локальный ключ может задаваться для компонентов-множеств. В него входят поля, определяющие уникальность входящих в множество скаляров или кортежей в пределах компонента объекта (при этом в разных объектах эти скаляры или кортежи, конечно же, могут повторяться). В случае отсутствия явно определенного локального ключа подразумевается, что элементы множества различаются по своему полному значению, или, другими словами, что структура ключа совпадает со структурой элементов множества.


Здесь речь идет о локальном ключе для компонента-множества. ("Локальный ключ может задаваться для компонентов-множеств.....") То есть если речь идет о компоненте множестве, то подразумевается, что в случае, когда ключ явно не определен , ключевыми считаются все атрибуты и это ключ считается локальным.

Между 5-й и 12 страницей есть еще
НРМ с6
...Значение компонента-кортежа можно рассматривать как значение задаваемого схемой этого кортежа отношения с одним-единственным кортежем. Замечание. Мы считаем, что для отношений, однозначно состоящих из одного-единственного кортежа, ключ задавать не нужно. Подразумевается, что ключи, определяющие уникальность кортежей в пределах отношения и позволяющие организовать доступа к каждому среди этих кортежей, в случае, когда отношение имеет один кортеж, попросту не нужны
В принципе "отношений однозначно состоящих из одного-единственного кортежа" звучит криво звучит.


Тут важно понимать, что то, что написано на с6 - это всего лишь связка между предлагаемыми значимыми типами (скаляры, кортежи, множества) и основным требованием - "состояние объекта = множество отношений".

Идея в том, что если компонент есть множество, то у него всегда есть ключ (хотя бы локальный, и система должна гарантировать , что такой ключ существует, даже когда он явно не определен). а у компонента-скаляра локалный ключ вообще не нужен...ну и нет его.

Страницу 12
НРМ с12
Возможны три случая:
• если для компонента a определен глобальный ключ, ключ соответствующей
переменной t.a содержит в точности те же поля, что и этот глобальный ключ (это относится и к внешним ключам);
• если для компонента a определен локальный ключ, ключ соответствующей
переменной t.a содержит поля, входящие в указанный локальный ключ, а также поле
OID;
• если для компонента a ключ не определен, ключ соответствующей переменной t.a содержит единственное поле OID.
надо читать с учетом этого.

[/quot]надо читать с учетом этого.

Ну или можно это написать по другому - что для компонентов скаляров (или кортжей) ключ соответствующей R-переменной t.a содержит единственное поле OID.

Спасибо - подумаю как переписать, что бы вопросов не возникало.
18 апр 06, 19:46    [2576874]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
okdoky
Постараюсь быть максимально кратким в объяснении своего мнения. Кажется оно Вам не очень-то интересно. Любые идеи и взгляды сторонников объектных, объектно-реляционных, сетевых, иерархических и прочих подходов на этом форуме жестко пресекаются.
Это неправда. Во-первых, никто из «сторонников» РМД не может «жестко пресечь» никого, т.к. все здесь равноправные участники, и все могут писать все что угодно в рамках приличий. А вот жесткая критика мнений друг друга часто встречается, но она гораздо чаще встречается внутри реляционного сообщества. Что касается «идей и взглядов сторонников объектных, объектно-реляционных, сетевых, иерархических и прочих подходов», то не надо всех людей валить в одну кучу. Жесткой критике подвергаются только необоснованные ничем утверждения отдельных персон, проистекающие от простого недостатка знаний и маниакального нежелания таковые знания приобрести (к сожалению, среди людей, использующих РСУБД, таковых персон тоже огромное количество). Но особое внимание, разумеется, привлекают самозваные «критики» реляционной модели. Они мнят себя мега-теоретиками и ниспровергателями «мифов», но обсуждение быстро выявляет, что они просто-напросто плохо знают то, что берутся критиковать. Среди особо одиозных засветились некто Чернышов Андрей Леонидович (aka ЧАЛ и множество подставных ников), некто Шуклин и некто okdoky.
okdoky
Только РМД является абсолютно истинной и непререкаемой.
Такие как вы часто любят называть сторонников РМД религиозными фанатиками. На самом деле, как известно, именно РМД прямо основана на математике и логике и имеет мощную теорию, подкрепленную практикой десятилетий (даже в таком несколько извращенном виде, какой дал SQL). А противники РМД в плане теории выглядят… бледно или никак, а в плане практики аналогично. Вот и выходит, что за «нами» — знания, наука и практика, а за «вами» — только вера в свою правоту. То есть пока что религиозные фанатики — это как раз «вы».
okdoky
Итак, начнем с аксиом. Согласитесь, что любое правильное дело должно начинаться с правильных слов. Хотя согласно той же математической логике, которую часто предлагает изучить mir, истина может порождаться не только истиной, но и ложью.
Аксиома, которую я предлагаю, имеет вид Тип есть описываемое (или определяемое) множество значений.
Интересно, что здесь вашего? Вам уже миллион раз процитировали, что тип — это как раз и есть множество значений. (Иногда в определение типа включают и операции над значениями типа, но это слабо обосновано, т.к. чтобы определить операцию, надо уже иметь тип операндов и тип значения. То есть операции ассоциированы с типом, но не определяют тип.)
okdoky
В чем преимущество такого определения?
Перед чем?
okdoky
Оно позволяет тип непосредственно ассоциировать с описанием множества значений, фактически даже определять как просто описание. В свою очередь это позволяет конструировать сложные типы, состоящие из простых. Даже Вы в своей статье (ссылке) начав с упрощенного определения типа как множества значений незаметно переходите к «спецификациям» типа.
Если бы вы не прогуляли на первом курсе лекцию по теории множеств, или хоть раз открыли книжку по математике, вы бы узнали, что множества по аксиоматичному определению могут задаваться либо прямым перечислением элементов, либо правилом (законом, спецификацией), в том числе на основе другого множества. Поэтому в определении типа как множества уже заложено «автоматом», что тип можно задать как перечислением, так и правилом (спецификацией). А вы тут надуваете щеки.
okdoky
К сожалению у меня нет под рукой Введения в системы БД Дэйта на которого Вы как и mir равняетесь. На одной из страниц он фактически отказывается от своего старого определения отношения и составляющих его доменов только через скалярные значения. Даже признается, что это была его ошибка или неточность.
Да он признает свою ошибку, но ошибка и была вызвана «отходом» от РМД и математики. Поскольку отношение (в отличие от переменной отношения) является значением соответствующего типа (типа отношения, задаваемого схемой отношения), то на этих значениях можно строить другие отношения. То есть РМД стала еще «чище», еще ближе к математике и при этом еще мощнее.
И вообще, теория сложных типов и операций уже неплохо проработана. В его ВвСБД 8 изд. этому отведена целая глава, более того, он и Хью Дарвен написали целую книгу «Databases, Types and the Relational Model», вышло уже 3 издание (к сожалению в России не издавали). Это не говоря о 3 Манифесте.
Евгений Григорьев ведет обсуждение этого вопроса на высоком уровне, зная об имеющихся результатах.
Короче, люди такую мощную и подробную теорию развивают многие годы, а вы, путаясь в основных простейших понятиях, беретесь давать свои «определения» и предлагать свои «аксиомы» и свою «критику». Вам самому не видно, что это по меньшей мере смехотворно?
okdoky
Ваши предложения связанные с объектными и реляционными проекциями (извините за мои формулировки, спешу) больше мне напомнили попытки разбирать и собирать автомобиль. Часто ту или иную деталь автомобиля можно легко найти не разбирая его. Кроме того Вы разобрав автомобиль (или систему) не сможете гарантировать что не потеряете какую-либо связь между деталями. Ну а сколько времени потребуется чтобы его разбирать и собирать?
Об автомобилях говорят на других форумах, автомобильных. Вам туда. Если же собрались обсуждать теорию БД, то попробуйте говорить на языке теории БД, вместо того, чтобы изливать нерелевантный поток сознания.
okdoky
Простейший пример с таблицей, которую любят и понимают сторонники РМД.
Отдел; Ученики
a; {b1,b2,b3}
Она имеет несколько непривычный ненормализованный вид.
Комментарий: если атрибут Ученики имеет соответствующий тип, скажем, тип отношения с одним атрибутом, то ничего ненормализованного здесь нет.
okdoky
Но абсолютно очевидно, что можно сразу перейти от класса ко всем ученикам. Для этого совсем необязательно использовать таблицу
Класс; Ученики
a; b1
a; b2
a; b3
Ну и что? Оба решения имеют свои плюсы и минусы. Уверен, что вы о них не подозреваете. Хотя бы что вы скажете об обеспечении ссылочной целостности в первом решении (с вложенным множеством)?
okdoky
Первая таблица более наглядна и семантически правильна.
Дайте определения понятиям «наглядность таблицы» и «степень семантической правильности таблицы». Иначе это не более чем наукообразная белиберда.
okdoky
Мы знаем, что учениками класса а является именно множество из b1,b2,b3 а не b1 или b2 или b3.
Это мы знаем из любого варианта решения.
okdoky
Кроме того первую таблицу проще реализовать на компьютере, то есть использовать ссылки, которые существенно повышают быстродействие. Достаточен лишь один переход от а, не требуются переборы и «разборы».
Ой-ой-ой! Да вы что-то вообще ничего не знаете о том, как работают современные РСУБД.
okdoky
Жаль, что не успел разобрать более интересные примеры. Спешу...
Какое счастье, что не успел.
19 апр 06, 09:21    [2577967]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
U-gene

Ну или можно это написать по другому - что для компонентов скаляров (или кортжей) ключ соответствующей R-переменной t.a содержит единственное поле OID.
В то время как ключ компонента-множества должен иметь по крайней мере два поля. Причем некоторые из них - тоже OID. Понятно.

Вопрос про разные объектные типы, использующие одно отношение. В реляционном отношении OIDы, являющиеся членами ключа, абсолютно симметричны. Например

CREATE CLASS Warehouse
{
Address STRING;
ResourceItems SET OF ArtQty
CONSTRAIN
LOCALKEY Art;
}

задает

Warehouse.ResourceItems(Warehouse:Warehouse:DOID, Art:Article:DOID -> Quantity:INTEGER)

где Warehouse и Art равноправно входят в ключ. А значит, то же отношнение (с точностью до имен ) задается и компонентом StockItems типа ArticleStock

CREATE CLASS ArticleStock
{
Art Article;
StockItems SET OF WhouseQty -- аналогично ArtQty
CONSTRAIN
LOCALKEY Whouse;
}

Логично предоставить возможность маппирования таких компонент на одно отношение.
19 апр 06, 11:30    [2578701]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
okdoky
Member

Откуда:
Сообщений: 349
mir
Если бы вы не прогуляли на первом курсе лекцию по теории множеств, или хоть раз открыли книжку по математике, вы бы узнали, что множества по аксиоматичному определению могут задаваться либо прямым перечислением элементов, либо правилом (законом, спецификацией), в том числе на основе другого множества. Поэтому в определении типа как множества уже заложено «автоматом», что тип можно задать как перечислением, так и правилом (спецификацией). А вы тут надуваете щеки.
Вы хотите чтобы наш диалог был конструктивным? Если да, давайте меньше отправлять друг друга в библиотеку, выяснять кто больше надувает щеки, кто и на сколько порядков умнее. U-gene обиделся только за то, что я слегка скептически отнесся к его подходу, а Вы по сути переходите на личность. Нам нужно давно уже понять, что сторонники реляционной модели не понимают все тонкости объектного подхода, и наоборот, сторонники ОМД не понимают терминологию и тонкости РМД.

Для этого я ранее и предложил не только задавать вопросы, но и самому отвечать. А главное аргументировать, объяснять, свое мнение. Вы даже не пытались внимательнее отнестись к моему сравнению с автомобилем. А ведь именно в нем раскрывается отличие О и Р подходов.
19 апр 06, 14:08    [2579931]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
okdoky
Вы хотите чтобы наш диалог был конструктивным? Если да, давайте меньше отправлять друг друга в библиотеку, выяснять кто больше надувает щеки, кто и на сколько порядков умнее.
Если бы речь шла не об элементарных вещах, изучаемых в любом вузе, то вас бы никто не укорял. А если хотите, чтобы диалог был конструктивным, то 1) приводите строгие аргументы в пользу своих высказываний, цитаты, ссылки и 2) отвечайте на задаваемые вопросы. У вас по обоим пунктам пусто. Так что ж вы обижаетесь?
okdoky
Нам нужно давно уже понять, что сторонники реляционной модели не понимают все тонкости объектного подхода, и наоборот, сторонники ОМД не понимают терминологию и тонкости РМД.
Какие-такие тонкости объектного подхода вам понятны, а, скажем, мне -- нет? Если я по OOA&D лекции читаю и практикую его десять лет на практике. А про терминологию и тонкости РМД -- не знаете, сприсите или прочитайте. Претензий не будет. Но беретесь критиковать -- обязаны знать предмет критики.
okdoky
А главное аргументировать, объяснять, свое мнение.
Золотые слова. Когда ж вы начнете?
okdoky
Вы даже не пытались внимательнее отнестись к моему сравнению с автомобилем. А ведь именно в нем раскрывается отличие О и Р подходов.
И желания разбирать нет. Ваv что-то "показалось", ну и что? Изложите без ваших странных ассоциаций, техническим языкам, тогда и поговорим.
19 апр 06, 15:18    [2580452]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
okdoky
U-gene обиделся только за то, что я слегка скептически отнесся к его подходу, а Вы по сути переходите на личность
:)Ой, да бросьте Вы, ей богу. Во-первых видно, что Вы про этот подход в общем то совсем некопенгаген (иначе не стали бы спрашивать про "объектные расширения РМД"), поэтому как Вы к нему относитесь - скептичски или оптимистички - оно на этом этапе как то по барабану.

Еще раз. Прошел вопрос
okdoky
В чем выражаются Ваши объектные расширения к РМД? В отображении состояния объекта через отношение? В чем по вашему заключаются особенности объектной модели?

Не дожидаясь ответа попробую высказать свое мнение. Главная (прежде всего практическая важность) объектной модели заключается в ведении понятия иерархия типов. Отсюда вытекают и другие понятия и идеи (наследование) Как вы можете представить это в своей модели? К сожалению, ваши упрощения (тип - множество значений) слишком напоминают ошибочный подход mirа. Даже его главный кумир (Дэйт) все чаще пытается уточнить тип и определяет его, как минимум, именованное множество значений. Возможно поэтому он (Дэйт) ушел от своего старого любимого термина домен. Мне кажется вы не сможите расширить РМ извнутри средствами самой РМ, ИМХО
Что касается первой части, я сразу же посоветовал прочитать предложенные спекуляции до конца (а не до третьего абзаца). На вторую часть я внимание не обращал, посколько надеялся, что по прочтению станет явно, что НРМ немного совсем не о том. Но В Вы еще раз пытаетесь получить "правильный" ответ. Ответ на что? На первую часть? - читайте по ссылке. На вторую? - это Ваше личное ошибочное мнение (в том числе и непонятные мне "расширения" РМД) не относящееся к НРМ никаким боком.

okdoky
Тип есть описываемое (или определяемое) множество значений
Ага... тогда линия - это нарисованное(или изображаемое) множество точек.

okdoky
Нам нужно давно уже понять, что сторонники реляционной модели не понимают все тонкости объектного подхода, и наоборот, сторонники ОМД не понимают терминологию и тонкости РМД.
Вы, пожалуста, про себя понимайте, чей Вы сторонник и, следовательно, какие тонкости Вы понимаете меньше :). ИМХО основная тонкость в том, что никаких тонкостей нет и надо попытаться освободиться от многолетней шелухи и выдумок (типа нарисованных точек).

okdoky
Ваши предложения связанные с объектными и реляционными проекциями (извините за мои формулировки, спешу) больше мне напомнили попытки разбирать и собирать автомобиль. Часто ту или иную деталь автомобиля можно легко найти не разбирая его.
Типичный подход людей, забывающих что они имеют дело с компьютером, с такой штукой, где все эти ваши машины разобраны на.... ну тогда уж на атомы :) Это множество атомов можно логически представить и как множество разных машин (объектная система), и как множества сходных деталей (реляционная система). Однако можно представлять это одно и то же множесто атомов одновременно и так и этак - речь идет именно об этом.
19 апр 06, 16:32    [2580974]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
okdoky
Member

Откуда:
Сообщений: 349
U-gene
okdoky
Тип есть описываемое (или определяемое) множество значений
Ага... тогда линия - это нарисованное(или изображаемое) множество точек.
Ну наконец-то, лед тронулся, хоть и со смехом. И не просто нарисованное (или изображенное), а нарисованное в определенной последовательности. Мои усилия не пропали даром :). 1.Согласитесь, такое определение линии больше соответствует объектному представлению, где класс, это описание множества. Причем сам класс может быть значением другого класса. 2.Согласитесь, какой бы мощный компьютер не был, ему быстрее и легче оперировать этим описанием (или даже ссылкой), чем множеством значений, многие из которых в данный момент могут даже не существовать в памяти.
19 апр 06, 19:08    [2581670]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
###
Guest
okdoky
Ну наконец-то, лед тронулся, хоть и со смехом .... Мои усилия не пропали даром :).

Юноша, а Вы точно не ЧАЛ (mirumir, antimir, токарь, пекарь, Ораклоидальный мампсист, М программист, ... всех не упомнить)?!!
Уж больно КАЧЕСТВО ДЕМАГИГИИ схоже...
okdoky
1.Согласитесь, такое определение линии больше соответствует объектному представлению, где класс, это описание множества. Причем сам класс может быть значением другого класса.

Может быть че-нибудь почитаем по теории ООП, чтоб не путать тип со значением?
19 апр 06, 20:29    [2581812]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
$$$
Guest
### как в воду глядел, но маненько промахнулся. Только что получил неопровержимые данные, что mir это ЧАЛ. Про этого юношу okdoky пока точно не известно, завтра постараюсь выяснить.
20 апр 06, 00:07    [2582205]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
$$$
### как в воду глядел, но маненько промахнулся. Только что получил неопровержимые данные, что mir это ЧАЛ. Про этого юношу okdoky пока точно не известно, завтра постараюсь выяснить.
Если я -- это ЧАЛ, то это тяжелейший случай шизофрении, известный в истории: две личности в одном теле постоянно и яростно спорят.
20 апр 06, 07:12    [2582454]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
2 ###
Okdoky не ЧАЛ, уровнем пожиже, да и агитирую они за разное (ЧАЛ за MUMPS, Okdoky за ZigZag).

Что-то мы хорошую тему своми разборками за@#али. Надо здесь завязывать с оффтопом
20 апр 06, 07:15    [2582456]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
okdoky
Member

Откуда:
Сообщений: 349
U-gene
(в том числе и непонятные мне "расширения" РМД) не относящееся к НРМ никаким боком.
Собственно этого ответа спрятанного в прочую «шелуху» достаточно было, чтобы снять все мои вопросы и скептицизм. Речь не идет об объектных расширениях. Вас также не интересует то как компьютер будет работать с объектами.

Осталось только угомонить чертиков из разных миров и вспомнить точные определение класса согласно ООП
Под классом подразумевается некая сущность, которая задает некоторое общее поведение для объектов. Таким образом любой объект может принадлежать или не принадлежать определенному классу, то есть обладать или не обладать поведением, который данный класс подразумевает. А ведь и действительно чушь ...
20 апр 06, 19:25    [2586368]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
okdoky
Осталось только угомонить чертиков из разных миров и вспомнить точные определение класса согласно ООП
Под классом подразумевается некая сущность, которая задает некоторое общее поведение для объектов. Таким образом любой объект может принадлежать или не принадлежать определенному классу, то есть обладать или не обладать поведением, который данный класс подразумевает. А ведь и действительно чушь ...
Это определение так же далеко от точного, как Арктика от Антарктики. Данное определение вообще хуже многих, поскольку, скажем, (1) говорит только о поведении, не упоминая состояние и (2) опирается на понятие "сущность", которое строго не определено.

Зря вы думаете, что все так просто. Вообще, проблема с точным универсальным определением класса в ООП, согласующимся с унаследованными понятиями из программирования и математики, до сих пор не решена. Для примера, на той же русской википедии в другом топике дается такое определение:
http://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование
С появлением концепции ООП появилась новая структура данных - Класс. Это по сути дела тип данных, внешне похожий на структуру (в языке Си) или запись (в Pascal-е), в котором кроме данных (свойства) также содержались функции их обработки (методы).

Английская википедия дает еще варианты:
http://en.wikipedia.org/wiki/Class_(computer_science)
In object-oriented programming, classes are used to group related variables and functions. A class describes a collection of encapsulated instance variables and methods (functions), possibly with implementation of those types together with a constructor function that can be used to create objects of the class.

Определения, даваемые "тремя друзьями", довольно непоследовательны и запутаны. Вот пара цитат из их книги Grady Booch, James Rumbaugh, and Ivar Jacobson, THE UNIFIED MODELING LANGUAGE USER GUIDE, Addison-Wesley, 1999:

"The classes, types, interfaces, and data types defined in the UML model are, within OCL, considered to be classes of which instances can be made"
И
"Each class, interface, or type in a UML model is automatically a type"

Корочем, они то считают типы классами, то классы типами, то разделяют их. Бардак полнейший.

Если вам хочется серьезно вникнуть в эти проблемы, почитайте, скажем, обстоятельную статью Дейта в 2 частях "BASIC CONCEPTS IN UML: A REQUEST FOR CLARIFICATION", которум можно найти в архиве статей за 2000 г: http://www.dbdebunk.com/f/2001.zip
21 апр 06, 08:38    [2587281]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
2 okdoky,mir
Коллеги, плз, может создать спец топик? К чему все валить в один?

По теме ИМХО НРМ дает ответ как некоторый, достаточно широкий чтобы быть практически полезным, класс иерархических ( плюс ссылки ) структур может иметь реляционное представление а значит использовать реляционные операции и прочие достижения этой формализации с одной стороны и сохранять компактность манипулирования объектами с другой стороны.

Странно требовать от описания некоей МД определения что есть класс вообще.
21 апр 06, 10:21    [2587639]     Ответить | Цитировать Сообщить модератору
 Re: НРМ  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
ModelR
U-gene
Ну или можно это написать по другому - что для компонентов скаляров (или кортжей) ключ соответствующей R-переменной t.a содержит единственное поле OID.
В то время как ключ компонента-множества должен иметь по крайней мере два поля. Причем некоторые из них - тоже OID. Понятно.
...на самом деле здесь может быть нагляднее идти в обратную сторону. В Рпроекции существуют R-переменные отношений с обязательным атрибутом Object():DOID. С учетом этого возможны три варианта ключей 1) Единственной ключевой атрибут = атрибут Object() 2) Ключ чочотоит из многих атрибутов и включает поле Object() 3)Ключ не включает поле Object(). соответсвенн 1) один кортеж на объект 2) множество уникальных внутри объекта кортежей на объект 3) все кортежи всех объектов уникальны.

ModelR
...
Логично предоставить возможность маппирования таких компонент на одно отношение.
Было такое Получается что схема К-переменной = (схема компонента + Object() + S) где S - идентификатор, представляющий смысл данного кортежа в контексте объекта. (Так например написано в статье "Модель "Объект-Качество"").В свое время бродили у меня идеи, что де S(смысловой идентификатор) можно рассматривать как идентфикатор некого специального объекта, описываещего некую семанатику, а у таких объектов могут быть свои связи, а у типа (или типов) этих объектов могут быть связи по типу наследования, а еще все свяжется с объектными типами... в общем может выйти некая паралельная смысловая сеть, которая возможно позволит какие-то такие манипуляции с данными, про которые я даже сказать ничего не могу, потому как дальше сказанного я в общем-то и не думал.

В НРМ это просто не нужно. Тут важно понимать, что целью НРМ не явлется описание того, как можно маппировать структуры. Не очень люблю это слово потому, что оно часто нагружается идеей о том, что однозначное отображение одной структуры в другую нужно для последующего аутоматичного обмена данными(значениями) между ОО-программой и РБД. Оно конечно можно, но идея в том, что такое однозначное отображени позволяет вообще отказаться от OO программы (как отдельного набора сложных переменных), ну и, соответсвенно, от обмена данными. А для этого выделение S в отдельный атрибут не нужно, поскольку смысл определяется именами R-переменных или их атрибутов, которые так или иначе связаны с именами компонентов объектных типов. А вообще - может быть это и интересно.
22 апр 06, 19:24    [2592941]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 5 6 7 8 9 10 11 12 [13] 14   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить