BT

JUniversal: Ferramenta para portabilidade de aplicativos Android para Windows Phone e iOS

| por Abel Avram Seguir 9 Seguidores , traduzido por Leonardo Ribas Seguir 0 Seguidores em 03 jun 2015. Tempo estimado de leitura: 1 minuto |

A Microsoft compartilhou o código do JUniversal, uma ferramenta para escrever aplicações móveis multi-plataforma em Java.

O JUniversal é um transpiler, traduzindo o código-fonte Java em código-fonte C#, preservando comentários de formatação de código e Javadoc. A ferramenta está sendo aprimorada para traduzir código Java para Objective C++. O grupo de tecnologias abertas da Microsoft propõe esta ferramenta gratuita para a conversão de aplicativos do Android para fazê-los funcionar no Windows Phone e, posteriormente, em iOS.

O JUniversal tem como objetivo o código da lógica de negócios de aplicações e não interfaces de usuário. Uma interface de usuário tem que ser escrita de forma nativa, separadamente para cada plataforma.

Há uma limitação importante: nem todas as bibliotecas Java podem ser usadas. De acordo com Bret Johnson, desenvolvedor da Microsoft, a tradução de código fonte Java para C# por si só traduz algumas classes Java fundamentais, como String e StringBuilder. Para os demais recursos normalmente utilizados no JDK, a expectativa é que se use as bibliotecas JSimple. O JSimple é uma biblioteca que contém suporte para:

  • Construtores básicos da linguagem: AutoCloseable, Comparable, Iterable, Math;
  • File I/O: Directory, File, Path, Reader, StringReader, Writer, etc;
  • JSON;
  • Log: Logger, LoggerFactory, etc;
  • Net: HttpRequest, Socket, Url, etc;
  • OAuth;
  • Testes unitários: UnitTest, UnitTestBase;
  • Util: Array, Collection, DateTime, HashMap, Iterator, List e outros.

O JSimple é extraído do Apache Harmony e tem "algumas melhorias incluídas" e "algumas funcionalidades raramente utilizadas retiradas." A ideia é garantir que o código funcione de forma consistente em Java e as línguagens que a ferramenta propõem a tradução. O JSimple suporta alguns dos mais recentes recursos do Java, como lambdas.

A equipe por trás do JUniversal considera a ferramenta estável o suficiente para usar em produção, pois é possível "faze-lo funcionar para suas necessidades". A transcrição de Java para Objective-C++ funciona, para iOS por enquanto a equipe sugere o uso do Google J2ObjC. Os desenvolvedores são convidados a fazer comentários e sugestões sobre o projeto através do seu repositório GitHub.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião

Faça seu login para melhorar sua experiência com o InfoQ e ter acesso a funcionalidades exclusivas


Esqueci minha senha

Follow

Siga seus tópicos e editores favoritos

Acompanhe e seja notificados sobre as mais importantes novidades do mundo do desenvolvimento de software.

Like

Mais interação, mais personalização

Crie seu próprio feed de novidades escolhendo os tópicos e pessoas que você gostaria de acompanhar.

Notifications

Fique por dentro das novidades!

Configure as notificações e acompanhe as novidades relacionada a tópicos, conteúdos e pessoas de seu interesse

BT