Escolher uma arquitetura de desenvolvimento móvel

Os programadores podem utilizar tecnologias do lado do cliente para criar aplicações móveis ao utilizarem arquiteturas e padrões específicos para uma abordagem entre plataformas. Com base nos fatores de decisão, os programadores podem criar:

  • Aplicações nativas de plataforma única com linguagens como Objective C e Java
  • Aplicações multiplataformas com Xamarin, .NET e C#
  • Aplicações híbridas com o Cordova e as respetivas variantes

Plataformas nativas

A criação de uma aplicação nativa requer linguagens de programação específicas da plataforma, SDKs, ambientes de desenvolvimento e outras ferramentas fornecidas pelos fornecedores de SO.

iOS

Criado e desenvolvido pela Apple, o iOS é utilizado para criar aplicações em dispositivos Apple, nomeadamente o iPhone e o iPad.

  • Linguagens de programação: Objective-C, Swift
  • IDE: Xcode
  • SDK: SDK do iOS

Android

Projetado pela Google e o SO mais popular do mundo, o Android é utilizado para criar aplicações que podem ser executadas numa variedade de smartphones e tablets.

  • Linguagem de programação: Java, Kotlin
  • IDE: Android Studio e ferramentas de programador Android
  • SDK: SDK android

Windows

  • Linguagem de programação: C#
  • IDE: Visual Studio, Visual Studio Code
  • SDK: Windows SDK

Profissionais de plataforma nativos

  • Boa experiência de utilizador
  • Aplicações reativas com elevado desempenho e capacidade de interface com bibliotecas nativas
  • Aplicações altamente seguras

Cons da plataforma nativa

  • A aplicação é executada apenas numa plataforma
  • Mais recursos para programadores intensivos e dispendiosos para criar uma aplicação
  • Reutilização de código inferior

Várias plataformas e aplicações híbridas

As aplicações multiplataformas dão-lhe o poder de escrever aplicações móveis nativas uma vez, partilhar código e executá-las no iOS, Android e Windows.

Xamarin

Propriedade da Microsoft, a Xamarin é utilizada para criar aplicações móveis robustas e multiplataformas em C#. O Xamarin tem uma biblioteca de classes e runtime que funciona em várias plataformas, como iOS, Android e Windows. Também compila aplicações nativas (não interpretadas) que proporcionam um elevado desempenho. O Xamarin combina todas as capacidades das plataformas nativas e adiciona várias funcionalidades poderosas.

  • Linguagem de programação: C#
  • IDE: Visual Studio no Windows ou Mac

React Native

Lançada pela Facebook em 2015, React Native é uma arquitetura JavaScript open-source para escrever aplicações móveis reais e nativas para iOS e Android. Baseia-se no React biblioteca JavaScript do Facebook para criar interfaces de utilizador. Em vez de visar o browser, destina-se a plataformas móveis. React Native utiliza componentes nativos em vez de componentes Web como blocos modulares.

  • Linguagem de programação: JavaScript
  • IDE: Visual Studio Code

Unity

O Unity é um motor otimizado para criar jogos. Pode utilizá-lo para criar aplicações 2D ou 3D de alta qualidade com C# para plataformas como Windows, iOS, Android e Xbox.

Cordova

O Cordova permite-lhe criar aplicações híbridas com o Visual Studio Tools para Apache Cordova ou o Visual Studio Code com extensões para Cordova. Com a abordagem híbrida, pode partilhar componentes com sites e reutilizar aplicações baseadas no servidor Web com abordagens de aplicações Web alojadas com base no Cordova.

Profissionais de várias plataformas

  • Maior utilização de código ao criar uma base de código para várias plataformas
  • Atender a um público mais vasto em muitas plataformas
  • Redução dramática no tempo de desenvolvimento
  • Fácil de iniciar e atualizar

Contras entre plataformas

  • Menor desempenho
  • Falta de flexibilidade
  • Cada plataforma tem um conjunto exclusivo de funcionalidades para tornar a aplicação nativa mais criativa
  • Aumento do tempo de conceção da IU
  • Limitação de ferramentas