Russian Qt Forum
Май 19, 2024, 04:15 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3 4   Вниз
  Печать  
Автор Тема: Qt 4.1.1 Избитая тема про БД  (Прочитано 30785 раз)
Krow
Гость
« Ответ #15 : Март 28, 2007, 15:18 »

-=QT=- постгресс требует отдельной установки?
Записан
-=QT=-
Гость
« Ответ #16 : Март 28, 2007, 15:56 »

Да он есть как в исходниках так и в бинарном виде под виндовс, линукс, юникс. Сам сервер устанавливается отдельно, а клиента можно интегрировать в QT стандартными методами.
Смотри тут http://www.postgresql.org/
Записан
Krow
Гость
« Ответ #17 : Март 28, 2007, 19:01 »

Цитата: "-=QT=-"
Да он есть как в исходниках так и в бинарном виде под виндовс, линукс, юникс. Сам сервер устанавливается отдельно, а клиента можно интегрировать в QT стандартными методами.
Смотри тут http://www.postgresql.org/

так в том то и дело, не особо хочется перед запуском приложения ставить отдельно сервер postgresql.
хочется запустиьт приложени е и работать.. т.е. не надо вообюще ничего устанавливать..

добавлено спустя 1 час:

 решил остановиться таки на sqlite. для моего приложения имхо пока будет достаточно.
а postgresql буду осваивать когда база будет не сказал бы что маленькая, да и может что потребуется уже кординально менять в приложении.
Записан
-=QT=-
Гость
« Ответ #18 : Март 28, 2007, 20:26 »

Таки оно правильно наверное, для локального хранения данных в формате доступа sql
Записан
Вячеслав
Гость
« Ответ #19 : Март 28, 2007, 22:26 »

Добавлю свои 5 копеек Подмигивающий
Цитата: "Krow"

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

Только учти что sqlite не поддерживает тригеры\sp -> вся логика работы падает на клиента ... Птиц в этом плане проще - пока база маленькая(или один клиент) работаем с embeded серпвером ... А после тихо уползаем на нормальный сервак ... Грабли конечно есть ... но в приемлимом количестве ... IMHO для средних приложений оно самто Подмигивающий
Записан
_govorilka
Гость
« Ответ #20 : Март 29, 2007, 15:16 »

Цитата: "Admin"
а как на XML выполнять SQL запросы?

А зачем вообще использовать SQL, если нет SQL-сервера?..

SABROG
Можно вопрос... А почему ты не пишешь содержимое exe в hex-редакторе, а используешь
для этого текстовый C++, да и еще с такими, тяжелыми надстройками, как Qt?..
Записан
SABROG
Гость
« Ответ #21 : Март 29, 2007, 17:08 »

Цитировать

SABROG
Можно вопрос... А почему ты не пишешь содержимое exe в hex-редакторе, а используешь
для этого текстовый C++, да и еще с такими, тяжелыми надстройками, как Qt?..


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

Код:

for (int i=0; i < ListView->Items->count(); i++)
{
ShowMessage(ListView->Item[i]->text;
}


Можно было бы превратить в форму, где достаточно было бы выбрать ListView и к нему привязать действие "for each element" и вызывать ShowMessage() для каждого item'a. В зависимости от типа передаваемого параметра в ShowMessage предоставлять ComboBox с выбором методов/свойств которые возвращают данные типы. При некотором желании можно найти более подходящий пример.

Я о том, что накой создавать промежуточные хранилища в текстовом формате, если их никто не собирается редактировать вручную, при том что программа тратит драгоценное время процессора на конвертацию сначала в текст, а потом в двоичное представление и дисковое пространство для хранения текста.
Если брать XML, то получается, что структура дерева узко специфична и ее знает только программа, для которой структура создавалась. Так почему бы просто не создать обычную двоичную структуру, а для разработчиков просто написать ее структуру в helpe.

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

Если посчитать сколько по всему миру тратиться процессорного времени и дискового пространства на переконвертацию/хранение чего-либо, то волосы на голове зашевеляться.

Причина в том, что есть куча старых наработок, которые применяются для создания новых технологий, мы все в этом варимся и не хотим менять протоколы интернета потому, что ими будет пользоваться слишком ограниченное количество человек. Мы же хотим использовать только ширпотреб, чтобы быть в мэйнстриме, несмотря на сложность и очевидные преимущества новых разработок. Простой пример: был создан формат хранения графических файлов на основе фрактальном сжатии без потери качества, причем размер файлов был в разы меньше чем Jpeg. Не прижился только потому, что был коммерческим, не был широко распространен (врятли кто захочет сделать свой сайт используя такую графику, которую не поддерживают обычные браузеры). Правда я не исключаю того, что этот формат просто мог перекочевать под крылышко некоторых гигантов и реализован в каком нибудь flash'e, видео-компрессоре под другим названием.
Записан
Steven_Orko
Гость
« Ответ #22 : Март 29, 2007, 18:23 »

Цитата: "SABROG"
Можно было бы превратить в форму, где достаточно было бы выбрать ListView и к нему привязать действие "for each element" и вызывать ShowMessage() для каждого item'a. В зависимости от типа передаваемого параметра в ShowMessage предоставлять ComboBox с выбором методов/свойств которые возвращают данные типы. При некотором желании можно найти более подходящий пример.
[/qoute]

НЕТ!!! Я бы этим точно не воспользовался.. Тыкать мышкой - это идеология, продвигаемая мелкосовтом... Я этот код напишу руками в несколько раз быстрее, чем ты это сделаешь мышкой...


Цитата: "SABROG"

Если посчитать сколько по всему миру тратиться процессорного времени и дискового пространства на переконвертацию/хранение чего-либо, то волосы на голове зашевеляться.
[/qoute]
Ага, кучу баранов пошло под откос. Так давайте с ними за компанию??? Нет? А что так? Если кучу людей делают так, это еще не значит, что они правы. Это значит, что они как стадо баранов. Не принимай на свой счет )))))

Цитата: "SABROG"

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


Насчет не прижился.. есть такие вещи, как пиар-кампании и т.д. и т.п. Вот та же Мелкософт стока денег вбухивает в продвижение какого-либо даже не особо готового продукта....
Цитата: "SABROG"

 Правда я не исключаю того, что этот формат просто мог перекочевать под крылышко некоторых гигантов и реализован в каком нибудь flash'e, видео-компрессоре под другим названием.

Скорее всего ))))

лично SABROG:
Я считаю, что вы неправы, когда думаете, что идти так, как идет большинство - это верный путь.
Записан
Krow
Гость
« Ответ #23 : Март 29, 2007, 19:13 »

SABROG, согласен с Steven_Orko в том что тыкаьт мышкой, использовать разл визарды удобно, но всё же нормальный программист должен делать всё вручную, ибо почти его каждая прграмма будет уникальна и поэтому программист потратит намного меньше времени на то чтобы набить всё это руками чем потом переделывать готовое визардовское приложение.
к тому же опять таки тыканье на визардах и прочих менюшках отучает думать. это всё дурное влияние на нас запада.
Steven_Orko не понял при чём сдесь куча баранов? то что многие используют тот же xml это всего лишь как вариант лень искать что то более эффективное чем пользовать уже готовое.
моё мнение такое..
ЗЫ каждый идёт своей дорогой а форум это место где люди обмениваются мнениями а не навязывают своё мнение другим Улыбающийся
Записан
Steven_Orko
Гость
« Ответ #24 : Март 29, 2007, 20:04 »

Цитата: "Krow"

Steven_Orko не понял при чём сдесь куча баранов?


Это больное... Конкретно к xml я не отношу... по работе часто сталкиваюсь с тем, что основной причиной, почему надо делать именно так, а не иначе, мне говорят: "Так делают все". Вот встретил подобную формулировку или намек на нее(возможно, я неправильно понял?), и решил внести свою лепту в мировой континиум качественного ПО. ))))))

Конкретно про xml... Автор для себя пусть приведет веские причины, почему так, а потом встанет на противоположную сторону и приведет причины, почему нет. Тогда и получится реальный ответ, основанный на опыте, квалификации и т.д., а не на следовании моде, веяниям и т.п. ))))))) ИМХО
Записан
Krow
Гость
« Ответ #25 : Март 29, 2007, 21:01 »

Цитата: "Steven_Orko"
Автор для себя пусть приведет веские причины, почему так, а потом встанет на противоположную сторону и приведет причины, почему нет.

отлично мыслишь, да и пишешь неплохо. сам то следуешь сему этому? Улыбающийся
что ты скажешь?? пользуешь ли ты xml? или всё же предпочитаешь пользоваться чем то ещё, для обыденных задач как хранение текстовой информации в качестве таблицы?
Записан
SABROG
Гость
« Ответ #26 : Март 29, 2007, 21:33 »

Народ, алё ! Я как-раз против мэйнстрима и против того чтобы идти за стадом, которое пользуется ширпотребом, только потому, что кто-то не смог пропиарить свою технологию за нехваткой средств.
Да с визардами я все-таки неудачно выбрал пример. С другой стороны Windows это визард, противопоставить можно было раньше linux, но уже сейчас уже имеется большое количество дистрибутивов, где почти ничего не надо настраивать и менять скрипты, все само. И к этому ведь стремятся ! А разве это плохо ? Это называется автоматизация. Если человек может допустить ошибку в коде, то машина может ее допустить только по причине человека, который создал эту машину.
Да и зачем писать каждый раз скелет программы и обработчики WM_MESSAGES, если и так известно, что их придется обрабатывать, проще ведь позволить той же ID его создать самому и поместить твой курсор в нужный блок.

