Билдер vs Qt Дизайнер, просто трёп |
Здравствуйте, гость ( Вход | Регистрация )
Билдер vs Qt Дизайнер, просто трёп |
AD |
21.1.2009, 15:40
Сообщение
#51
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
|
|
|
kuler |
21.1.2009, 16:04
Сообщение
#52
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
Вообще-то для лучшей наглядности и модифицируемости проекта лучше все connect(ы) писать ручками ты com не использовал в приличных проектах? а то б знал для чего нужна atl. (в принципе mfc из тойже темы, но таккак считаю её полным авнищем то это плохой пример). Или stl юзал? а то щас у меня код написанный до меня, там надо отсортировать чтото, так ты чо, написан целый метод quicksort, видимо это круто. |
|
|
Litkevich Yuriy |
21.1.2009, 16:05
Сообщение
#53
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
AD |
21.1.2009, 16:11
Сообщение
#54
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
Или stl юзал? а то щас у меня код написанный до меня, там надо отсортировать чтото, так ты чо, написан целый метод quicksort, видимо это круто. К чему ты это? А вообще не понимаю с чего ты com приплел? Разве в atl есть дизайнер? Какая quicksort, самописная что-ли? Можно разжевать так, чтобы чайник вроде меня понял все! Заранее спасибо! ))) |
|
|
kuler |
21.1.2009, 19:39
Сообщение
#55
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
а где он его создать должен? ну у меня в студии в коде on_aFilter_triggered() с чего ты com приплел? Разве в atl есть дизайнер? а это тонкий намек, что с твоей позицией и atl не нужна ибо Вообще-то для лучшей наглядности и модифицируемости проекта лучше все connect(ы) писать ручками. Какая quicksort, самописная что-ли? ну короче просто самописная сортировка |
|
|
Litkevich Yuriy |
21.1.2009, 20:39
Сообщение
#56
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
ну у меня в студии в коде on_aFilter_triggered() не понял, что это и где это?Дизайнер создает ui-файл (например foo.ui), затем при сборке из него с помощью uic создается ui_foo.h. А использовать этот файл (либо foo.ui либо ui_foo.h) ты можешь самым разным способом. В файле foo.ui слот не разместишь, т.к. в XML'нике не предусмотрено место для кода (хотя в секцию CDATA можно, наверно, воткнуть). В файл ui_foo.h тоже нельзя, так как ты можешь хотеть динамически загружать foo.ui, да uic перетерает этот файл. Вот и получается, что нет места, где можно было бы разместить пользовательский слот. |
|
|
Tonal |
22.1.2009, 9:09
Сообщение
#57
|
Активный участник Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17 |
2 kuler Это ты о чём говоришь?
Дизайнер Qt вообще не поддерживает создание пользовательских слотов. Может ты говоришь про интегратор для студии - тут я не в курсях. Зато в ассистенте описано, что есть 2 метода привязывания слотов к сигналам формы: 1. Явно в коде с помощью connect. При этом можно связать как угодно. 2. Неявно, после создания интерфейса слоты с именами вида on_widgetName_signalName привязываются к сигналам соответствующих объектов. Понятно, что во втором случае не о каком связывании с множеством виджетов рачи не идёт. Да и вообще этот способ не рекомендован тролями и создаёт дополнительные трудности при рефакторинге. Про библиотеки - это ты совсем не в тему. Одна из основных идей современного программирования - это грамотное разделение обязанностей. Т.е. грубо говоря, каждый кусок должен отвечать только за одну задачу и быть как можно более самостоятельным - т.е. независимым от остальных кусков. Если смотреть с этой точки зрения на перечисленные тобой библиотеки, то: stl - общие куски многих алгоритмов в обобщённом виде. ATL - обёртка низкоуровневых концепций COM для С++. Ни та не другая не пытается предоставлять свой сетевой протокол, играть звук или рендерить видио. Ну и по поводу GUI - он должен быть как можно более развязан от логики. Т.е. все вычисления, проверки и т.д. должны быть оторваны от GUI-я. Представь, что заказчику понравилась твоя мегапрограмма, и он захотел в следующей версии иметь к ней доступ по вебу с мобильника. Не устанишь выковыривать логику из всех этих OnClick-ов? Да и нанять дизайнера, чтобы он нарисовал красивый и удобный интерфейс просто не получится - он должен будет иметь навыки работы со средой и понимание связывания кода с рожей. Сообщение отредактировал Tonal - 22.1.2009, 9:12 |
|
|
kuler |
22.1.2009, 12:00
Сообщение
#58
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
|
|
|
AD |
22.1.2009, 12:15
Сообщение
#59
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
Цитата т.е. независимым от остальных кусков. то есть стл нельзя использовать, ибо идет зависимость? Ты неправильно понял мысль. Как раз наоборот. Эти библиотеки предоставляю ОБЩИЙ интерфейс для выполнения каких-то задач. Сами задачи должен реализовывать программист, как здесь были приведен пример, это предоставление сетевого протокола. В Билдере же как раз есть очень большая беда, что GUI-код зависит от логики напрямую. Что является большим минусом Билдера, а не плюса. Поэтому Билдер, возможно, удобно использовать в каких-нибудь очень небольших программах и утилитах - это будет быстрее. Но если следует разработать систему, которая впоследствии будет модифицироваться, при этом, возможно, другими людьми, то он непригоден для этих целей. И приведенные тобой библиотеки, относятся как раз к хорошим библиотекам, потому что в них реализована общая логика для большинства задач. Но при этом в них нет конкретной привязки к GUI или же реализации какой-нибудь конкретной задачи. |
|
|
Litkevich Yuriy |
22.1.2009, 12:56
Сообщение
#60
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Текстовая версия | Сейчас: 28.3.2024, 17:39 |