@Mr-Governor
Губернирую

Как сделать интерфейс к программе на Java?

Допустим я пишу движок, который имеет некую бизнес логику и структуру хранения данных, на подобии 1С.
Если я захочу, что бы пользователи могли дополнять мой движок собственными Java плагинами, мне нужно будет описать API классы для них, но с чего начать и как это работает я не понял.

При попытке нагуглить, всплывает сплошное веб-апи, а мне нужен НЕ ВЕБ интерфейс.
Подскажите пожалуйста что почитать на эту тему.
  • Вопрос задан
  • 425 просмотров
Пригласить эксперта
Ответы на вопрос 3
@oldd
Программист, архитектор, тимлидер
Начни с понимания микрософтовских DLL, COM, DCOM, они первыми прошли этот путь.
Потом читай про загрузку классов java
Ответ написан
@odissey_nemo
Программист, ГИС-системы, растры, космоснимки
Обычно большую прогу, с новой логикой и в спокойной обстановке (без бешенства манагеров и директоров) начинаю писать с того, что на интерфейсах описываю абстрактную необходимую функциональность. А потом уже её реализую.
Особенно это полезно, когда пишешь не один. В этом случае, ты реализуешь свои, согласованные с командой интерфейсы, спокойно обращаясь к нереализованным, которые реализуют другие, не тормозя тебя в начале начал.

В вашем случае можно (знаю это только для JIdea) создать и отладить реально работающий класс. А затем, щелчком пПКМ по имени этого класса и далее из всплывшего меню "Refactor"->"Extract interface". И вуаля, если нет плохих зависимостей, то интерфейс (в смысле синтаксиса Java и как отдельный файл класса) готов. Осталось его грамотно откомментировать и, может быть, реализовать некоторые дефолтные методы, перенеся их из уже написанного кода. Или ещё что потребуется. Но главное , интерфейс для рабочих методов , уже есть.

А уж реализовать интерфейс в плагине - дело техники. Загрузить плагин и вызвать как инстанс класса интерфейса - тоже не сложно.
Ответ написан
Комментировать
@3des
AWT, Swing и JavaFX. Я как раз таки считаю, что настоящее и будущее это Web API, но раз хотите GUI то думаю, самый перспективный JavaFX, его грызите).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы