powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / PL/sql и T/sql
9 сообщений из 134, страница 6 из 6
PL/sql и T/sql
    #33767754
мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerPL/SQL в основном повторяет концепции ADA 25-летней давности. И совершенно не собирается повторять концепции одного опасного языка и одного плохого языка.
YES !
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768030
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
модPL/SQL в основном повторяет концепции ADA 25-летней давности.

Да, да господин мод. Все давно уже украдено до нас. Лет 30 назад. В том числе новадеи типа жабы и си-шарпа.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768090
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer ModelRОракл не лезет в вышестоящий скоуп если нашел имя в текущем,
Причем это правильный (необходимый) подход.Ну, здесь сигнатуру учитываем, там не учитываем - язык не поворачивается назвать это полностью логичным подходом. softwarer Иначе возможен следующий вариант: из-за изменения кода в одном месте стал иначе работать код в другом месте. Ну и что? Программа делает ровно что написано - из двух функций выбирает ту, которая подходит по сигнатуре.

Другое дело, что шансов на такую переделку алгоритма разрешения имен ИМХО нет никаких с учетом имеющегося задела на PL/SQL.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768437
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LongsvanoЕсли есть время, можете накатать кусочек кода чтобы я это понял?
Просто вместо двух блоков сделать три - одна процедура, вторая процедура и вызов. В результате, вставив вторую процедуру (между первой и вызовом) мы ломаем программу там, где предпочитающий подобную "далекую перегрузку" программист рассчитывает, что будет осуществлен вызов правильной процедуры.

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

Повторюсь: эта концепция нравится мне тем, что мы ничего не теряем (сохраняем все те же возможности), но код чуть более защищен от ошибок. Если угодно аналогию - на Java существует неприятная особенность. Представьте себе, что есть классы А и Б, в классе Б определен метод М. Теперь, если другой программист в какой-то момент времени добавит в А метод М, метод Б.М нежданно-негаданно окажется вызываемым вместо А.М в самых неожиданных местах, с понятными последствиями. Для полноты картины, программисты классов А и Б могут не знать друг о друге и не видеть чужих исходников. В С++, если не изменяет память, легко организовать аналогичную проблему. А вот в дельфе - не удастся, при том, что все возможности полиморфизма сохраняются. И я полагаю это весьма удобным и правильным.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768451
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yo.!!ты с кем разговариваешь думаешь лох лабающий на access разрабатывает модель бд в erwin или отслеживает код !?

Интересно, это общий стиль оракловских сисадминов такой? Наблюдение.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768471
Longsvano
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПросто вместо двух блоков сделать три - одна процедура, вторая процедура и вызов. В результате, вставив вторую процедуру (между первой и вызовом) мы ломаем программу там, где предпочитающий подобную "далекую перегрузку" программист рассчитывает, что будет осуществлен вызов правильной процедуры.
Не очень понятно, можно всетаки код?
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768601
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ModelRНу, здесь сигнатуру учитываем, там не учитываем - язык не поворачивается назвать это полностью логичным подходом.
Полагаю, полная логика - вещь, о которой можно рассуждать неограниченно долго. Для меня, если логика не дает новой возможности, но увеличивает вероятность ошибки - либо это не логика, либо нафиг такую логику. Ну и стоит отметить, что не возьмусь сделать глобальной таблицы по всем ЯП, но дельфа, в которой этот вопрос проработан куда лучше, чем в других известных мне компиляторах, поступает так же.

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

ModelRДругое дело, что шансов на такую переделку алгоритма разрешения имен ИМХО нет никаких с учетом имеющегося задела на PL/SQL.
Я бы сказал, в первую очередь нет никаких причин его переделывать.
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33768836
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer А вот в дельфе - не удастся, при том, что все возможности полиморфизма сохраняются. И я полагаю это весьма удобным и правильным.
Удастся, только варнинг будет. А вот в случае если нельзя определить вызов какой из перегружаемых процедур надо сделать - то будет ошибка. И это на мой взгляд логично

Если опять немного вернуться к первоначальной теме - а T-SQLю до таких проблем еще надо дорасти :)
...
Рейтинг: 0 / 0
PL/sql и T/sql
    #33769209
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuper softwarer А вот в дельфе - не удастся, при том, что все возможности полиморфизма сохраняются.
Удастся, только варнинг будет.
Не удастся. Варнинг будет, но смысл его строго противоположен - "я сделал правильно, а если вы вдруг хотите, чтобы сгенерился код под вышеописанный глюк, то укажите явно именно это намерение".
...
Рейтинг: 0 / 0
9 сообщений из 134, страница 6 из 6
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / PL/sql и T/sql
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]