NativeScript - NativeScript

NativeScript
NativeScript logo.png
Autor (es) original (is) Telerik by Progress.
Desenvolvedor (s) Progresso e comunidade
lançamento inicial 2014 ( 2014 )
Versão estável
8.0.8 / 15 de junho de 2021 ; 3 meses atrás ( 2021-06-15 )
Repositório
Escrito em JavaScript , TypeScript
Plataforma Plataforma cruzada
Licença Licença Apache 2.0
Local na rede Internet www .nativescript .org

NativeScript é uma estrutura de código aberto para desenvolver aplicativos móveis nas plataformas Apple iOS e Android . Foi originalmente concebido e desenvolvido pela Progress. No final de 2019, a responsabilidade pelo projeto NativeScript foi assumida pelo parceiro de longa data da Progress, nStudio. Em dezembro de 2020, o nStudio também supervisionou a introdução do NativeScript na OpenJS Foundation como um projeto de incubação. Os aplicativos NativeScript são construídos usando JavaScript ou qualquer linguagem de programação que transpila para JavaScript, como TypeScript . NativeScript suporta as estruturas Angular e Vue JavaScript. Aplicativos móveis construídos com NativeScript resultam em aplicativos totalmente nativos, que usam as mesmas APIs como se fossem desenvolvidos em Xcode ou Android Studio . Além disso, os desenvolvedores de software podem reutilizar bibliotecas de terceiros de CocoaPods , Maven e npm.js em seus aplicativos móveis sem a necessidade de wrappers.

Desenvolvimento

NativeScript foi lançado publicamente primeiro em março de 2015. A versão 1.0.0 veio dois meses depois. A estrutura rapidamente ganhou popularidade atingindo 3.000 estrelas no github e mais de 1.500 seguidores no Twitter logo após o lançamento ao público. Enquanto isso, mais de 700 plug-ins estão disponíveis, que são oficialmente suportados pelo Progress ou provêm da comunidade de código aberto. O uso do Angular é uma abordagem de desenvolvimento opcional que permite que o código-fonte do aplicativo seja compartilhado entre a plataforma da web e a plataforma móvel.

Estrutura

NativeScript e todos os plug-ins necessários são instalados usando o gerenciador de pacotes npm . Os projetos são criados, configurados e compilados por meio da linha de comando ou de uma ferramenta GUI chamada NativeScript Sidekick. As interfaces de usuário independentes da plataforma são definidas usando arquivos XML . NativeScript então usa as abstrações descritas nos arquivos XML para chamar os elementos nativos da IU de cada plataforma. A lógica do aplicativo desenvolvida em Angular e TypeScript também pode ser desenvolvida independentemente da plataforma de destino. Um aplicativo móvel NativeScript é construído usando o tempo de execução e as ferramentas do node.js. O progresso visa uma proporção de 90% de código comum entre as plataformas iOS e Android.

Acesso direto a APIs e controles da plataforma nativa

As interfaces de usuário independentes da plataforma são definidas usando arquivos XML . NativeScript usa as estruturas de dados XML que representam a abstração de plataforma cruzada para acionar o código específico da plataforma que interage diretamente com os elementos nativos do sistema operacional de destino. Isso significa que uma chamada para a API NativeScript Button fornece uma abstração de IU para Button, que chama diretamente UIButton no iOS ou com.android.widget.Button no Android.

Embora o código-fonte do aplicativo seja escrito em JavaScript, TypeScript, Angular ou Vue.js, o código-fonte não é compilado ou sofre mutação. O código-fonte no estado em que se encontra é executado diretamente no dispositivo. Esta escolha arquitetônica elimina a necessidade de compilação cruzada ou transpilação. Além disso, embora o código-fonte do aplicativo seja escrito em linguagens comumente encontradas em um navegador (ou em um aplicativo móvel contido em WebView), os aplicativos NativeScript são executados diretamente no dispositivo nativo. Não há manipulação de DOM ou qualquer interação obrigatória do navegador.

Características notáveis

Reflexão de API nativa

Outro recurso notável é o uso de reflexão para lidar com endpoints de API nativos. Em vez de exigir camadas de ligação separadas entre NativeScript e cada API de plataforma móvel, NativeScript usa reflexão para obter informações e metadados sobre as APIs de plataforma nativa. Novos recursos adicionados a qualquer API de plataforma nativa estão disponíveis imediatamente.

Outra maneira pela qual o recurso de reflexão é usado é trabalhando com bibliotecas de terceiros. Como o JavaScript (ou TypeScript / Angular) pode se comunicar diretamente com o código nativo, não há necessidade de escrever camadas de ligação em Objective-C, Swift, Java ou Kotlin.

Integração angular

Com o lançamento do NativeScript 2.0, é possível usar o Angular para construir aplicativos móveis de plataforma cruzada. Além disso, ao usar o Angular com NativeScript, você tem a capacidade de compartilhar grandes blocos de código entre seus aplicativos da web e móveis.

Integração Vue.js

A estrutura Vue.js é compatível com NativeScript por meio do plug-in nativescript-vue.

Ferramentas e serviços de apoio

  • NativeScript Sidekick é uma interface gráfica do usuário que se baseia nos recursos fornecidos pelo NativeScript CLI. Com o Sidekick, um desenvolvedor pode aproveitar os modelos de aplicativos, construções baseadas em nuvem para iOS e Android e publicar aplicativos nas lojas de aplicativos públicas.
  • O NativeScript Playground permite que os desenvolvedores experimentem o NativeScript em um ambiente baseado na web e visualizem aplicativos em dispositivos físicos.
  • NativeScript Marketplace é uma fonte selecionada de plug-ins NativeScript, modelos de aplicativos pré-construídos e aplicativos de amostra executáveis.

Referências

links externos