Opções de GUI para aplicativos híbridos, online e offline

17 respostas
P

Olá pessoal,

Estamos conversando aqui na empresa sobre uma solução que terá que comunicar diretamente com periféricos, como leitor de código de barras, leitor de cartão e afins.

A solução depende do servidor para funcionar normalmente, mas caso o servidor caia por algum motivo, a aplicação fará as operações de forma offline e depois serão sincronizadas com o servidor (algumas opções serão desabilitadas caso esteja offline).

Algumas sugestões:

  • ADOBE AIR, mas parece que não é OPEN SOURCE, pois o engine no final das contas é o Flash Player;
  • Swing, que acho pouco produtivo e atrasado;
  • HTML 5, a la GMAIL OFFLINE, mas não sei se encontramos mão de obra qualificada para esse tipo de solução facilmente;
  • SWT, que tem a maioria dos problemas do SWING (na minha opinião);
  • JavaFX, não sei se deveríamos utilizar isso.

As principais características que procuramos são:

  • Que seja aberto de forma que não venhamos a ficar presos a um único fornecedor;
  • Que seja bem utilizado pelo mercado. Esse projeto é bem conservador, não podemos correr riscos;
  • Que forneça uma interface rica e agradável, possibilitando inclusive a customização por temas (se possível);
  • Alta produtividade;
  • Isolamento máximo da lógica de negócio;
  • Adicione o seu ponto aqui…

Se alguém puder ajudar ficaria muito agradecido.
Obrigado

17 Respostas

fabiofalci

Para a view contrataria alguém bão em Swing e tocaria ficha.

andrerios

Depende do conhecimento do programador em relação ao Swing… existem L&F otimos por ai gratuitos que nao deixam nada a desejar em relação a beleza…

C

pen_fold_uk:
- Que seja aberto de forma que não venhamos a ficar presos a um único fornecedor;

  • Que seja bem utilizado pelo mercado. Esse projeto é bem conservador, não podemos correr riscos;

IMO, se o projeto é tão conservador assim, não vejo pq vcs não poderiam usar Flex…
Tipo, clientes conservadores tendem a não trocar de fornecedor, e a Adobe é um fornecedor com muita credibilidade, logo, não vejo motivos para não user Flex…
E ainda explorando a idéia de troca de fornecedor, caso vcs optassem por Swing, ou SWT, quem seria o outro fornecedor???

Desenvolver um sistema web híbrido com HTML + JavaScript(milhões de frameworks) não deve ser brincadeira… se vcs são conservadores, acredito que isso não seja uma possibilidade real…

Rafael_Nunes

Se os clientes que vão rodar são todos Windows, então não vejo por que não usar Flex+AIR.

Em outros SO’s, a Adobe não mantém tanta atenção em seus Runtimes.

fabim

Ja fiz parte de uma equipe onde criamos uma aplicacao no mesmo esquema (online - offline, tem link sincroniza)

E funcionou muito bem com Swing.
Swing é ruim pra quem usa mal

“- … não sei se encontramos mão de obra qualificada para esse tipo de solução facilmente…”

Isso vale pra Swing tb. É raro encontrar quem saiba usar decentemente.
Eu mesmo me envergonho de muita coisa que fiz na epoca. Pouca gente sabe usar renderes, listeners, decentemente.

R

Rafael, diria que você pode incluir o Mac OS também. Todos os produtos da Adobe sempre saem ao mesmo tempo para Windows e Mac e ultimamente os betas vem saindo antes para Mac que para Windows. Já tivemos alguns problemas com o Linux com relação ao Flash Player para desenvolvimento. Pelo menos eles falam que está em beta para Linux.

Quanto ao seu problema, acredito que o AIR seria uma grande opção, mesmo porque um dos objetivos dele é suportar aplicações ocasionalmente conectadas. Ele já possui toda uma API de sincronismo, SQL Lite local para guardar as modificações quando desconectado, API para detectar se a aplicação está conectada, API para detectar se existe uma nova versão da aplicação para baixar etc. Essa e outras featuras são importantes e facilitam o desenvolvimento de aplicações com os requisitos que você mencionou.

