Jump to content
Natália Oliveira

Sistema android linkado a um desktop

Recommended Posts

Natália Oliveira

Boa tarde pessoal,

Tenho uma dúvida em um planejamento de um sistema.. A ideia é que este sistema seja utilizado dentro de um determinado determinado estabelecimento atravez da rede a partir de tablets, porém o sistema será atualizado nesses tablets a partir de um sistema desktop, que nao será o cliente e sem o gerenciador..

A duvida é a seguinte, se o sistema que atuara nesses tablets sera em android, em qual linguagem este desktop deve ser desenvolvido?

Há algum requisito que deve ser levado em conta? como deve ser feito para que o sistema desktop gerencie o app?

Obg

Share this post


Link to post
Share on other sites
KTachyon

A forma de comunicação que usas entre o desktop e os tablets é agnóstico, pelo que podes utilizar a linguagem que preferires. Qual a melhor já pode depender dos requisitos, mas tendo em conta que vais trabalhar em Java para Android e te sentires mais à vontade a trabalhar na mesma linguagem nos dois sistemas, Java deverá ser uma linguagem perfeitamente adequada para o que pretendes fazer do lado do desktop.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
Natália Oliveira

A forma de comunicação que usas entre o desktop e os tablets é agnóstico, pelo que podes utilizar a linguagem que preferires. Qual a melhor já pode depender dos requisitos, mas tendo em conta que vais trabalhar em Java para Android e te sentires mais à vontade a trabalhar na mesma linguagem nos dois sistemas, Java deverá ser uma linguagem perfeitamente adequada para o que pretendes fazer do lado do desktop.

há muito pouca informação referente a agnóstico onde procurei.. saberia me ensinar algo?

Share this post


Link to post
Share on other sites
Ernest

Bom dia,

...em qual linguagem este desktop deve ser desenvolvido?

Resposta : Para reutilizar as competências eu diria em Java, já que a aplicação Android também é desenvolvida em Java.

Em vez do servidor Desktop podia também utilizar uma plataforma Cloud Computing. Mas o problema é que não é proprietário e não pode fazer todo o que quer.

Com a sua própria maquina em vez de Cloud tudo esta sobre seu controlo.

Há algum requisito que deve ser levado em conta?

Resposta : Para ligar Android com um desktop eu diria que talvez existe um FireWall no desktop entre os dois.

O HTTP é muito utilizado e de maneira geral os FireWalls deixam passar o HTTP no porto 80.

Eu utilizaria para fazer comunicar os dois dispositivos certamente REST com dados ao formato JSON passados sobre HTTP.

como deve ser feito para que o sistema desktop gerencie o app?

Do lado do desktop utilizaria certamente um servidor de aplicações Java EE exemplo Jetty, Tomcat, GlassFish ou JBoss (depende da carga do dispositivo, possibilidades de escalabilidade, clustering, load balancing, transactions, segurança, etc ...). Ou se não utilizaria uma solução Cloud como por exemplo GAE( Google AppEngine) depende do preço e do controlo sobre os dados.

De qualquer forma uma Servlet recepciona as demandas REST e trata os dados ao formato JSON com uma API por exemplo o famoso : http://wiki.fasterxml.com/JacksonHome

Ou também poderia utilizar Apache CXF : http://cxf.apache.org/

Arquitectura do sistema :

App Android <----HTTP/ REST/JSON-----> App Desktop, Java EE 7

Outro aspecto importante : certamente que a App Android tem de receber PUSH Notifications do servidor por isso necessita passar por GCM (Google Cloud Messaging) que é gratuito por enquanto.

Google Cloud Messaging e bidirecional o que permite fazer :

App Android <----GCM-----> App Desktop, Java EE 7

No canal GCM pode passar os dados ao formato JSON.

Mas o problema é de depender muito da empresa Google. Por isso o GCM utilizo só para fazer o PUSH Notifications (comunicações do servidor Desktop para o Android).

Cordialmente

Ernest Duarte

Edited by Ernest Duarte
  • Vote 1

Share this post


Link to post
Share on other sites
KTachyon

Se é a primeira vez que vais trabalhar com uma framework web de Java, sugiro que vás para a Play Framework.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
Ernest

Bom dia,

Efetivamente Play! Framework é uma boa opção por que é relativamente simples a utilizar.

Play! Framework é inspirado nos Frameworks de tipo Rails ou Django, com o objetivo de fornecer uma ferramenta simples e produtiva em Java.

Tem peculiaridade de não ser baseado no motor Java Servlet.

Ouve uma certa época muitos projetos nasceram com vontade de simplificar "J2EE" , Java EE e os terríveis EJB 2 um dos remédios foi SPRING com a sua DI ou IoC de Martin Fowler...

Play2 pode usar o Scala (linguagem criada no EPFL.ch ) ou Java para desenvolver aplicações web.

Play! Framework foi criado em 2007 por Guillaume Bort co-fundador e CTO da consultoria Zenexity, é um amigo francês, e esteve comigo no DEVOXX France organizado por Paris JUG.

Começou mesmo pequenino o projeto com só um desenvolvedor e agora é uma verdadeira success story.

Este é um projeto que eu vi crescer e é verdade que é impressionante o sucesso que ele teve nos USA. Uma verdadeira história de sucesso, este projeto !

Site do Antonio Gonçalves, Paris Java User Group : http://parisjug.org/xwiki/bin/view/Speaker/BortGuillaume

Tem aqui neste site web do Paris JUG muitos documentos sobre Play! Framework e também se ver algumas fotos vai encontrar um chapéu de palha fabricado no Luso.

http://parisjug.org/

Cordialmente

Ernest Duarte

Edited by Ernest Duarte

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.