powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Вопроса никакого просто интересно
13 сообщений из 13, страница 1 из 1
Вопроса никакого просто интересно
    #37424607
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никто не применял подход jQuery в средах типа Delphi или .NEt ?

Например, на форме сначала размещаются обычные компоненты из палитры, а потом в процедуре вроде Create к компонентам привязываются события всякие и таким способом можно совмещать MaskEdit с ComboBox и так далее. Притом не нужно плодить кучу своих компонент. Просто создаешь процедуры с нужными функциями.

Я случайно попробовал (лень было компоненту новую делать) - очень понравилось.
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427132
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не знаю, как Ваша мысль переводится на русский, но есть подозрение, что в конечном итоге всё сведётся к использованию интерпретаторов. Да, довольно часто "архитекторы универсальных систем" любят затыкать ими дырки в проектировании.
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427422
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

нет, речь идет о подходе к написанию программ на исходном языке. но вместо создания мега универсальных компонент создаются обработчики событий. потом специальной процедурой они "складываются в стопку" для определенного контрола. И таким образом, контрол приобретает различные (произвольные) сочетания свойств в зависимости от потребности программиста.
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427465
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Боюсь, Вашу мысль по-прежнему непросто понять, во всяком случае мне. Вы используете общие слова, за которыми не видно вообще никакой картины.

Сугубо по звучанию... чем создание каких-то (мегауниверсальных?) "обработчиков" и "складывание их в стопку" отличается от создания аналогичных "функций" и поочерёдного (в порядке стопки) вызова их из обработчика "в зависимости от потребностей"?

Cкажу честно: то, что звучит, звучит криво. Пока для меня оно выглядит примерно так: "я не хочу писать классы TNumberEdit, TTextEdit и TMemoEdit, я хочу использовать один TEdit, навешивая на него по необходимости OnNumberKeyDown, OnMemoInit и кучу других обработчиков, меняющих этот TEdit до неузнаваемости".
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427553
Alexsalog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerCкажу честно: то, что звучит, звучит криво. Пока для меня оно выглядит примерно так: "я не хочу писать классы TNumberEdit, TTextEdit и TMemoEdit, я хочу использовать один TEdit, навешивая на него по необходимости OnNumberKeyDown, OnMemoInit и кучу других обработчиков, меняющих этот TEdit до неузнаваемости".

Да, в точности. Чем это плохо ?
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427643
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexsalogДа, в точности. Чем это плохо ?
В первую очередь, это создание того самого мегауниверсального компонента.

Чтобы показать, чем это плохо, стоит сделать следующий шаг по этому пути и мысленно "объединить" компоненты TEdit, TPanel и TButton. В самом деле, каждый из них - прямоугольник с определёнными обработчиками одних и тех же событий.

Мы вполне можем сделать кнопку из панели. Для этого на неё надо навесить обработчики OnMouseEnter, OnMouseLeave, OnMouseDown, OnMouseUp. Если хотим кнопку с картинкой, ещё OnPaint. Если хотим нажимать её с клавиатуры, ещё OnKeyDown. Можно сделать в принципе. Вопрос в том, что для любой кнопки любой формы нашей программы надо будет вешать семь обработчиков. То есть писать семь строк кода, устанавливать семь свойств итп. Одинаковых, раз за разом. Это очень тоскливо. Любой нормальный человек захочет сделать что-нибудь вроде Панель.СтаньКнопкой, чтобы она сразу инициализировалась как положено. Но! В тот момент, когда мы говорим TButton.Create вместо TPanel.Create, мы на самом деле именно это и говорим. Указывая класс, мы собственно и говорим "TObject, стань кнопкой".

Не стоит забывать о том, что разным "конкретным классам" нужны разные свойства. TButton-у нужна картинка, TEdit-у - нет. Делая такой мегауниверсальный компонент, мы должны будем реализовать свойство "картинка" на уровне базового класса и обеспечить ему какое-то разумное поведение в том числе в TEdit-е. Вы представляете себе компонент, объединяющий в себе свойства хотя бы панели Standart? Аналогично, этот мегауниверсальный компонент должен будет работать, инициализированный какой-нибудь бешеной комбинацией свойств и обработчиков, скажем TEdit должен быть checked, иметь выпадающий список и редактироваться как полозок. Такой компонент будет очень сложным и очень глючным. А зачем, собственно?

Такой ценой мы по идее покупаем возможность сделать "TButton с элементами TEdit". Например, кнопку, в которой есть поле ввода. Иногда это нужно, но, назовём так, применимость этого не очень высока. "Стандартные решения" таки нужны гораздо чаще, чем нестандартные.

Итого - не стоит бросаться в крайности. В идеальном дизайне есть место и для жёсткой, априорной типизации TButton/TEdit, и для настройки свойствами, и для кастомизации событиями. Возможности инструментальных средств несколько сдвигают оптимум: например, в интерпретаторах возможность динамически, плагинно добавить объекту свойства и методы снижает потребность в предварительной типизации. Но всё же.... подход jQuery вызван недостатками js как инструмента. Он просто не умеет иначе. И не надо бросаться в эту крайность там, где это не обязательно, имхо.
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427652
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То есть я добавляю TEdit обработчик OnDropDownList и он магическим образом превращается в TComboBox?
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427781
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexsalogНикто не применял подход jQuery в средах типа Delphi или .NEt ?

да в общем-то он в них изначально применяется. Особенно в .Net В делфи структурно так же, просто в компилируемом виде
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37427786
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще точнее... jQuery - попытка применения подходов Делфи и .Нет для веб-страниц, отделение логики от представления
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37428581
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmеще точнее... jQuery - попытка применения подходов Делфи
+1
т.к. базовых HTTP компонент в стандарте нету или очень мало
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37428598
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отделение логики от представления - не является "подходом дельфи", да и "подходом .нет"

Я не знаю jQuery в объёме сверх "странички инфы", но общего как-то не вижу.
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37428629
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerОтделение логики от представления - не является "подходом дельфи", да и "подходом .нет"

Я не знаю jQuery в объёме сверх "странички инфы", но общего как-то не вижу.
гениально. В нете и дельфи как в html все в куче?
...
Рейтинг: 0 / 0
Вопроса никакого просто интересно
    #37428668
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валер, некто гениальный может утверждать, что js похож на .net и не похож на дельфу, опираясь на тот факт, что в первых двух фигурные скобки, а в третьей - begin/end. Я полагаю, что при всей истинности факта на определение похожести больше влияют другие соображения.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Вопроса никакого просто интересно
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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