Prévia do material em texto
1 Marcar para revisão JSX é uma sintaxe de extensão à linguagem JavaScript familiar ao XML. Com base em sua definição e características, é correto afirmar que: A JSX é a única linguagem disponível para desenvolvimento híbrido de aplicativos mobile. JSX não é uma linguagem, e sim uma extensão para arquivos JavaScript, a fim de diferenciá-los de arquivos JavaScript que utilizam a extensão ".js". JSX não permite que código responsável pela lógica dos componentes e mark-up de manipulação do DOM coexistam em um mesmo código. Durante processo de building da aplicação (seja uma aplicação web utilizando ReactJS ou um D aplicativo mobile empregando React Native), há uma etapa na qual código JSX é convertido em código JavaScript. JSX exerce papel de uma linguagem de estilos que permite a construção de componentes de E interface ricos.2 A respeito do React Developer Tools, é correto afirmar que: Trata-se de uma biblioteca que faz parte da instalação padrão do React Native e que não precisa ser A instalada individualmente. Permite a visualização e a depuração da hierarquia somente de componentes customizados. Quando usada em conjunto com ferramentas de terceiros, como ferramentas de logs, permite a análise de detalhes de cada componente contido no aplicativo. D Não permite depurar aplicativos por intermédio do próprio dispositivo móvel. Permite depurar aplicativos por meio do próprio dispositivo móvel ou de sua interface gráfica, que é E aberta após a inicialização da ferramenta.3 Sobre processo de transpilação realizado pelo React Native, assinale a alternativa correta: que React Native faz, na verdade, é compilar todo código-fonte, transformando-o em código A assembly. React Native é capaz de compilar seu código em um código nativo Android. Entretanto, isso não é possível em relação à plataforma iOS. React Native compila um aplicativo-base cuja função é executar código JavaScript no JavaScriptCore presente em cada dispositivo móvel. A partir disso, esse aplicativo faz a comunicação (ponte ou bridge) com os componentes nativos de cada plataforma. Ao final do processo de transpilação, é necessário, numa segunda etapa de building, utilizar os D compiladores específicos das linguagens de cada plataforma para então gerar um aplicativo que possa ser executado nelas. 0 resultado da transpilação varia de acordo com a plataforma para a qual se desenvolve. No caso da E plataforma Android, é gerado um código na linguagem Java. Já no iOS, é gerado código Objective- C.4 Indique a opção correspondente à lista de componentes nativos existentes na plataforma Android. A , , , ,,,, , , , , D ,, ,, > E , , ,,5 A gestão de pacotes e bibliotecas em um projeto React é realizada por gerenciadores de dependências, como, por exemplo, NPM e YARN. Tendo como base NPM, assinale a alternativa que corresponde a um comando NPM válido. A install expo-cli B node C yarn add react-base D react-native init E react-native run-android6 A linguagem utilizada no framework React Native é a JSX. A respeito dela, podemos afirmar que... Essa linguagem é interpretada diretamente pelos navegadores web tanto em dispositivos móveis A quanto em desktops. JSX é, a exemplo do HTML, uma linguagem composta apenas por tags pré-definidas. JSX é uma linguagem composta apenas por tags, sejam elas pré-definidas, como no HTML, ou criadas pelo desenvolvedor, como no XML. D A linguagem JSX é uma especificação da linguagem XML destinada à criação de aplicativos mobile. JSX é uma sintaxe de extensão da linguagem JavaScript que possui familiaridade com a XML. Tal E linguagem combina a lógica de componentes presente no JS e mark-up DOM em um único código.7 Há duas formas para se instalar um pacote utilizando NPM: local e global. Marque a alternativa correspondente ao comando para instalação local do Expo Cli. A install expo-cli B local install expo-cli npm install expo-cli D npm install expo-cli local E init expo-cli8 Pacotes instalados por intermédio de gerenciadores de pacotes são armazenados em que local? A Na memória do dispositivo móvel. Na pasta "node_modules", dentro da pasta do projeto. Na raiz do projeto. Na pasta Arquivos de Programas do ambiente Windows. No Linux, isso pode variar de acordo com a D distribuição, mas os pacotes normalmente são armazenados na pasta /opt/. local de armazenamento pode variar, devendo ser indicado no momento da instalação de cada E pacote.9 Em relação à hierarquia de componentes nativos, é correto afirmar que: A hierarquia de componentes em React Native é bastante flexível. Com isso, é possível utilizar em A conjunto diferentes componentes, inclusive como contêineres de outros componentes. Um componente não pode ser usado como contêiner. Consequentemente, ele não pode ter nenhum outro componente aninhado em si. Um componente só pode ser contêiner de outros componentes do mesmo tipo. Embora os componentes possam ser usados como contêiner de outros, há uma restrição para essa D regra em relação ao componente View, que só pode ser utilizado para outros componentes do mesmo tipo. A regra de hierarquias ou de componentes que podem ser utilizados em conjunto é bastante flexível. Entretanto, no caso de componentes de diferentes tipos serem utilizados em conjunto, não é possível E estilizá-los individualmente, havendo apenas a possibilidade de que filhos herdem os mesmos estilos dos elementos-pai.10 Em relação ao ambiente de programação para dispositivos móveis, marque a alternativa verdadeira. Para testar aplicativos Android, é necessário ter um dispositivo móvel que utilize tal sistema A operacional. Android Studio é a única IDE que pode ser usada para a codificação de aplicativos em React Native. A utilização de gerenciadores de pacotes facilita a configuração do ambiente de desenvolvimento. Com eles, nenhuma configuração se faz necessária em termos de softwares ou mesmo de configurações no sistema operacional. Quando utilizamos Expo CLI para criarmos nossas aplicações, não é possível, em um mesmo D criar aplicações utilizando React Native CLI. É possível existir um ambiente de desenvolvimento heterogêneo, não havendo restrições quanto à E utilização apenas de um gerenciador de pacotes, de uma mesma IDE ou mesmo de uma única forma de desenvolver e testar nossos aplicativos.