Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];

Вниз

mdi   Найти похожие ветки 

 
zdm ©   (2006-10-24 10:14) [0]

где-то прочитал, что mdi-приложения-это типа(18 век, ручная работа). А ведь единый интерфейс-это всегда хорошо(хоть и требует доп.контроля со стороны прилоги). Как вы думаете?


 
zdm ©   (2006-10-24 10:16) [1]

Это я даже не просто так спросил, думаю, стоит ли сейчас, заранее , продумывать прилогу как mds, или не стоит(в слове стоит, ударение на первый слог:))))


 
Ketmar ©   (2006-10-24 10:19) [2]

есть подозрение, что всё зависит от программы. с одной стороны можно глянуть на Delphi. а с другой -- на Оперу.


 
Sergey13 ©   (2006-10-24 10:19) [3]

> [0] zdm ©   (24.10.06 10:14)

На сарае вот тоже написано что-то, а на самом деле там дрова.

В огороде будина, а два сапога пара. (с) народная мудрость


 
zdm ©   (2006-10-24 10:26) [4]


> Sergey13

мне на sql.ru ооооооооочень долго втирали, что код, типа
begin
 ....  
 sql.add("что-то="+quotedstr(тото));
 sql.add("что-то="+quotedstr(тото));
 ....
end;
это лажа, передавай только параметрами,,,, согласен параметры вещь сильная(напрямую к движку БД обращается),, но когда параметры неизвестны и к запросу строки добавляются динамически(особенно касается (where ... or ... or...)) то наступает засада с параметрами. Надеюсь вы поняли о чем я. НО НА ВОПРОС ВЫ МНЕ В ПРИНЦИПЕ ОТВЕТИЛИ-НИ СЛУШАЙ НИ КОГО, ОДНОЗНАЗЧНЫХ СИТУАЦИЙ НЕТ!!!!


 
MsGuns ©   (2006-10-24 10:38) [5]

>zdm ©   (24.10.06 10:26) [4]

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

В некоторых случаях использование параметрических запросов просто неудобно, т.к. порождает лишний код. Как пример, составление в запросе перечня извлекаемых полей или условий в цикле. Другой пример - "многоэтажные" запросы, построенные по технологии Select from (запрос)


 
Sergey13 ©   (2006-10-24 10:39) [6]

> [4] zdm ©   (24.10.06 10:26)

Смешались в кучу кони, люди.
(с) Лермонтов (вроде)

Где-то прочитал, что mdi лажа, где-то сказали, параметры рулез.
А бензин вот хорошо горит, но для дизеля бесполезен. Ну и что?


 
wal ©   (2006-10-24 10:40) [7]


> 4] zdm ©   (24.10.06 10:26)
> sql.add("что-то="+quotedstr(тото));
А тебе там не говорили про пароль "123 or 1=1"?


 
zdm ©   (2006-10-24 12:20) [8]


> MsGuns

да знаю, особенно удобно в ХП это юзать, но не всегда. Вообще, правда от темы сам отошёл.


 
Плохиш ©   (2006-10-24 12:24) [9]


> wal ©   (24.10.06 10:40) [7]
>
> > 4] zdm ©   (24.10.06 10:26)
> > sql.add("что-то="+quotedstr(тото));
> А тебе там не говорили про пароль "123 or 1=1"?

И что? QuotedStr с успехом решает этот глюк, найденный в PHP, кстати.


 
Anatoly Podgoretsky ©   (2006-10-24 13:30) [10]


> это лажа, передавай только параметрами,,,, согласен параметры
> вещь сильная(напрямую к движку БД обращается),, но когда
> параметры неизвестны и к запросу строки добавляются динамически(особенно
> касается (where ... or ... or...)) то наступает засада с
> параметрами.

Тебя правильно предупреждали, а ты так и не прислушался и несешь какую то лажа, про якобы неизвестные параметры, засада она в голове.


 
Anatoly Podgoretsky ©   (2006-10-24 13:32) [11]

18 век, ручная работа - именно так, этот интерфейс был придуман для Win 3.1 и Микрософт настоятельно предупреждает - не используйте MDI для построение новых программ, но ты как всегда не согласный, лишь бы по своему, ну так и делай и не удивляйся ничему.


 
zdm ©   (2006-10-24 13:34) [12]


> Anatoly Podgoretsky