[]s

P

Pessoal,

Quanto ao ADOBE AIR, quais os custos envolvidos? Além da ferramenta da desenvolvimento devemos pagar licença por máquina onde a aplicação irá rodar?

Obrigado

R

Como você disse, a ferramenta de desenvolvimento é paga (o Flex Builder que irá virar o Flash Builder), mas o SDK e o runtime do AIR é free.

[]'s

allyssonluan

Hey…

Sobre o Flex/Air:

Você tinha sitado que no caso não é free, rigth?

Corrijindo sua sitação, podemos alegar que o Flex/Air são open-source sim. O que não é gratuito é o Flex Builder, ou seja sua respectiva IDE.
Muitas pessoas se confundem, mas está é a realidade que temos, ou seja, o Flex é um framework que roda através da VM da adobe que a distribuição também é gratuita.

Para mais informações sobre o Flex open-source:
http://labs.adobe.com/wiki/index.php/Flex:Open_Source

Observações sobre desenvolvimento:

O Flex segue as principais carecteristicas que você busca.
Pode observar neste vídeo abaixo com uma aplicação ECM da TOTVS.

http://www.datasul.com.br/byyou/byyou/by_you_ecm/by_you_ecm.html

Espero ter ajudado em algo

[]'s

allyssonluan

OPS! - Me esqueci

Vale a pena ressaltar também que você pode Desenvolver uma app em Flex(para web) e com algumas configurações utilizar o mesmo código fonte para Air(desktop).

Você irá trabalhar no Flex/Ari apenas com a Regra de UI. Sendo assim, a parte de negócios fica por conta da linguagem que você quiser.

Até mais,
[]'s

fabiofalci

E desenvolver Flex/AIR sem Flex Builder, é viável?

R

Fabio, é como desenvolver para Java sem usar IDE. É bem complicado!!!

fabiofalci

allyssonluan, bem legal o exemplo, ótimo apelo visual. Se atende o cliente, show de bola.

Rafael_Nunes

Flex Builder pra Linux é free, mas não tem o modo de design e creio que no final deste ano acaba a licença dele.

allyssonluan

Pois então Fabio, para você ver como o mundo Flex vai além. É claro que para fazer aplicações neste porte você irá precisar de outros tipo de Desenvolvedores, como UI Designers e etc… Mas é bem interessante!

Quanto a IDEs para Flex, eu pessoalmente uso Flex Builder pois é Free para estudantes e instituições de ensino.

Existem mais 2 IDES para desenvolvimento com Flex, só não lembro quais são. Elas são Free. Vou procurar e já posto aqui!

allyssonluan

Então pessoal…

Como foi sitado acima, Flex sem IDE é a mesma coisa que Java sem IDE também.

A idéia do Flex Builder é fazer com que você tenha um rendimento maior no Desenvolvimento do Aplicativo. Assim podemos nos preucupar com outras coisas.
Creio que tudo mundo que implementa em Flex com o Flex Builder ama o Modo Design, então, ele serve para isso…

Pensem na idéia do Net Beans para uma aplicação Desktop com Java!

Obs:
O FlexBuilder é free para estudantes e Instituições de Ensino!

Legal né?

Mas o mais interessante também é que existe se eu não me engano 2 IDEs frees, em uma palestra que teve há alguns dias em Floripa(Open TDC) o Mario Junior(Desenvolvedor Flex/Java de Florianópolis) sitou o nome delas. Mas não me recordo muito bem, pois eu mesmo utilizo Flex Builder!

[]'s

heziojansen

Tah, mas qual o valor do Adobe Flash Builder?
Qual real vantagem do flex sobre o javafx??


Uma IDE free pra flex eh a FlashDevelop, q eh a mais recomendada, porém eu não consegui trabalha usando ela pq não sei fazer a integração do Flex(FD) com o Java (netbeans/eclipse) jah q fazia a comunicação através do BlazeDS mas tudo integrado no eclipse, foi só separa em mais IDEs pra eu me perde

Criado 20 de outubro de 2009
Ultima resposta 3 de nov. de 2009
Respostas 17
Participantes 9