Nos últimos anos, a evolução dos dispositivos móveis, novas plataformas de desenvolvimento e sistemas operacionais foram criados, aumentando a complexidade e muitas vezes a curva de aprendizado. Um dos maiores problemas com a disparidade entre plataformas é a manutenção da aplicação, controle de atualizações e custeamento de equipes de desenvolvimento com conhecimentos específicos, como: Android, iOS, BlackBerry, Windows Phone, etc.
Com o objetivo de suprir tais “dificuldades”, surgiram diversas alternativas para se desenvolver aplicações móveis. Este novos meios/plataformas permitem que escrevamos o código uma vez, e o mesmo execute em diversos tipos de dispositivos e sistemas operacionais.
Isso é possível devido as seguintes tecnologias web: HTML5, CSS3 e a linguagem JavaScript. Existem diversos frameworks atualmente no mercado, cada um com suas características e propósitos. Estas novas tecnologias ocasionaram a divisão das plataformas de desenvolvimentos móvel em três categorias, são elas: WebApp, Nativa e Híbrida.
Com o objetivo de suprir tais “dificuldades”, surgiram diversas alternativas para se desenvolver aplicações móveis. Este novos meios/plataformas permitem que escrevamos o código uma vez, e o mesmo execute em diversos tipos de dispositivos e sistemas operacionais.
Isso é possível devido as seguintes tecnologias web: HTML5, CSS3 e a linguagem JavaScript. Existem diversos frameworks atualmente no mercado, cada um com suas características e propósitos. Estas novas tecnologias ocasionaram a divisão das plataformas de desenvolvimentos móvel em três categorias, são elas: WebApp, Nativa e Híbrida.
WebApps
Aplicações projetadas para serem executadas em browsers de dispositivos móveis. Ou seja, a sua interface gráfica é adaptada para dispositivos com telas menores, utilizando conceitos como o responsive (visualização e experiência em plataformas e resoluções diferentes). Estas aplicações são hospedadas em servidores web, utilizando tecnologias específicas para serem carregadas, em máquinas de “baixo” processamento e normalmente com baixa velocidade de banda da rede.Uma das vantagens para essa abordagem no desenvolvimento de aplicativos móveis, é que a atualização/manutenção da aplicação é feita no servidor, consequentemente, todos os dispositivos recebem a nova versão automaticamente, bastando atualizar a página no browser. E lógico, independente de plataforma.
Um contra é a persistência de dados no próprio dispositivo (local store). Porém, existem mecanismos para manter informações em cache, simulando o armazenamento de dados.
Nativas
São as desenvolvidas diretamente para uma plataforma, em uma linguagem específica, como: para Android (utilizando Java), ou para iOS (com ObjectiveC), Windows Phone (com C#), etc. As grandes vantagens dessas aplicações, são:- total acesso aos recursos dos dispositivos e hardwares;
- armazenamento local de dados;
- maior desempenho;
- componentes projetados para a plataforma, entre outras.
Híbridas
São desenvolvidas em linguagem de script, utilizando normalmente a “velha” linguagem dos browsers, JavaScript. Além disso, podemos exportá-las de forma nativa para diversas plataformas. Um exemplo claro, é o framework Sencha Touch, produzido e mantido pela Sencha, Inc. O Sencha Touch nos possibilita desenvolvimento ágil e implementa o padrão arquitetural MVC (Model, View e Controller). A portabilidade das apps (termo utilizados para referir-se a aplicações móveis) pode ser para: AndroidOS, iOS, BlackBerry, etc.
Nenhum comentário:
Postar um comentário