Форум: "Потрепаться";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
ВнизКроссплатформенный исходник Найти похожие ветки
← →
KSergey © (2004-12-17 09:50) [0]Есть некий алгоритм расчетный, который сейчас используется в программах на Win и Unix платформе (web-сервер и клиентские приложения в офисе).
Возникла мысль: а нельзя ли состряпать что-то универсальное?
Я вижу 2 основных варианта:
1) универсальный выполнимый модуль, работающий на обеих платформах.
2) универсальный исходник (на каком-то языке), компилируемый на обеих платформах.
Вот и возник вопрос к общественности: у кого какие есть идеи? Интересуют именно идеи "вообще", фантастические и проч., но желательно, конечно - реальные ;)
Да, требование: код должен исполняться (и вызываться) быстро. Т.е. универсальный в общем-то вариант реализовать в виде ХП на SQL-сервере - увы, не подходит, слишком часто вызывается. Да и SQL-сервера, вообще-то, разные. хотя тут бы в прицнипе и можно было подружить при желании.
В общем все варианты в архитектуре "некий сервер вычислений" - отметаем сразу, такие вариснты мне понятны, но, увы, не подходят (ХП на SQL, веб-сервис, отдельная программа на сервере со своим сетевым протоколом - и т.д.).
Хотелось бы именно что-то иметь на машине, где запущена задача... Ну легко интегрируемое с основной прогограммой, конечно, если это некий внешний объектый модуль.
← →
vecna © (2004-12-17 10:16) [1]чем не нравится ява ?
← →
PVOzerski © (2004-12-17 10:25) [2]FreePascal (или Delphi/Kylix, хотя я бы предпочнл 1-е) как компилятор, shared library/dll как форма реализации модуля. Исходники универсальны, для нужной платформы - перекомпиляция. У меня так реализована серверная часть (в частности, UDF-ы к MySQL) на своем сайте. "Пашет" на FreeBSD и Win32, без сомнения, применимо и к Linux.
← →
KSergey © (2004-12-17 11:20) [3]> shared library
Это, как я понимаю, для UNIX-платформы?
А добираться к ним из Java - примерно путь не скажете? Ну чтобы знать куды рыть...
← →
PVOzerski © (2004-12-17 11:47) [4]Вообще есть бесплатная (open source) библиотечка JAPI для взаимодействия FreePascal и Java. Правда, насколько я помню, она ориентирована, в основном, на работу с графикой. И не для вызова своего кода из Java-программы, а для использования из своей паскальной программы функций Java. Так что не знаю, то ли это, что надо. Но посмотреть может оказаться полезным и ее.
http://www.japi.de/
← →
Александр Иванов © (2004-12-17 12:31) [5]А зачем так все усложнять? Можно все написать на Яве и не тратить время на взаимодействие?
← →
KSergey © (2004-12-17 13:03) [6]Не, ну все будем считать - нельзя ;)
На Win платформе есть большой комплекс, реализованный на Delphi.
На Unix крутится Web-сервер, на нем - java-примочки для интерактива (прошу прощения за слова, не знаю как грамотно все это назвать).
НО есть небольшой алгоритм, который применяется и там и там, при этом хотелось бы максимально быстро и, главное(!), гарантированно идентично реализовывать этот алгоритм на обеих платформах.
PS
Впрочем, что я темню: это модуль рассчета стоимости, скидок, кол-ва и т.д. Иногда в нем меняются правила игры или просто вводятся новые параметры.
Сейчас универсальный формат - это бумажка с картинками, которая по сути 2 раза переводится под каждую реализацию. Хотелось бы переводить ее 1 раз и везде использовать ;)
← →
Странник © (2004-12-17 13:22) [7]а чем С++ плох?
идея использования см. PVOzerski © (17.12.04 10:25) [2]
делал я когда-то такую приблуду, типа драйвера для специфического девайса. Требование было Win/Lin/Free.
Под Win - MS C++ / Borland C++
Путем использования минимального кол-ва #ifdef достаточно приличный код транслировался и работал везде.
Самый большой геморрой, как всегда, был с реализацией MS C++ - у них реализация языка отличается.
← →
Igorek © (2004-12-17 14:24) [8]KSergey © (17.12.04 9:50)
ядро на чистом С++ без библиотек, опредили интерфейс к ядру, а потом заворачивай хоть в СОМ обьект, хоть в длл, хоть статически компонуй - и все это на не кросплатформенных средах
← →
KSergey © (2004-12-17 14:31) [9]> [7] Странник © (17.12.04 13:22)
> а чем С++ плох?
На ни чем! Я даже за! ;)
> идея использования см. PVOzerski © (17.12.04 10:25) [2]
Осталось от наших юниксистов получить ответ "как на счет shared library". Пока не удалось ;)
> [8] Igorek © (17.12.04 14:24)
> хоть статически компонуй - и все это на не кросплатформенных средах
Для Win - я знаю как. Осталось узнать как это прикрутить к джаве ;)
А вообще, может я неверно акценты расставил: меня в основном интересуют какие-либо слова применительно к Unix"у и Java. Как это все запихнуть в Win - я придумаю ;)
Впрочем, некоторые слова я уже услышал. Благодарю
Хотя для коллекции было бы интересно еще какие-нибудь послушать ;) (я не говорю, что эти плохи, просто пока они не вызвали энтузазизма у юниксистов)
← →
PVOzerski © (2004-12-17 14:56) [10]>Осталось от наших юниксистов получить ответ "как на счет shared library". Пока не удалось ;)
Тот же код, который под Win32 компилится в DLL, в юниксах компилится в shared library. Синтаксис практически не отличим от дельфового. Естественно (ограничение ОС), не допускается экспорт/импорт по индексам. С нестабильной веткой FreePascal 1.9 под FreeBSD были мелкие проблемки, обошел :^). Если выберешь вариант с этим компилятором, на форуме есть соответствующий раздел.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c