Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Так можно? |
Автор: XVoid 12.5.2006, 22:56 |
Дело такое Настройки программы я сохраняю в XML с помощью org.apache.commons Но меня вот посетила такая мысль (светлая или глупая не знаю, как раз хочу спросить) Что если переписать некоторые классы со вставками, "$host" "$server" в значениях переменных хранящих парметры настроек потом при изменении настроек натравить на неё Velocity, скомпилировать с новыми значениями, заменить предыдущую версию файла на новую. Интересно можно так получить прибавку скорости, кол-во параметров которые нужно хранить приблежается к полусотне и все они запршиваются при старте приложения. Если дальше развивать мысль можно так же поступить и с некоторыми частями кода. Фактически мысль состоит в том чтоб программа переписывала сама себя при изменении логики работы. |
Автор: tux 13.5.2006, 02:39 |
Думаю лучше такой код переписать на каком-то языке, не требующем компиляции, например, http://www.jython.org/ (написанный на Java интерпретатор Python) или http://www.beanshell.org/ (интерпретируемая Java). Это будет проще технологически, не потребует перекомпиляции классов, а на исходники таких скриптов легко предварительно натравить и Velocity и вообще что угодно. Изменение исходников Java-классов на мой взгляд не есть хорошая идея. |
Автор: XVoid 13.5.2006, 05:33 |
Я конечно понимаю что такие языки как Python или там Ruby для этого и созданы. Я как раз спрашивал почему Изменение исходников Java-классов не есть хорошая идея? ведь софт зачастую настраивается один раз а потом годами в таком виде используется? в linux часто перед компиляцией приходится исходники подправлять только там я это вручную делаю, а тут предполагаю Velocity и программу с графической мордой для этого использовать... Собственно сам процесс собственно напоминает перекомпиляцю Linux ядра. Интерес чисто академический. |
Автор: LSD 13.5.2006, 10:47 |
Если ты будешь один раз компилировать код, а затем многократно его использовать то вполне можно ИМХО. У нас например, тоже используется автогенерация кода. Мне например доводилось генерировать Java классы с подобными параметрами настройки из SQL скрипта. Другое дело, если ты перед каждым запуском будешь генерировать код, и перекомпилировать его, вот это уже извращение. |
Автор: batigoal 14.5.2006, 20:05 |
Как я понял, это некий аналог условной компиляции? В принципе, мы используем подобную подстановку, но для генерации SQL-кода. |