Vamos supor que desenvolvi um programa para uma empresa, e essa empresa constantemente precisa de modificações na Interface do Usuário, sendo pra adicionar um campo ou remover. Então eu queria fazer o seguinte, criar uma pasta chamada Plugins. E quando o cliente precisar de uma nova interface, bastas colocar o jar do plugin na pasta e quando rodar o programa, ele verificar se há algum jar lá dentro e utiliza das classes dele. (Sem utilizar a pastas libs)
Um plugin serve para adicionar funcionalidades além das que existem no software por default e não para dar manutenção no software de um cliente.
Se você quer ter um software base e versões customizadas para cada cliente, você deve trabalhar com uma linha de produtos de software. http://www.google.com.br/search?q=linha+de+produto+de+software
[]'s
M
mss
Estou desenvolvendo gerenciador de exercícios… as opções do usuário serão basicamente a lista de plugins instalados.
Como eu faço para o gerenciador interagir com os plugins jars?
nunca precisei fazer isso em java e agora me apertei.
Abraço
M
mozena
oi squimer, boa tarde!
Tudo em informatica é possivel, mas o ideal e correto seria você customizar seu programa para ser dinamico e assim atender a espectativa da empresa.
Amigo mss,
poderia comentar mais detalhes de sua duvida. Não entendi direito. Você quer construir um plugin para controlar os jars instalados na aplicação ?
M
mss
Não, assim.
Vou construir um gerador de exercícios. Só que ele é para ser só uma carcaça, basicamente as opções de exercícios serão plugins instalados.
Preciso montar uma estrutura que aceite a entrada de plugins, mas como nunca fiz nada parecido em java estou me apertando.
Andei procurando no nosso amigo google + acho q estou pesquisando de forma errada.
Abraço
M
mozena
Mss,
Acho que sua duvida é mais na definição do sistema. Certo ?
No seu caso eu pensaria em um gerenciador de conteudo para controlar sua aplicação. Tudo via Web.
De vez adicionar plugins ao sistema, construa um gerenciador que consiga incluir,alterar e deletar exercicios. Com isso ganhará outras informações importantes.( historico,reaproveitamento de questões…etc )
No final de tudo seu “gerador de exercícios” pode ler a base e gerar os documentos conforme você definir…O que acha ?
OBS: Se sua duvida não foi essa Sorry!!
E
entanglement
Você quer uma banana e aceita que eu sugira uma solução que envolve também um gorila, a jaula, o zoológico, o bairro, a cidade e o estado?
Se aceitar essa solução, você pode escrever uma aplicação usando o Eclipse Rich Client Platform, que tem essa parte de atualização de plugins pronta dentro dele.
Ele resolve quase todos os seus problemas, mas obviamente cria outros.
Se seu problema for realmente grande, vale a pena a solução que lhe apresentei, senão você tem de pensar mais um pouco.
fantomas
squimer e mss a tecnologia que trata deste tipo de problema se chama OSGi; quem controla a atualização dos plugins, após serem disponibilizados, é um servidor osgi. O eclipse é construído com esta tecnologia, existe outra ideia que são os módulos dinâmicos. O netbeans foi construido utilizando módulos dinâmicos, funciona bem também.
Na net existe bastante tutoriais, docs e dicas sobre os dois assuntos.
P.S Construir aplicações com estas tecnologias pode ser um grande desafio; se for adotar seria interessante um cuidadoso estudo sobre os meandros desta arquitetura; ela possui temas complicados como versionamento dos pacotes (plugins), orientação a serviços, administração do servidor e etc…