Название: Реализация нескольких вопросов. Отправлено: altVis от Апрель 01, 2008, 14:19 День добрый.
От работодателя поступили требования. И хотелось бы узнать, существуют ли какие-нибудь решения, которые могут послужить хотя бы базой для создания, т.к. нет времени на создание с 0. 1) нужно решения для стандартизации запросов к разным БД,т.е. например есть 5 разных СУБД с идентичными БД, таблицами. И если введнный запрос например для sybase, не подходит для oracle, то нужно этот запрос конвертировать в понятный для oracle. Что-то похожее,как я понимаю реализовано в sqlways. Может существует библиотека предназначенная для такого? 2) нужно решение для информативного вывода ошибки во время исполнения программы. И решение расстановки сообщений в "местах-бобмах" кода не подходит, т.к. надо будет подгонять под каждую программу. Нужен шаблон для разных программ. 3) динамическая смена layouts на виджете(что-то на подобии qdockwidget), как в Qt дзайнере. Т.е. во время исполнения программы, пользователь мог бы поменять расстановку компонентов на виджете( не mainform ) 4) последнее требование самое странное. В оффисе 2007 создали новое меню вверху слева( выглядит,как шар или пузырь :) ) , оно ещё наполовину "залазит" на обрамление оконного менеджера. Не успел я ужаснуться, как мне сообщили, что такое меню приняли уже чуть ли не за стандарт и тыкнули в готовую реализацию на .net и vcl. Может есть что-нибудь на Qt? Вот и всё :( Название: Re: Реализация нескольких вопросов. Отправлено: Пантер от Апрель 01, 2008, 16:46 Попробуй зайти на qt-apps.org, может что и найдешь...
Название: Re: Реализация нескольких вопросов. Отправлено: Tonal от Апрель 02, 2008, 08:02 1) Есть 3 варианта:
а) Попытаться ограничится минимальным общем подмножеством SQL. б) Писать проблемные запросы в 5ти экземплярах. в) Нарисовать свой DSL - некое промежуточное представление, в котором ты описываешь запрос какие данные тебе нужны, а движёк, в зависимости от типа сервера конвертирует это в конкретный формат. (такая возможность точно есть в BDE, и вроде в ODBC) 2) Исключения. 3) В Qt есть докинг 4) Геометрию окна ты можешь задать - см examples/widgets/shapedclock Название: Re: Реализация нескольких вопросов. Отправлено: altVis от Апрель 02, 2008, 09:31 1) Есть 3 варианта: а) Попытаться ограничится минимальным общем подмножеством SQL. б) Писать проблемные запросы в 5ти экземплярах. в) Нарисовать свой DSL - некое промежуточное представление, в котором ты описываешь запрос какие данные тебе нужны, а движёк, в зависимости от типа сервера конвертирует это в конкретный формат. (такая возможность точно есть в BDE, и вроде в ODBC) 2) Исключения. 3) В Qt есть докинг 4) Геометрию окна ты можешь задать - см examples/widgets/shapedclock Спасибо, но как реализовать я знаю :) Я спрашивал о готовых решениях ;) А докинг - это qdockwidget?Так они только на qmainwindow расставляются :( Название: Re: Реализация нескольких вопросов. Отправлено: Tonal от Апрель 02, 2008, 10:21 Ну а готовые я тоже сказал. Смотри BDE, ODBC, ADO - в них вроде должен быть "универсальный" режим.
Смотри. Поищи по ключевым словам ORM, C++ - мож что нароешь - расскажешь потом. :) Ну и докинг допилить вполне реально. :) Какая вообще задача стоит? Если выбирается платформа для разработки серии приложений, то под свои нужды можно Qt и подзаточить. :) Да, про SQL, ещё можно встроить в приложение ту жа Java или Python - пушай они с базами разбираются, благо для каждого из них такие либы есть в большом количестве. :D Название: Re: Реализация нескольких вопросов. Отправлено: altVis от Апрель 02, 2008, 11:18 На фирме решается проблема "на чём же программировать?".
Моя задача предложить некий шаблон( кроссплатформенный, работа с 5 определёнными БД, юникод и т.д. ). Я решил взяться за Qt. :) А вот другие языки программирования хорошая идея ;) Но! Какие плюсы даёт разработка на java/Qt перед java/ Swing/AWT? Я думаю, что этот вопрос зададут первым :) Название: Re: Реализация нескольких вопросов. Отправлено: Tonal от Апрель 02, 2008, 11:29 Ну, это отдельный флейм - поищи в сети полно материалов.
Мы, вот, выбрали Qt + python. С++ - только в случаях тяжёлых вычислений или работы со странными библиотеками/устройствами. Скорость и удобство разработки больше на порядок. Скорость выполнения меньше. :-) Название: Re: Реализация нескольких вопросов. Отправлено: Mikhail от Апрель 02, 2008, 16:59 На фирме решается проблема "на чём же программировать?". Моя задача предложить некий шаблон( кроссплатформенный, работа с 5 определёнными БД, юникод и т.д. ). Я решил взяться за Qt. :) А вот другие языки программирования хорошая идея ;) Но! Какие плюсы даёт разработка на java/Qt перед java/ Swing/AWT? Я думаю, что этот вопрос зададут первым :) Ну а мы выбрали Qt/C++ вместе с QSA( сейчас это QtScript ). Вся графика и взаимодействие с железом, базами и т.п. с использованием драйверов и плагинов на Qt/C++, а вся логика программ в скриптах. Практически необходимо только написать логику в скриптах и нарисовать визуальный интерфейс любой сложности встроенным редактором. Да работает помедленнее чистого Qt/C++, но задача реализуется за пару дней, а чаще и часов. Название: Re: Реализация нескольких вопросов. Отправлено: Tonal от Апрель 03, 2008, 08:58 ... но задача реализуется за пару дней, а чаще и часов. Вместе с изменением структуры базы данных?Название: Re: Реализация нескольких вопросов. Отправлено: Вячеслав от Апрель 03, 2008, 12:16 Ой блин ! Какую тему пропустил ;) Все ДСП-шники клятые работу другим придумывают:(
1) Tonal тебя правильно послал - Змей рулит (Python) Есть такой приятный штук SQLAlchemy - ну собственно жрет Цитировать Postgres: psycopg2 + DB2SQLite: pysqlite, sqlite3 (included with Python 2.5 or greater) MySQL: MySQLdb Oracle: cx_Oracle MS-SQL: pyodbc (recommended), adodbapi or pymssql Firebird: kinterbasdb Informix: informixdb Хватит ? Скорость работы змея- выше чем QSA ( проверял когда искал скриптовый язык для проги) + Возможность использовать байт-код (меньше размер + нет исходников в которых могут покапаться шаловливые ручки пользователя). 2)except'ионы в зубы как уже сказали и вперед ;) Продумать иерархию классов (опять-таки посмотреть на змея\или Stl) и все (почти) будет пучком.... Ну и еще перехватить core-dump etc ;) 3) Хм ну а руками наследника QLayout'а написать ?И пример есть .... 4) Для _М$_ может быть .... работать с ним .... ну на любителя .... И все зависит от конечной направленности продукта ;) IMHO в том-же ворде ,если есть голова на плечах - крыс вообще нафиг не сдался ( и делаеться все в разы быстрее - нет переключение руки на крыса).Но если юзер работает в режиме абезьяна "дебет у окна и ЭТО ПРИХОД!!!" , то ..... начальству(менеджеру по продаже продукта) может и виднее ...... Название: Re: Реализация нескольких вопросов. Отправлено: Mikhail от Апрель 03, 2008, 12:41 ... но задача реализуется за пару дней, а чаще и часов. Вместе с изменением структуры базы данных?Ну а в чем вопрос? Естественно Название: Re: Реализация нескольких вопросов. Отправлено: Mikhail от Апрель 03, 2008, 12:51 Скорость работы змея- выше чем QSA ( проверял когда искал скриптовый язык для проги) + Возможность использовать байт-код (меньше размер + нет исходников в которых могут покапаться шаловливые ручки пользователя). При использовании QtIOCompressor можно и размер уменьшить и затруднить копание шаловливых ручек пользователей. А скорость QtScript проверял? Интересно... Название: Re: Реализация нескольких вопросов. Отправлено: Вячеслав от Апрель 03, 2008, 13:00 Скорость работы змея- выше чем QSA ( проверял когда искал скриптовый язык для проги) + Возможность использовать байт-код (меньше размер + нет исходников в которых могут покапаться шаловливые ручки пользователя). При использовании QtIOCompressor можно и размер уменьшить и затруднить копание шаловливых ручек пользователей. А скорость QtScript проверял? Интересно... А скорость - все равно меньше будет - QSA парсит файл при каждой загрузке , а змей умеет сохранять уже готовый байт-код ;) Который дальше можно пожать zip'ом и скормить ему-же ;) Название: Re: Реализация нескольких вопросов. Отправлено: altVis от Апрель 03, 2008, 15:20 Всем спасибо!
Тема конечно превращается больше во флуд, но хотелось бы попросить не удалять сообщения из неё, т.к. весьма интересно почитать о том, что выбрали другие и как этот выбор окупается :) |