Я раньше писал на ассемблере, меня все устраивало, кроме скорости разработки программ, начало все сходится к тому, что я подключал к своей программе в 3кб - dllки (libxml2, iconv, lua, zlib и т.д.). Только вот они уже весят десятки килобайт, даже мегабайты, как и dllки Qt.
И потом я понял, какой тогда смысл продолжать писать на ассемблере, если мне каждый раз приходится вручную переписывать стандартные методы, сокетные, оконные, работа с файлами, кодировкой и т.д. и т.п. Я не спорю ассемблер хорош, но его приминение по больше части сводится к написанию тренеров, кряков, мелких утилит и супер оптимизированных библиотек для обработки данных, где компиляторы не справляются с оптимизацией кода по скорости.

Т.ч. мир не состоит только из черного или белого. Ко всему надо подходить с умом, человек должен сам сделать выбор стрелять по воробью из рогатки и допустить шанс промаха или выбрать оружие, которое будет 30 минут вычислять траекторию полета воробья, ветер, температуру окружающей среды, составит его трехмерную модель, смоделирует его убийство с вычислением положения падения, рассчитает необходимую затрату энергии для выстрела по плотности оперения, костей, размеров и возраста воробья, с поправкой на увеличение затрат энергии для скорости полета пули, чтобы шум выстрела не успел его напугать, с попавкой на выбранный диаметр пули, который был вычислен по плотности оперения и т.д., ну и заодно такое орудие будет иметь внутреннюю базу данных необходимых факторов для самообучения (нейронные сети).

Где такое может понадобится ? В областях, где на кону человеческая жизнь:
проектирование зданий с учетом местности (землетресение, вулканы, цунами),
авиация, машиностроение, войны. В общем там, где человек не имеет право на ошибку.
Записан
Krow
Гость
« Ответ #27 : Март 29, 2007, 22:02 »

SABROG, а что если где то в этой автоматизации человек когда то написавший её допустил ошибку?? ведь как ты сам сказал что прогресс не стоит на месте.. и каждый раз мы привносим что то новое в уже написанное и шлифуем свои навыки в том что мы умеем.
так что и тут есть обратная сторона медали.. и как я уже сказал создание чего то с помощью автоматизаций тупит мозг и не дат ему развиваться..
что на счёт твоего примера с асмом... да согласен есть каноны которые проверены не одним годом и их не стоит переписывать настолько часто как разрабатываемые сейчас программы.
опять же глянув на обратную сторону медали сего аспекта можно увидеть что языки программирования развиваются. разве ты будешь отрицать факт появление новых версий популярных языков програмирования?? или обновление версий компиляторов???
вот то то и оно что не будешь..
подводя итого к ввышесказаному: автоматизация -> привелегия пользователя а не разработчика.
Записан
Steven_Orko
Гость
« Ответ #28 : Март 29, 2007, 22:28 »

Цитата: "Krow"

отлично мыслишь, да и пишешь неплохо. сам то следуешь сему этому? Улыбающийся

Вот не поверишь, практически каждый день встает так или иначе вопрос об этом. Не с бодуна же я написал эту фразу и не с сайта какого стырил. Из личного опыта ))))
Цитата: "Krow"

что ты скажешь?? пользуешь ли ты xml?


Пользуюсь )))) Для написания конфигов и структуры меню в силу специфичности решаемой задачи .

Цитировать

Где такое может понадобится ? В областях, где на кону человеческая жизнь:
проектирование зданий с учетом местности (землетресение, вулканы, цунами),
авиация, машиностроение, войны. В общем там, где человек не имеет право на ошибку.
[/qoute]

Цитата: "Krow"

подводя итого к ввышесказаному: автоматизация -> привелегия пользователя а не разработчика.
[/qoute]

Практически согласен с Krow, тем более, что пример был как раз об этом. Однако!!! Те же IDE - тоже автоматизация. автоподстановка, щаблоны классов (не в стиле С++), типов и т.д. Продвинутая подстветка синтаксиса (Visual Assist, если не ошибаюсь) Это та же автоматизация, которая позволяет писать код значительно быстрее. генерация кода из UML-диаграммы - та же автоматизация. Пусть это ново и сыро, но все-таки дает серьезные преимущества перед программистами прошлого )))
Записан
SABROG
Гость
« Ответ #29 : Март 29, 2007, 22:38 »

Кстати я сам на работе каждый день использую XML, в основном файлы от 3 до 20 Мегабайт. К сожалению отказаться от этого я не могу, т.к. это мэйнстрим, а организации, которые поставляют свои данные в XML формате врятли будут слушать мои проповеди. Сами файлы долго парсятся, плюс жрется траффик на интернет. Я бы предпочел получать данные в файле базы данных sqlite.
Не надо парсить и распихивать по массивам, все уже готово для закачку в базу, тут селект, там инсерт и вуаля.
Записан
Страниц: 1 [2] 3 4   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 17.