Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Почему так не любят Delphi? 
:(
    Опции темы
SKrivosein
Дата 6.4.2013, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Идущий в даль
**


Профиль
Группа: Участник
Сообщений: 271
Регистрация: 9.6.2007
Где: Praha - Прага

Репутация: нет
Всего: 8



Цитата(drkot @ 6.4.2013,  06:31)
Таки Вы серьезно думаете, что на Delphi можно написать что либо "тупым бросанием на фому"

Я кстати постом ниже написал что о Delphi не берусь судить вообще в силу своей не компетентности.
А от чего торчат?... Ну например в WPF любой компонет можно разобрать или сделать практически с нуля так как мне только надо (в голову прийдет). Ну и многое другое, тотже биндинг.  smile 


--------------------
Оптимист - это плохо информированный человек.
user posted image

PM MAIL   Вверх
Beltar
Дата 6.4.2013, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 627
Регистрация: 11.1.2006

Репутация: 2
Всего: 7



К вопросу о RAD, буквально вчерашнее из аськи:

Цитата

 Beltar (19:12:28 5/04/2013)
...
И потом MS сделала эту самую WPF, где используются векторные контролы, аппаратная отрисовка и самое главное язык XMAL, который позволяет видеть внизу под разрабатываемой формой красивой текстовое окошко в которое при броске компонентика на по дурацки расположенную в области редактирования форму (у меня 1920х1080 и то места мало) появляется XML-подобный код размещения данного элемента. Можно по коду щелкнуть и элемент, о чудо, выделится!
И я вот думаю, в чем смысл? В том, что я теперь могу создавать контролы, как до появления визуальных средств разработки руками?

 Beltar (19:13:01 5/04/2013)
Или меня просто хотят поиметь?

XXX (19:21:57 5/04/2013)
Ага. smile

XXX (19:22:06 5/04/2013)
Ты всё правильно думаешь.



--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. smile(с) я, хотя может и нет
Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере.
PM MAIL   Вверх
SKrivosein
Дата 6.4.2013, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Идущий в даль
**


Профиль
Группа: Участник
Сообщений: 271
Регистрация: 9.6.2007
Где: Praha - Прага

Репутация: нет
Всего: 8



Beltar а в чем собственно проблема, у нехочется лезть в XAML код руками, так не лезем. Закрываем окно с ним и ничего о нем не знаем. Но зато если надо чего то, что стандартный контрол не предусматривает, берем и при условии определенных знаний легко доделываем.
Например хочется внутри техтбохов меленькие, серинькие иконки - поиск, редактирование, ридонли. Коротые исчезнут при наборе текста. Хочется, зделаем. И при этом ненужно лезть в какие-то супер дебри. И т.п.

Это сообщение отредактировал(а) SKrivosein - 6.4.2013, 14:04


--------------------
Оптимист - это плохо информированный человек.
user posted image

PM MAIL   Вверх
diadiavova
Дата 6.4.2013, 17:52 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 4
Всего: 142



Цитата(Beltar @  6.4.2013,  14:17 Найти цитируемый пост)
самое главное язык XMAL

Точно, именно это самое главное и есть smile
Цитата(Beltar @  6.4.2013,  14:17 Найти цитируемый пост)
появляется XML-подобный код размещения данного элемента.

Хмл-подобный? smile XAML - это и есть XML вообще-то, во всяком случае один из словарей.
Цитата(Beltar @  6.4.2013,  14:17 Найти цитируемый пост)
И я вот думаю, в чем смысл? В том, что я теперь могу создавать контролы, как до появления визуальных средств разработки руками?

Я думаю, что твоя( как и многих дельфистов впрочем) проблема в том, что ты сравниваешь неизвестные тебе технологии с тем, что есть в дельфах и не задумываешься о том, что там может быть что-то, чему в дельфах просто нет аналога. Почему в майкрософте отказались от развития винформ? Да потому что они просто устарели и морально и технологически. Как оказалось, создать что-то, учитывающее современные требования к гую, поверх виндоус-контролов из библиотеки юзверь32 оказалось практически невозможно, вот и был создан впф, где просто все взяли и отрисовали с нуля. 
Относительно создания интерфейса так же, как и до появления... - тоже ерунда полная. Я очень сомневаюсь, что ты не понимаешь разницы между программным кодом и кодом на структурном языке. В первом случае ты описываешь действия по созданию всех элементов и добавлению их куда надо, во втором - код декларативно описыает структуру интерфейса. Если все же непонятно, то возьми к примеру ту страницу, которую ты сейчас читаешь и попробуй описать процесс ее создания на дельфе той же или к примеру яваскрипте, но только без использования таких свойств, как innerHTML и пр. Думаю разница сразу станет ясна.
Ну и наконец, в XAML можно создавать не только визуальные элементы, но там можно описывать привязку данных к свойсвам(там привязывать можно вообще все ко всему), триггеры, анимацию, стили шаблоны и даже действия (например созданные в дизайнере рабочих процессов). 
В качестве примера того, что такое шаблон, можно привести вот такую штюку
http://www.codeproject.com/Articles/17025/...w-Layout-in-WPF
в двух словах опишу: это обычная тривьюшка, для которой автор статьи просто написал небольшой шаблончик (причем заметь: никакого наследования и создания собственного контрола) и благодаря этому шаблончику контрол, выглядящий стандартно преображается до неузнаваемости, сохраяняя при этом свою функциональность(разворачивание узлов и прочее). Шаблон можно заменить даже в рантайме и дерево станет выглядеть как прежде. Дельфийские контролы могут предложить что-нибудь подобное? А ведь это только один небольшой пример, коих тыщи.

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


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
SKrivosein
Дата 6.4.2013, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Идущий в даль
**


Профиль
Группа: Участник
Сообщений: 271
Регистрация: 9.6.2007
Где: Praha - Прага

Репутация: нет
Всего: 8



Дяд Вов, да им не понять. smile Я когда то давно, когда в первый раз видел WPF, тоже сам себе сказал: " что это за родобие HTML?" Но потом когда поработал... Одна компоновка чего стоит, не зависящая от размеров окна, dpi монитора.... нечего умнее я не знаю. 


--------------------
Оптимист - это плохо информированный человек.
user posted image

PM MAIL   Вверх
diadiavova
Дата 6.4.2013, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 4
Всего: 142



Цитата(SKrivosein @  6.4.2013,  19:26 Найти цитируемый пост)
Дяд Вов, да им не понять.

Да, пожалуй smile 
Цитата(SKrivosein @  6.4.2013,  19:26 Найти цитируемый пост)
Я когда то давно, когда в первый раз видел WPF, тоже сам себе сказал: " что это за родобие HTML?" 

На самом деле в впф много идей взято из HTM. XUL и т. п. Просто там этим дело не ограничивается, а с первого взгляда да - выглядит все именно так.

Добавлено через 2 минуты и 21 секунду
И кстати, вот в этой статье
http://ru.wikipedia.org/wiki/Visual_Basic
написано, что в бейсике визуальный дизайнер появился в 91-м году. Неужели в дельфах раньше? smile


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Beltar
Дата 6.4.2013, 20:35 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 627
Регистрация: 11.1.2006

Репутация: 2
Всего: 7



Вообще мне на WPF было как-то пофигу, но запустил посмотреть, и имею право высказать свои впечатления.

Цитата

Точно, именно это самое главное и есть 


Вот в этом-то и проблема, что в MS, похоже забыли уже, что же именно главное.

Цитата

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


В Delphi, начиная с 4-ой версии, структура формы описывается банальным текстовым файлом определенной структуры. Ну так вот, мне 99.9% времени глубоко и искренне пофигу как оно там написано (я просто знаю, что могу залезть и что-то подправить, если нужно). Если в след версии Codegear с дуру заменит его на XML, то не получит ничего, кроме матюгов, т. к. проекты в старых версиях будет не открыть. При этом существующий текстовый формат не мешал добавлять самые разные фичи, от поддержки жестов, то технологоий живого связывания в XE2. Самое смешное, что если в XE2 было просто связывание, то в XE3 уже визуальный дизайнер. И ты мне рассказываешь про связывание посредством XML-файла?? Ну смешно же.
И как после этого я должен уверовать, что это такая прогрессивная технология? Почему я не должен вообще принимать всерьез такой реликт викторианской эпохи?
Кстати, вектора векторами, но значительная часть интерфейса вполне себе битовая и если я хочу, чтобы моя иконка выглядела нормально при любом размере мне ее надо увеличивать с приличным запасом, а если я сам что-то рисую...

Цитата

в двух словах опишу: это обычная тривьюшка, для которой автор статьи просто написал небольшой шаблончик (причем заметь: никакого наследования и создания собственного контрола) и благодаря этому шаблончику контрол, выглядящий стандартно преображается до неузнаваемости, сохраяняя при этом свою функциональность(разворачивание узлов и прочее). Шаблон можно заменить даже в рантайме и дерево станет выглядеть как прежде. Дельфийские контролы могут предложить что-нибудь подобное?


Ну круто конечно, хотя ту же тривьюшку на Delphi можно самостоятельно перерисовать, примеров, правда, не видел. Только опять, причем тут XML?

Цитата

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


Меня на C++ Builder не пересадишь даже под дулом пистолета, опыт общения с C++ этому противится. Что же касается Windows Forms, то нафига дельфисту куда-то переходить, когда у него и так все это есть?
Впрочем зачем что-то объяснять человеку который никак не может понять, что возможность кидать контролы на формочку это обязательно для любой среды разработки, сейчас ведь не 80-ые, но ничего серьезного ты компонентокиданием не создашь, оно просто позволяет сделать за час работу на которую надо 50 часов.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. smile(с) я, хотя может и нет
Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере.
PM MAIL   Вверх
Zloxa
Дата 6.4.2013, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 4
Всего: 161



Цитата(diadiavova @  6.4.2013,  19:40 Найти цитируемый пост)
написано, что в бейсике визуальный дизайнер появился в 91-м году. Неужели в дельфах раньше?  

ВБ появился раньше. И в вижуал фокспро - раньше. Это было очень круто, но до тех лишь пор, покуда тебе не надо было добиться от визуального контролла чего-то чуть больше, чем он умеет. Умели стандартные контроллы, откровенно мало. Если тебе вдру оказывается нужно что-то больше - в руки MSVC+MFC и херачь OCХ, который тягай еще за собой.

В делфе же, если нужно больше - изучи исходник, унаследуйся, прооверрайдь. Делфя, в отличии от VB, буквалльно за пару лет обросла множеством библиотек от комьюнити, позволяющих выдержать требовния к УИ и без допила компонет.

Когда я говорил об вау, эффекте, я упоминал, что это было как ВБ, ВФП, но только с полиморфизмом и исходным кодом визуальных контроллов.

Добавлено через 4 минуты и 16 секунд
Цитата(diadiavova @  6.4.2013,  18:52 Найти цитируемый пост)
дельфисты(не все, конечно, а те, что в срачах наиболее рьяны) очень любят закидывать какашками технологии, о которых они имеют очень смутное представление.

Я, лично, в делфисрачах занимаю исключительно оборонительную позицию. Все мои броски - ответны. smile


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
SKrivosein
Дата 6.4.2013, 21:15 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Идущий в даль
**


Профиль
Группа: Участник
Сообщений: 271
Регистрация: 9.6.2007
Где: Praha - Прага

Репутация: нет
Всего: 8



Цитата

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

Вот здесь как раз я вообще перестал понимать. Какая значительная часть растровая? У меня весь WPF интерфейс векторный. А вот иконки можно запихнуть битмап. Но зачем если можно их описать прямо в XAML?
Цитата

Вот в этом-то и проблема, что в MS, похоже забыли уже, что же именно главное.

А что главное?  smile 
Цитата

И ты мне рассказываешь про связывание посредством XML-файла?? Ну смешно же.

Здесь мы помоему вообще перестали себя понимать. А XAML чем не стандартезованый текстовый файл? И он нечего не связывает, а только описывает какие классы будут задействованы при работе программы.

Это сообщение отредактировал(а) SKrivosein - 6.4.2013, 21:40


--------------------
Оптимист - это плохо информированный человек.
user posted image

PM MAIL   Вверх
diadiavova
Дата 6.4.2013, 21:47 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 4
Всего: 142



Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Вообще мне на WPF было как-то пофигу, но запустил посмотреть, и имею право высказать свои впечатления.

Если бы это было нейтральное впечатление, моя реакция была бы другой. Здесь же ты высказывался так, как будто в теме и тебе точно известно, что ничего заслуживающего внимания там нет и что вообще это "еще один шаг назад по сравнению с дельфой".
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Вот в этом-то и проблема, что в MS, похоже забыли уже, что же именно главное.

Если ты этого не понял, то это еще не значит, что не знают они. На XAML можно сваять и под винформы и отлично будет работать и ради этого вообще смысла не было создавать WPF.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
В Delphi, начиная с 4-ой версии, структура формы описывается банальным текстовым файлом определенной структуры. 

По-моему в старом бейсике это уже было. Давно съедено и высрано. Уже объяснил, что не только в расположении контролов дело.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Ну так вот, мне 99.9% времени глубоко и искренне пофигу как оно там написано (я просто знаю, что могу залезть и что-то подправить, если нужно). 

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

Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Если в след версии Codegear с дуру заменит его на XML, то не получит ничего, кроме матюгов, т. к. проекты в старых версиях будет не открыть.

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

Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
ри этом существующий текстовый формат не мешал добавлять самые разные фичи, от поддержки жестов, то технологоий живого связывания в XE2. Самое смешное, что если в XE2 было просто связывание, то в XE3 уже визуальный дизайнер. И ты мне рассказываешь про связывание посредством XML-файла?? Ну смешно же.

Во-первых, ты просто даже не понял о чем я тебе хочу сказать. Где я говорил о связывании посредством хмл? smile Я сказал, что в впф связывается все со всем. Это позволяет свести напсание программного кода к минимуму, а в некоторых случаях и вовсе без него обойтись. Это было сказано в процессе перечисления фич, которые куда важнее хамла, который ты назвал главной фичей этой технологии. 
Еще раз: ты говоришь, что там главное хамл, а я тебе отвечаю, что там куча всего, о чем ты не знаешь, в том числе упоминаю связывание и в результате оказывается, что я рассказал тебе о связывании посредством хмл. Нормально? smile 
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
И как после этого я должен уверовать, что это такая прогрессивная технология? Почему я не должен вообще принимать всерьез такой реликт викторианской эпохи?

Твоя (как и многих дельфистов) проблема именно в том, что тебе обязательно нужно во что-то уверовать. Дельфисты очень религиозны, поэтому споры с ними бесполезны.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Кстати, вектора векторами, но значительная часть интерфейса вполне себе битовая и если я хочу, чтобы моя иконка выглядела нормально при любом размере мне ее надо увеличивать с приличным запасом, а если я сам что-то рисую...

Вставишь растровое изображение.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Ну круто конечно, хотя ту же тривьюшку на Delphi можно самостоятельно перерисовать, примеров, правда, не видел. 

Там не в рисовании дело. Нарисовать можно все, что угодно и растром. Речь шла о шаблонах и о том, что контрол будет выглядеть так, как это в шаблоне прописано.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Только опять, причем тут XML?

И опять ни при чем. Объяснение того, чем хмл лучше текстового файла для описания структур данных выходит очень далеко за пределы этой темы. Просто в силу некоторых преимуществ этого формата использовали именно его. Что ты имеешь против? Это ты решил, что хмл главная фича впф и теперь эту мысль упорно приписываешь мне.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Меня на C++ Builder не пересадишь даже под дулом пистолета, опыт общения с C++ этому противится. Что же касается Windows Forms, то нафига дельфисту куда-то переходить, когда у него и так все это есть?

Винформы устарели и за них тут никто не агитирует. Думаю они на том же базисе основаны, что и в дельфах, так что ради них точно смысла нет.
Цитата(Beltar @  6.4.2013,  21:35 Найти цитируемый пост)
Впрочем зачем что-то объяснять человеку который никак не может понять, что возможность кидать контролы на формочку это обязательно для любой среды разработки

Еще раз объясняю: в дотнете есть две технологии для построения гуя и с чего ты взял, что я именно тот человек, который "никак не может понять..." я вообще не понял, вот чего я точно никак не могу понять так это этого. Я сказал совсем о другом, а именно: все, что я слышал от дельфистов в пользу дельфы так или иначе крутилось вокруг визуального дизайнера форм из чего я сделал вывод, что хвастаться больше нечем. Если вообще говорить о средствах визуального моделирования (не только интерфейсов), то я вообще очень сомневаюсь, что какая-то среда может в этом со студией сравниться (хотя всегда можно поставить что-то кроме того, что уже есть, но тем не менее).
Цитата(Zloxa @  6.4.2013,  22:04 Найти цитируемый пост)
ВБ появился раньше. И в вижуал фокспро - раньше. Это было очень круто, но до тех лишь пор, покуда тебе не надо было добиться от визуального контролла чего-то чуть больше, чем он умеет. Умели стандартные контроллы, откровенно мало. Если тебе вдру оказывается нужно что-то больше - в руки MSVC+MFC и херачь OCХ, который тягай еще за собой.

Да, но вы до сих пор с этим дизайнером форм носитесь как дурак с писанной торбой. На сегодняшний день этим мало кого удивишь. При этом получается, что в вб дизайнер раньше появился, но винформовский является не его логическим продолжением, а стырен у дельфы. И где логика?
Цитата(Zloxa @  6.4.2013,  22:04 Найти цитируемый пост)
Когда я говорил об вау, эффекте, я упоминал, что это было как ВБ, ВФП, но только с полиморфизмом и исходным кодом визуальных контроллов. 

И что из этого сейчас отсутствует в других технологиях, включая дотнет?

Добавлено через 1 минуту и 5 секунд
Цитата(SKrivosein @  6.4.2013,  22:15 Найти цитируемый пост)
 Но зачем если можно их описать прямо в XAML?

Если ты художнег, то можно smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
SKrivosein
Дата 6.4.2013, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Идущий в даль
**


Профиль
Группа: Участник
Сообщений: 271
Регистрация: 9.6.2007
Где: Praha - Прага

Репутация: нет
Всего: 8



Цитата

Если ты художнег, то можно  smile 

Делаю так, да я немного художнег, но можно стыреть готовых вагон! А вон товарещь тоже художнег, он на несколько размеров больший свой растр рисует. smile 
А ещё Blend радостно переводит несколько векторных форматов в мини XAML!  smile 

Это сообщение отредактировал(а) SKrivosein - 6.4.2013, 22:07


--------------------
Оптимист - это плохо информированный человек.
user posted image

PM MAIL   Вверх
Alexeis
Дата 6.4.2013, 22:03 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 14
Всего: 459



  Пожалуй, что дизайн основанный на Windows контролах действительно негибок. Собсно я продолжаю юзать VCL лабуду, но после каждой новой версии делфей тихо фигею объему кода, который используется для работы с винконтролами. Намного проще было нарисовать все это самому, чем виртуозно-монструзно использовать это все. 
  Правда нужно отдать должное, делфи тоже не стоит на месте и новая библиотека FireMonkey уже принципиально другая. Сильно не изучал ее, но по описанию тянет на WPF . Вместо иксов используют OpenGL для переносимости и наконец своя отрисовка всего. Тоже есть векторные и 3D интерфейсы. Она, конечно, еще молодая, но задатки серьезные. Опять же декларируют отделение бизнес логики от вида.
  


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Beltar
Дата 6.4.2013, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 627
Регистрация: 11.1.2006

Репутация: 2
Всего: 7



Цитата

главное не забывать о том, что рабочую программу можно сделать быстрой (или правильной ;)), а вот быструю рабочей сделать гораздо сложнее ;)


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

