2015-06-25 2 views
2

В случае настройки поведения объекта во время выполнения Java, похоже, предлагает два решения: Java Scripting и Dynamic Proxy.Динамический прокси vs Scripting in java

Предположим, у меня есть файл конфигурации и интерфейс I в Java, я могу либо создать, либо загрузить класс, реализующий I в соответствии с конфигурацией, или я могу использовать динамический прокси-сервер, чтобы реализовать реализацию I. Оба метода немного продвинуты. Я сейчас задаюсь вопросом

1- какой из этих двух способов более эффективен в разработке? 2- какая из этих технологий более оптимизирована по производительности? 3, какой способ более удобен в обслуживании? (Перед продукт стабилен, конфигурация может часто изменяться)

С уважением

ответ

0

Я считаю, что первый метод является наиболее широко используемым один. Я никогда не использовал , но, конечно, кодирование по интерфейсу, а затем определение конкретного типа на основе конфигурации - это просто концепция inversion of control (или dependency injection), которая используется в Spring и принята многими другими фреймворками.

+0

Спасибо, кажется, что рамки IOC, такие как Spring, являются лучшим выбором, чем Dynamic Proxy, но Framework для меня не вариант по двум причинам. во-первых, я никогда не использовал Spring, и для изучения и проектирования системы требуется время, и я хочу, чтобы проект был как можно меньшим по размеру. – Korben

+0

@ Korben, вы все равно можете реализовать ту же концепцию с нуля в меньшем масштабе, как вы сказали в своем вопросе. Просто примените объектно-ориентированную концепцию всегда кодирования с интерфейсом, а затем определите конкретные классы реализации во время выполнения через конфигурацию. Это будет просто работать! :) – Rami