Знаешь, только без обид, не охота ща расписывать все возможные ситуации!!! я не один пишу, в своей конторе, и реально сталкивались с проблемами, когда параметрами не всё возможно передать и приходится юзать добавление к строке запроса переменных. Всё закрыли тему


 
Danilka ©   (2006-10-24 13:35) [13]

[9] Плохиш ©   (24.10.06 12:24)
> QuotedStr с успехом решает этот глюк

хм. а как он его решит-то? параметры, таки, да, решают. и причем здесь php?
хинт - пароль содержит в конце и в начале кавычки, соответственно QuotedStr добавляет еще кавычки и в итоге получаем примерно такое условие:
where password = ""123 or 1=1""
которое всегде вернет нам истину.

(правда, сама идея хранить пароли в базе мне уже ненравицца...)


 
zdm ©   (2006-10-24 13:36) [14]


> Anatoly Podgoretsky

я [11] не прочёл, я правильно понял... MDI-18 век?-обоснуй реальней или закрываем тему?


 
zdm ©   (2006-10-24 13:39) [15]


> > Anatoly Podgoretsky

Я понять просто не могу,  а что плохого????????? иметь однообразный интерфейс ко всему приложению????


 
Плохиш ©   (2006-10-24 13:42) [16]


> Danilka ©   (24.10.06 13:35) [13]


> пароль содержит в конце и в начале кавычки, соответственно
> QuotedStr добавляет еще кавычки и в итоге

Вообще-то в справке написано, что QuotedStr обрамляет строку в кавычки и удваивает существующие в строке кавычки. Кстати не кавычки, а апострофы :-) Соответственно, прибедённое условие будет выглядеть:
where password = """123 or 1=1"""


 
Плохиш ©   (2006-10-24 13:43) [17]


> прибедённое

Надо же так промахнуться :-)


 
Danilka ©   (2006-10-24 13:44) [18]

[11] Anatoly Podgoretsky ©   (24.10.06 13:32)
> Микрософт настоятельно предупреждает - не используйте MDI
> для построение новых программ

Однако-же сам Микрософт до сих пор пользуется mdi, например, в Экселе2003.
:)


 
Danilka ©   (2006-10-24 13:46) [19]

[16] Плохиш ©   (24.10.06 13:42)
Понятно, спасибо, нам, чукчам, некогда справки по QuotedStr читать :))


 
zdm ©   (2006-10-24 13:49) [20]

а если ещё 10000000000000 пользователей добавилось
ну можно конечно ХП написать , и к ней
add.. where что-то=:первый
а потом
ParamByNAme:=
и 10000000000000 раз
а проще динамически добавлять sql.add(""=......)


 
Anatoly Podgoretsky ©   (2006-10-24 14:25) [21]


> я [11] не прочёл, я правильно понял... MDI-18 век?-обоснуй
> реальней или закрываем тему?

А я ведь и могу прислушаться. Ты поосторожнее.


 
Anatoly Podgoretsky ©   (2006-10-24 14:26) [22]


> когда параметрами не всё возможно передать и приходится
> юзать добавление к строке запроса переменных

Глупость, я таких ситуаций не знаю, сам же добавляешь и тут же забываешь, что то не то с памятью.


 
Anatoly Podgoretsky ©   (2006-10-24 14:27) [23]


> MDI-18 век?-обоснуй реальней или закрываем тему?

Тебе недостаточно обоснования от Микрософт, а я лучше их сказать не могу.


 
Anatoly Podgoretsky ©   (2006-10-24 14:31) [24]

Danilka ©   (24.10.06 13:44) [18]
[11] Anatoly Podgoretsky ©   (24.10.06 13:32)
> Микрософт настоятельно предупреждает - не используйте MDI
> для построение новых программ

Однако-же сам Микрософт до сих пор пользуется mdi, например, в Экселе2003.
:)

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

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

Но тут вот какое дело, если использование MDI обоснованно, то Микрософт не запрещает, а рекомендует, а это две больших разницы.


 
zdm ©   (2006-10-24 14:33) [25]


> Anatoly Podgoretsky

Спасибо, призадумаюсь.


 
Anatoly Podgoretsky ©   (2006-10-24 14:39) [26]

Если насчет параметров, то чего думать трясти надо.
Ты устроил бардак из своей ветки, поэтому приходится гадать, про что ты. Могу сказать, что никаких проблем, у меня постоянно строятся запросы с динамическим списком параметров и я не за что не позволю себе делать это с помошью литералов, мне сервер жалко.


 
zdm ©   (2006-10-24 14:42) [27]