Цитата

Если же говорить о декомпозиции, то в идеале нужно создавать дополнительный поток (для проведения выборок и расчетов абстрактно от интерфейса). Поток висит на ожидании Event.WaitFor. В OnClick находится один метод Event.SetEvent (по сути спусковой крючек). После нажатия на кнопку стартует выборка и подготовка данных и в конце синхронно вызывается метод заполнения GUI даннами. Таким образом GUI может получить некий типизированный набор данных не вникая в их происхождение (база ли это или фаил, инет). А вспомогательный поток не ведает как и где данные отображаются. 

При написании программы в C(C++) данный подход более очевиден, так как изначально приходится отделять обслуживание GUI от работы с данными. Как правило заводят несколько нитей.
В Delphi половина работы уже сделана (поток GUI уже есть) и остается написать функциональный поток(и). А вот здесь начинается методологическая проблема. Потокам и их синхронизации практически не уделяют внимания ни в книгах ни при обучении. Отсюда и множество посредственных кодеров. Конечно можно писать и одно поточные приложения, но это должны быть простые диалоговые приложения, в частности работа с базами данных, синхронная работа по сети и тд. Основной риск это заморозка интерфейса и как следствие неудобство использования.


Поток GUI обычно простаивает, вот его и нагружают, при этом можно вызвать Application.ProcessMessages. Вряд ли создание отдельного потока на каждый чих оправдано, особенно если этот чих предполагает доступ к GUI. А типовые ситуации, когда поток нужен (таймер тот же), сам бог велел оборачивать так чтобы свести сложности в использовании к минимуму. Да и когда VCL писали, ее на многопроцессорные системы не рассчитывали.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. smile(с) я, хотя может и нет
Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере.
PM MAIL   Вверх
Zloxa
Дата 6.4.2013, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 4
Всего: 161



Цитата(diadiavova @  6.4.2013,  22:47 Найти цитируемый пост)
И что из этого сейчас отсутствует в других технологиях, включая дотнет?

Вау-эффект же.
Тогда это была бомба. Что есть бомба сейчас? WPF? smile

Цитата(diadiavova @  6.4.2013,  22:47 Найти цитируемый пост)
а стырен у дельфы

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


Это сообщение отредактировал(а) Zloxa - 6.4.2013, 22:30


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
Alexeis
Дата 6.4.2013, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 14
Всего: 459



Цитата(Beltar @  6.4.2013,  23:14 Найти цитируемый пост)
Поток GUI обычно простаивает, вот его и нагружают, при этом можно вызвать Application.ProcessMessages. Вряд ли создание отдельного потока на каждый чих оправдано, особенно если этот чих предполагает доступ к GUI.

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


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила ведения Религиозных войн
Smartov
1. Уважайте собеседника
2. Собеседник != враг
3. Старайтесь воздерживаться от тем вида "Windows Rulez" или "Linux Rulez"

С уважением, Smartov.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Религиозные войны | Следующая тема »


 




[ Время генерации скрипта: 0.1088 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.