Mini-aplicativo VS Desenvolvimento Tradicional
Em comparação com o desenvolvimento tradicional, os miniaplicativos podem ajudar os desenvolvedores a obter:
- Carregamento rápido
- Capacidades mais poderosas
- Experiência nativa
- Dados abertos fáceis de usar e seguros
- Desenvolvimento eficiente e simples
1. Diferenças entre desenvolvimento de miniaplicativos e desenvolvimento web
Os mini-aplicativos são desenvolvidos principalmente em JavaScript. O processo é bastante semelhante ao desenvolvimento Web, portanto, a transição do desenvolvimento Web para o desenvolvimento de Mini App envolve um custo baixo para desenvolvedores front-end. No entanto, existem algumas diferenças entre eles.
No desenvolvimento da Web, os threads de renderização e os threads de script são mutuamente exclusivos, portanto, a execução prolongada de scripts pode fazer com que uma página pare de responder. Em um Mini App, os threads de renderização e os threads de script são executados separadamente. Os desenvolvedores da Web podem usar as APIs DOM expostas por vários navegadores para realizar a seleção e operação do DOM. Conforme mencionado acima, a camada lógica e a camada de renderização de um Mini App são separadas uma da outra. O primeiro é executado em JSCore sem um objeto de navegador completo, faltando assim as DOM e BOM APIs relevantes. Essa diferença torna impossível que algumas bibliotecas familiares aos desenvolvedores front-end, como jQuery e Zepto, sejam executadas em Mini Apps. Enquanto isso, o ambiente JSCore é diferente do ambiente NodeJS, o que significa que alguns pacotes NPM não podem ser executados em Mini Apps.
Os desenvolvedores da Web trabalham com navegadores IE/Chrome no PC e navegadores Safari/Chrome, bem como vários WebViews em sistemas iOS ou Android em dispositivos móveis, enquanto os desenvolvedores de miniaplicativos trabalham com aplicativos móveis integrados ao PhizClip PhizClip SDK, e suítes de desenvolvimento.
2. Miniaplicativo vs HTML5, aplicativos nativos
2.1 Aplicativos móveis HTML5
O que costumamos chamar de HTML5 pode muitas vezes ser considerado um aplicativo da Web, em comparação com as páginas da Web que abrimos em nossos navegadores de desktop, mas com algum design responsivo e otimização de interação para tornar essas páginas mais adequadas para exibição em navegadores móveis. Por ser um aplicativo web, ainda é baseado em JavaScript, CSS e HTML. Por se basear em diversas pilhas de tecnologia front-end, a maior vantagem é que é rápido, simples e fácil de implementar, e existem diversos materiais técnicos disponíveis.
As desvantagens e vantagens do HTML5 são as mesmas, por exemplo, porque a tecnologia já está muito madura, para recém-chegados com pouca experiência em front-end, podem enfrentar uma variedade de frameworks, módulos, ferramentas de gerenciamento de tarefas, bibliotecas UI, etc.; além disso, em comparação com aplicativos nativos, o acesso às permissões do sistema (como recursos de cache de dados, status de comunicação de rede, etc.) é relativamente fraco, quando baixo desempenho. Ao carregar páginas com lógica complexa em dispositivos de baixo desempenho, atrasos e atrasos podem ser perceptível.
2.2 Aplicativos nativos
Os aplicativos nativos são implementados principalmente em Objective-C (ou Swift) e Java (ou Kotlin), as linguagens proprietárias do iOS e Android, em oposição aos aplicativos HTML5, que são implementados na tríade front-end. A maioria dos aplicativos nacionais comuns, como Phiz, Alipay, etc., são aplicativos nativos.
Por serem chamados de "aplicativos nativos", são como filhos do sistema operacional e, naturalmente, têm potencial para se destacar em termos de desempenho e experiência, além de diversas vantagens e recursos, como ricas bibliotecas de componentes e bom suporte de interface. No entanto, a maior desvantagem dos aplicativos nativos é que eles não podem ser desenvolvidos em várias plataformas. No mercado mainstream atual, por exemplo, tanto iOS quanto Android devem ser suportados.
2.3 Aplicativos híbridos
Um aplicativo híbrido é uma função nativa encapsulada em uma interface JS correspondente, e o aplicativo correspondente é desenvolvido usando HTML5 no front end (ou seja, HTML5 como conteúdo + aplicativo nativo como shell). O custo de desenvolvimento é baixo.
Para melhor responder ao objetivo de “estar próximo do utilizador”, algumas funções são implementadas através de Native Native e outras através de páginas HTML5, que é o que chamamos de aplicação híbrida.
2.4 Miniaplicativo
A rigor, os miniaplicativos não pertencem a nenhum dos três tipos de aplicativos acima. Mini-aplicativos são desenvolvidos principalmente através de JavaScript e CSS, uma tecnologia front-end comum, mas não são totalmente implementados em HTML, em diferentes sistemas operacionais
O código JavaScript é executado em JavaScriptCore para iOS e X5 JSCore para Android, e cada plataforma de miniaplicativo tem mais ou menos sua própria parte do núcleo, portanto, os componentes que renderizam a camada de visualização são diferentes.