> Anatoly Podgoretsky

Да извини, мой косяк, устроил бардак, уже извинился за это. А спасибо на счет MDI. А про параметры, давай потом об этом поговорим. Я всё в принципе понял(по вопросу который задал(про MDI)). Закрываемя. Всем спасибо за участие и поддержку!!!!


 
Sergey13 ©   (2006-10-24 14:57) [28]

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


 
Anatoly Podgoretsky ©   (2006-10-24 15:12) [29]

С MDI сам решай, рекомендации знаешь, большинство пользователей сложно с ним работать, знаешь как они между окнами переключаются?
Правильно - путем закрытия Экселя и повторного открытия нужной книги.


 
Anatoly Podgoretsky ©   (2006-10-24 15:15) [30]

Для какого нибудь парадокса/аксеса пофиг параметр или литерал
И там тоже полезно, отпадает лишний анализ литералов. Не везде наверно, но в общем да. Конечно если запрос делается раз в сутки и короткий, то какая разница.


 
Layner ©   (2006-10-24 15:20) [31]

Анатолий, я приверженец MDI, посоветуй, как тогда быть если в программе 50 окон. (программа ЗАЯВКИ, ДОГОВОРА, КАДРЫ... ну и т.п.) Как мне эти 50 окон казать?
-Одна главная - 49 (не)модальные?
-SDI?
-Какие еще есть варианты?


 
zdm ©   (2006-10-24 15:29) [32]


> Layner

Я понял, что по сути будет иммитация mdi. Вот по подробней как это корректно сделать почитать-бы.


 
zdm ©   (2006-10-24 15:30) [33]

В смысле возможно сделать(и советуют все ) не создавать mdi, а "иммитриовать" mdi прилогу.


 
Anatoly Podgoretsky ©   (2006-10-24 15:31) [34]

Layner ©   (24.10.06 15:20) [31]
Тяжелый случай и как же там пользователи ориентируется, там даже меню окон не поможет. Поэтому трудно что либо посоветовать. Не один интерфейс не будет эффективным, вообще человек с трудом ориентируется с числом объектов свыше 8, обычно свыше трех.


 
zdm ©   (2006-10-24 15:31) [35]

А контролировать собственным кодом


 
zdm ©   (2006-10-24 15:32) [36]

хотя 49 окон!!!!!!!!!!!!! даже программер в ступор встанет, не говоря о юзерах


 
guav ©   (2006-10-24 15:45) [37]

MSDN Library, который оффлайновый - это MDI ?


> [2] Ketmar ©   (24.10.06 10:19)
> есть подозрение, что всё зависит от программы. с одной стороны
> можно глянуть на Delphi. а с другой -- на Оперу.

В браузерах тоже MDI не нужно, нужны только закладки. MDIChild окна обычно максимизированны, другое их состояние вряд ли полезно.

MDI имхо может быть полезно в IDE. Пример - Delphi, где без него обошлись.


> [31] Layner ©   (24.10.06 15:20)

SDI, один-три таб контролов, таблицы - закладки ?


 
saxon   (2006-10-24 15:55) [38]


> [31] Layner ©   (24.10.06 15:20)

Что то типа MS Outlook?


 
Layner ©   (2006-10-24 15:55) [39]

Ну не всем же же конвертаторы BMP в GIF писать :) У меня (не моя самописная а от банка) банковская программа КЛИЕНТ БАНК тоже в 50 окон минимум, ну и что? На работе (РАО) такие комплексы стоят, что увидев одну форму я вряд ли найду похожую такаю, там их просто безчисленное количество. Ну да, к слову, софт стоит 8млн$.


 
Anatoly Podgoretsky ©   (2006-10-24 16:02) [40]

Кстати MDI подразумевает, что все (ну или почти все) окна однотипные.



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.044 c
6-1150711485
kolj
2006-06-19 14:04
2006.11.12
передача файлов через TserverSocket TclientSocket


9-1138389837
cava
2006-01-27 22:23
2006.11.12
картинки


2-1162035733
Star dust
2006-10-28 15:42
2006.11.12
ini-файл


15-1161196483
Kerk
2006-10-18 22:34
2006.11.12
Что делать, если ничто не мотивирует? (-)


15-1161780471
ocean
2006-10-25 16:47
2006.11.12
Разрезать видео





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский