powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Динамические программы
18 сообщений из 18, страница 1 из 1
Динамические программы
    #37712320
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
когда программа в рантайме меняет сама себя, например компилит в память некоторые классы, или меняет существующие.

когда такое реально надо? тыкните ссылку на практически интересный пример

спасибо.
...
Рейтинг: 0 / 0
Динамические программы
    #37712429
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда-то, когда деревья были большими, году этак в 99-м, сдавал я дипломную по информатике. На Borland Pascal. Задачка была несложная - сделать вывод графика конкретной заданной функции, плюс примочки типа масштабирования, скроллинга, etc... Ну а поскольку я уже тогда страдал великим самомнением о своих программистских способностях - сделал я так, чтобы функцию можно было задавать динамически, во внешнем файлике. И прога компилила на ходу TPU-шник с функцией из её описания, а затем этим модулем пользовалась...
...
Рейтинг: 0 / 0
Динамические программы
    #37712458
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот тебе пример .

Enjoy!
...
Рейтинг: 0 / 0
Динамические программы
    #37712470
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

меня интересует задача ( интересный пример ), решение которой без динамически-изменяющей-сама-себя программы хуже чем с ней ( реально надо )
...
Рейтинг: 0 / 0
Динамические программы
    #37712471
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любой численный метод есть низкоуровенвая оптимизация типа развертывания циклов.
...
Рейтинг: 0 / 0
Динамические программы
    #37712480
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawкогда такое реально надо?
Каждый раз, когда программа должна вести себя неким не предусмотренным заранее образом. Скажем, любая загрузка плагина - уже "меняет саму себя". Зачем нужны плагины, надеюсь, объяснять не нужно.

Следующий вопрос - зачем программе делать это "компиляцией" - настоящей или не совсем. Ответ на него также прост: это даёт лучшую производительность, это даёт большие возможности довольно малой ценой, нередко это ещё и кардинально проще в реализации, нежели другие варианты.
...
Рейтинг: 0 / 0
Динамические программы
    #37712481
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawменя интересует задача ( интересный пример ), решение которой без динамически-изменяющей-сама-себя программы хуже чем с ней ( реально надо )
Любая оптимизация. Например, выполнение SQL-запроса - та же DB2, помнится, компилит запросы в бинарный исполняемый вид, Оракл компилирует PL/SQL код...
...
Рейтинг: 0 / 0
Динамические программы
    #37712633
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawкогда программа в рантайме меняет сама себя, например компилит в память некоторые классы, или меняет существующие.

когда такое реально надо? тыкните ссылку на практически интересный пример

спасибо.
полиморфный вирус.
...
Рейтинг: 0 / 0
Динамические программы
    #37712636
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawкогда программа в рантайме меняет сама себя, например компилит в память некоторые классы, или меняет существующие.

когда такое реально надо? тыкните ссылку на практически интересный пример

спасибо.
в целях отладки:
что-бы не ребутить сервак при каждом изменении класса. просто спец утилиткой компилится подгружается класс в систему. не совсем то(ведь программа не сама себя модифицирует).

еще гарячую замену кода любят в телекомах. там вырубать серваки нельзя.
...
Рейтинг: 0 / 0
Динамические программы
    #37712869
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNеще гарячую замену кода любят в телекомах. там вырубать серваки нельзя.

Не так давно еще была ситуация с такой заменой кода на каком-то космическом аппарате.
...
Рейтинг: 0 / 0
Динамические программы
    #37712885
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawmayton,

меня интересует задача ( интересный пример ), решение которой без динамически-изменяющей-сама-себя программы хуже чем с ней ( реально надо )
А все они так или иначе меняют. Чтобы написать неизменяемую ( реентерабельную ) программу, надо ещё повозиться. Причём, проблемы начнутся уже с третьей строки кода. :)
ПС. В википедии очень плохая (из рук вон) статья.
...
Рейтинг: 0 / 0
Динамические программы
    #37713273
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно еще почитать про Java Instrumentation.
...
Рейтинг: 0 / 0
Динамические программы
    #37716022
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- замена кода в телекомах и космических кораблях
- полиморфные вирусы
- "...Оракл компилирует PL/SQL код..."
- "А все они так или иначе меняют. Чтобы написать неизменяемую (реентерабельную) программу, надо ещё повозиться..."
меня это не интересует

то есть в приземленной, повседневной практике и не найти примерчик? все только из области высших сфер, получается?
...
Рейтинг: 0 / 0
Динамические программы
    #37716033
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Найти можно. Например, я имел дело с системой, которая по описанию бизнес-логики документа генерила, компилировала и подключала программный код реализующих его классов. Другой вопрос, что в приземлённых случаях чаще стоит использовать другие способы.
...
Рейтинг: 0 / 0
Динамические программы
    #37716041
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmawто есть в приземленной, повседневной практике и не найти примерчик? все только из области высших сфер, получается?
А что ты собственно хочешь услышать? Какие такие высшие сферы? Про Java Instrumentation я уже говорил.
+есть еще Java Hot Code Replacement (HCR). Используется в отладке кода. Я лично не использовал. Или по крайней
мере не помню чтоб я явно его использовал. А сколько раз оно используется неявно - йух его знает.

+любое приложение которое использует плагины и во время сеанса несколько раз их перегружает. Вот тебе
еще один пример "динамической программы".
...
Рейтинг: 0 / 0
Динамические программы
    #37716048
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
самый очевидный пример - браузер.
загружает JS для страницы как текстовые данные, и компилит в функции/объекты.
...
Рейтинг: 0 / 0
Динамические программы
    #37716976
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmaw- замена кода в телекомах и космических кораблях
- полиморфные вирусы
- "...Оракл компилирует PL/SQL код..."
- "А все они так или иначе меняют. Чтобы написать неизменяемую (реентерабельную) программу, надо ещё повозиться..."
меня это не интересует

то есть в приземленной, повседневной практике и не найти примерчик? все только из области высших сфер, получается?
э. я же сказал - отладка программ. что-бы на каждый чих - не ребутить сервер.
...
Рейтинг: 0 / 0
Динамические программы
    #37717105
f#
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
f#
Гость
kmaw,

Для быстроты регулярное выражение можно компильнуть в сборку

http://msdn.microsoft.com/en-us/library/9ek5zak6.aspx
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Динамические программы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]