Prévia do material em texto
Introdução ao desenvolvimento para dispositivos móveis https://br.ccm.net/faq/11106-sistemas-operacionais-para-celulares-e-dispositivos-moveis 1) Para que um dispositivo seja considerado móvel, ele deve ter uma série de características, como a capacidade de operar de forma fácil e eficaz, as funcionalidades disponíveis nele, as opções flexíveis de conexão e troca dados e a funcionalidade de se deslocar junto do usuário. Das opções disponíveis, indique a que representa um dispositivo móvel. A) Televisor smart. B) Refrigerador inteligente. C) Computador do tipo PC. D) Smartphone. E) Impressora WiFi. 2) O sistema operacional dos dispositivos móveis é um componente fundamental. Cada sistema operacional tem suas funcionalidades e características, sendo que essas diferenças influenciam o dispositivo em diversos sentidos, como usabilidade e disponibilidade de recursos. Indique qual das opções representa um sistema operacional móvel, ainda em uso na atualidade. A) iOS. B) Symbian OS. C) Windows Phone. D) Ubuntu Server. E) Windows 98. 3) Segundo Lee, Schneider e Schell (2005), uma das características mais importantes de um dispositivo móvel é a usabilidade, que se caracteriza pela capacidade de ser utilizado por diversos usuários, em diversos ambientes. Essa usabilidade pode ser afetada por diversas características, seja dos usuários, do ambiente ou do próprio dispositivo. Qual opção indica uma característica relacionada ao usuário? A) Tempo de inicialização. B) Tela sensível ao toque. C) Resistência a impactos. D) Tamanho e força. E) Condições do tempo. 4) A fragmentação de um sistema operacional se caracteriza pela distribuição da utilização de diversas versões desse sistema, sendo a maioria dessas versões já defasadas. Indique qual das opções representa um benefício da fragmentação de um sistema operacional móvel. A) Lentidão após atualização. B) Segurança comprometida. C) Atualizações constantes. D) Sistema desatualizado. E) Maior vida útil do dispositivo. 5) O mercado de dispositivos móveis não é novo, mas cresce muito a cada ano com uma concorrência acirrada, seja entre os fabricantes de dispositivos móveis ou entre os fabricantes de sistemas operacionais. Dentre as opções a seguir, indique a que apresenta um benefício gerado pela concorrência. A) Alta dos preços. B) Aplicações conservadoras. C) Desenvolvedores sem oportunidades. https://br.ccm.net/faq/11106-sistemas-operacionais-para-celulares-e-dispositivos-moveis D) Rápido ciclo de inovação. E) Dispositivos conservadores. Ambientes de desenvolvimento de aplicativos móveis 1) Ambientes integrados de desenvolvimento ajudam os programadores, disponibilizando funções como autocompletar e indicações de problema na sintaxe. Entre os itens a seguir, quais são exemplos de IDEs? A) Atom, iOS, IntelliJ e Android Studio. B) Atom, Xcode, Kotlin e Android Studio. C) Atom, Xcode, IntelliJ e TypeScript. D) Atom, Xcode, IntelliJ e Android Studio. E) Atom, Swift, IntelliJ e Android Studio. 2) Duas abordagens se destacam quando se fala em desenvolvimento para aplicativos móveis: o desenvolvimento nativo e o híbrido. Quanto ao desenvolvimento nativo, é correto afirmar que: A) aplicações são desenvolvidas para rodar em qualquer sistema operacional. B) o desempenho é inferior se comparado ao desenvolvimento híbrido. C) utilizam uma webview, a qual abre um navegador para exibir conteúdo ao usuário. D) as aplicações não podem acessar diretamente o GPS e o acelerômetro. E) as aplicações são desenvolvidas para um sistema operacional específico. 3) Algumas linguagens de programação têm características mais específicas. Java e Kotlin, por exemplo, são linguagens estaticamente tipadas. O que isso significa? A) A declaração dos tipos de dados é opcional, não interferindo na compilação do código. B) As categorias de dados a serem armazenados precisam ser explicitamente declaradas C) Os tipos de dados são implícitos, não sendo permitida a declaração estática. D) Essas linguagens só trabalham com dados dos tipos textuais e numéricos. E) Existe apenas um tipo genérico. 4) Algumas linguagens de programação são evoluções, outras adicionam funcionalidades, enquanto outras não apresentam muito em comum. Qual a correlação entre o Java e o JavaScript? A) O JavaScript é uma evolução do Java para aplicativos móveis. B) Ambas são linguagens que possibilitam o desenvolvimento de aplicativos híbridos. C) Ambas são linguagens de programação orientadas a objetos. D) JavaScript é um superconjunto de Java, agregando funções ao Java. E) Javascript é uma linguagem mais antiga e mais utilizada. 5) Diversos plug-ins e frameworks podem ser utilizados para apoiar o desenvolvimento para aplicativos móveis. Qual deles pode ser utilizado para facilitar a instalação de outras bibliotecas e componentes? A) Node.js. B) Npm. C) Apache Cordova. D) Ionic. E) Angula Design de interação para aplicações móveis 1) Google e Apple disponibilizam guias de recomendações para os desenvolvedores de aplicativos nessas plataformas. Essas diretrizes, ou guidelines, servem como referência para o design de aplicativos. Sobre as diretrizes de guidelines das plataformas Android e iOS, analise as afirmações a seguir: I. Segundo o guia do desenvolvedor Android, os usuários de aplicativos desta plataforma têm uma expectativa alta em relação à aparência e ao comportamento. Por isso, é necessário que os desenvolvedores sigam somente as diretrizes relacionadas aos padrões visuais e de navegação. II. No guia de desenvolvimento do iOS, um designer de aplicativo tem a possibilidade de oferecer um produto extraordinário, que estará no topo dos gráficos da App Store, mas, para isso, é preciso atender às altas expectativas de qualidade e funcionalidade. III. Para a Apple, três temas principais diferenciam a plataforma iOS de outras: clareza, deferência e profundidade. É correto apenas o que se afirma em: A) I, II e III. B) I e III. C) II e III. D) I. E) I e II. 2) Segundo o próprio guia do desenvolvedor Android, os usuários de aplicativos nessa plataforma têm uma expectativa alta em relação à aparência e ao comportamento. Para isso, é necessário que os desenvolvedores sigam as diretrizes do guia. Assinale a alternativa que cita alguns exemplos dessas diretrizes. A) Economia, usabilidade e animação. B) Performance, layout e usabilidade. C) Integração, layout e usabilidade. D) Usabilidade, animação e layout. E) Integração, economia e layout. 3) No guia de desenvolvimento do iOS, está escrito que, como designer de aplicativo, você tem a possibilidade de oferecer um produto extraordinário que estará no topo dos gráficos da App Store. Para isso, é preciso atender às altas expectativas de qualidade e funcionalidade. Para a Apple, três temas principais diferenciam a plataforma iOS de outras. Assinale a alternativa correta sobre os três temas. A) Clareza, deferência e profundidade. B) Clareza, layout e profundidade. C) Clareza, layout e desempenho. D) Desempenho, profundidade e layout. E) Profundidade, layout e animação. 4) Um dos temas abordados pela Apple é o conceito de profundidade. Sobre esse conceito, assinale a alternativa que está correta de acordo com o descrito no guia da Apple. A) Está relacionado ao conceito de tamanho em 3D dos widgets. B) São conceitos relacionados à profundidade do alcance da execução de um comando. C) É um conceito relacionado à camada de desempenho do aplicativo. D) São camadas visuais distintas que transmitem vitalidade e facilitam a compreensão. E) É um conceito novo da Apple. Segundo o guia do desenvolvedor Android, para fornecer aos usuários uma experiência mais familiar, é necessário usar os padrões mais comuns do guia. Assinale a alternativa correta sobre um dos padrões do guia. A) Aproveitaros recursos de APIs disponibilizadas na comunidade. B) Trabalhar com layout mínimo sem focar em outros requisitos. C) Reaproveitar o código, facilitando a manutenção posterior. D) Trabalhar com bibliotecas e padrões do fabricante do sistema operativo. E) Mostrar e ocultar a navegação do seu aplicativo com a gaveta de navegação https://brasil.uxdesign.cc/ux-e-chatbots-boas-pr%C3%A1ticas-para-desenhar-interfaces- conversacionais-9beb0ba293f2 https://www.devmedia.com.br/projetando-e-criando-aplicativos-para-dispositivos-moveis/30671 https://developer.apple.com/design/human-interface-guidelines/ https://developer.android.com/design?hl=pt-br WebApps 1) WebApps estão no mercado mobile para preencher uma lacuna deixada pelos aplicativos nativos de dispositivos móveis no que diz respeito à portabilidade e à facilidade de desenvolvimento. Sobre WebApps, site responsivo e aplicativos nativos, assinale a alternativa correta: A) Site responsivo e WebApp são a mesma coisa, mas o WebApp permite criar atalhos. B) Sites responsivos e WebApps não são acessíveis off-line. C) WebApps se assemelham a aplicativos, mas não interagem com elementos nativos dos dispositivos (ex: câmera e GPS). D) Aplicativos nativos são acessíveis em qualquer navegador e em qualquer tamanho de tela. E) WebApps são aplicativos que são disponíveis off-line e interagem com componentes nativos dos dispositivos. 2) Um recurso que pode ser adicionado ao seu aplicativo web é push notification. Esse tipo de notificação está disponível na maioria dos aplicativos comerciais. Sobre essas notificações, assinale a alternativa correta: A) Um exemplo de push notification são as mensagens exibidas para confirmar ou cancelar uma ação, por exemplo, ao fechar o aplicativo. B) Push notification são mensagens agendadas pelo usuário que, posteriormente, são exibidas, como, por exemplo, um despertador. C) É possível inserir push notification em PWA. Contudo, para isso, é necessário fazer uso de um emulador. D) Push notification é um resurso exclusivo do sistema operacional Android. E) Um exemplo de push notification são notificações de chegada de mensagens. 3) Um site responsivo já construído pode ser utilizado como porta de entrada para o desenvolvimento de um WebApp. Para isso, algumas ações precisam ser tomadas. Sobre essas ações, assinale a alternativa correta: A) É necessário criar um arquivo manifest.json, que é usado para disponibilizar o aplicativo nas https://brasil.uxdesign.cc/ux-e-chatbots-boas-pr%C3%A1ticas-para-desenhar-interfaces-conversacionais-9beb0ba293f2 https://brasil.uxdesign.cc/ux-e-chatbots-boas-pr%C3%A1ticas-para-desenhar-interfaces-conversacionais-9beb0ba293f2 https://www.devmedia.com.br/projetando-e-criando-aplicativos-para-dispositivos-moveis/30671 https://developer.apple.com/design/human-interface-guidelines/ https://developer.android.com/design?hl=pt-br lojas, por exemplo, no Google Play. B) É necessário criar um arquivo service worker para que seja exibida uma mensagem para o usuário instalar o aplicativo no dispositivo. C) O icone que será utilizado pelo aplicativo é informado no arquivo manifest.json. D) O arquivo manifest.json é utilizado para, antes de fazer um request, buscar as informações no cache para que seja feito um request apenas quando não existe no cache. E) É preciso, por fim, associar o manifest.json no site por meio da inserção de uma referência ao manifest.json no index.htm da sua aplicação. 4) Um WebApp também pode ser chamado de PWA. Porém, para ser considerado um PWA, o site precisa ter algumas características bem específicas. Sobre elas, assinale a alternativa correta: A) Progressivo: deve ser adaptável a qualquer computador desktop, celular e tablet, independente do tamanho de tela. B) Responsivo: deve funcionar para qualquer navegador. C) Reenvolvente: facilita o reengajamento com recursos nativos do dispositivo como, por exemplo, notificações push. D) Localizável: deve permitir compartilhamento por URL; não requer instalação complexa. E) Seguro: deve utilizar o protocolo HTTP para evitar invasões e garantir que o conteúdo não seja adulterado. 5) Uma das principais características de um PWA é estar sempre disponível mesmo off-line; para que isso seja possível, é necessário efetuar a programação de um componente específico no seu PWA, chamado de Service Worker. Assinale a alternativa que contém a descrição correta de alguma característica desse componente: A) Service Worker é um script executado pelo navegador em segundo plano. B) Os Service Workers não incluem recursos de notificações push. C) O Service Worker atua para que não seja possível interceptar e tratar solicitações de rede, respondendo com cache D) O Service Worker tem uma versão chamada CACHE_VERSION, que é utilizada para versionar o cache do aplicativo. E) O Service Worker precisa ser linkado ao site no arquivo propert.xml. https://waldyrfelix.com.br/guia-b%C3%A1sico-sobre-progressive-web-apps-4eaa42f17f63 https://developers.google.com/codelabs/pwa-training/pwa03--going-offline?hl=pt-br#0 https://brasil.uxdesign.cc/o-que-s%C3%A3o-progressive-web-apps-86e1b5306051 Tela principal e componentes de menu https://www.devmedia.com.br/componente-listview-no-android-studio/32700 1) Ao se adicionar um menu na tela do aplicativo, é importante preenchê-lo com itens que auxiliem o usuário a utilizar o aplicativo de forma intuitiva e adaptável às suas necessidades. Há um menu que é responsável por carregar o XML desse menu. Qual das alternativas a seguir apresenta esse menu que carrega o XML do menu? A) RadioGroup. B) Menu flutuante. https://waldyrfelix.com.br/guia-b%C3%A1sico-sobre-progressive-web-apps-4eaa42f17f63 https://developers.google.com/codelabs/pwa-training/pwa03--going-offline?hl=pt-br#0 https://brasil.uxdesign.cc/o-que-s%C3%A3o-progressive-web-apps-86e1b5306051 https://www.devmedia.com.br/componente-listview-no-android-studio/32700 C) OptionMenu. D) Menu Inflater. E) Menu contextual. 2) O uso de barra de ações ou do aplicativo tem sido uma boa prática no desenvolvimento de aplicativo. Ela é um dos elementos mais importantes da Activity do aplicativo, pois fornece uma estrutura visual e elementos interativos que são familiares aos usuários. Qual das alternativas a seguir é considerada uma barra dentro do aplicativo? A) Toolbar. B) ListView. C) ViewGroup. D) RadioButton. E) OptionMenu. 3) Após criar uma ActionBar no aplicativo, é importante sobrescrever três métodos. Qual método é executado sempre antes de o menu ser mostrado e que pode ser usado para habilitar/desabilitar itens ou modificar algum conteúdo dinamicamente? Assinale a alternativa correta. A) onOptionsItemSelected. B) onPrepareOptionsMenu. C) onCreateOptionsMenu. D) onMenuItemClick. E) onCreateContextMenu. 4) É o menu que exibe seus itens abaixo do texto âncora, se houver espaço disponível na tela do aplicativo, o menu é exibido acima do texto âncora. Seus itens aparecem na tela em uma lista vertical e sua importância é em ações estendidas que são relacionados com a Activity. Que menu é esse? Assinale a alternativa correta. A) Menu PopUp. B) Menu contextual. C) Menu Inflater. D) Option Menu. E) Navigation Drawer. 5) Os dispositivos móveis estão em todos os lares, e dentro desses dispositivos estão os aplicativos, que são uma extensão do mundo real direto pra a tela do celular. Sabe-se que os aplicativos têm funcionalidades e recursos que facilitam a vida de seus usuários. Os aplicativos são constituídos por menus e componentes que executam a aplicação. A tela principal do aplicativo é a cara do app. Esse componente é o padrão de design mais importante, que abriga botões com ações, tabs e menus para interagir com usuários. Assinale a alternativa que define o componente citado. A) OptionMenu. B) ActionBar. C) ViewGroup.D) Menu contextual. E) ListView Funcionalidades nativas 1) Quando se fala em desenvolvimento específico para cada plataforma, é possível chamar essa abordagem de desenvolvimento nativo. Sendo assim, marque a alternativa que melhor corresponde a esse tipo de desenvolvimento. A) É quando toda e qualquer funcionalidade de uma determinada plataforma fica à disposição, sem restrições, podendo implementar padrões de interface gráfica e de experiência com o usuário. B) É quando algumas funcionalidades de uma plataforma ficam à disposição, podendo implementar padrões específicos de interface gráfica. C) É quando toda e qualquer funcionalidade de uma determinada plataforma fica à disposição, com restrições relativamente consideráveis, sem a possibilidade de implementar algum padrão de experiência com o usuário. D) É quando algumas funcionalidades de uma plataforma ficam à disposição, sem a possibilidade de implementar algum padrão de interface gráfica. E) É quando algumas funcionalidades de uma determinada plataforma ficam à disposição, com algumas restrições quanto à possibilidade de implementar algum padrão de interface gráfica e de experiência com o usuário. 2) Além do desenvolvimento nativo, é possível elencar o desenvolvimento híbrido, o qual pode ser descrito como uma mistura do desenvolvimento nativo, utilizando os recursos mais complexos de hardware, com o desenvolvimento Web, utilizando HTML5, CSS e JavaScript. Sendo assim, marque a alternativa que melhor conceitualiza o desenvolvimento híbrido. A) Uma aplicação híbrida pode oferecer uma funcionalidade semelhante a um aplicativo. A maior desvantagem de usar uma aplicação híbrida é que a aplicação não pode ser vista por meio de uma loja de aplicativos. B) Um aplicativo híbrido é projetado para trabalhar em múltiplas plataformas, não podendo ser executado em um dispositivo que não utilize o mesmo sistema operacional. C) Um aplicativo híbrido necessita ser atualizado a cada nova atualização de versão do sistema operacional do dispositivo, sendo necessário realizar as atualizações via loja de aplicativos. D) Uma aplicação híbrida permite que seu uso seja semelhante ao de um aplicativo móvel. No entanto, deve ser executada em dispositivo que não utilize o mesmo sistema operacional. E) Uma aplicação híbrida é desenvolvida para funcionar em múltiplas plataformas, sendo que os custos de apoio a uma aplicação híbrida podem ser maiores que os custos de apoio a uma aplicação nativa. 3) Devido ao não acesso direto às funcionalidades nativas do dispositivo, algumas das interações mais específicas, serão, por padrão, controladas pelo auxílio de alguns plugins e/ou ferramentas desenvolvidas para o sistema operacional específico. Qual das opções a seguir é um possível exemplo de framework que possibilita a comunicação com as funcionalidades nativas do dispositivo? A) Ionic Framework. B) Apache Cordova. C) APIs do Android. D) SDK do Java. E) Framework AngularJS. 4) A grande vantagem em utilizar o Cordova é devido ao pacote de plugins que ele fornece. Além dos plugins oferecidos pelo próprio framework, há também outros plugins de terceiros que são compatíveis com a plataforma. Conforme a arquitetura de uma aplicação Cordova, quais são os seus principais componentes? A) LocalStorage, IndexedDB e WebSQL. B) Web App, LocalStorage e WebSQL. C) IndexedDB, WebView e Cordova Plugins. D) Web App, WebView e Cordova Plugins. E) Web App, WebView e LocalStorage. 5 Existe um conjunto de plugins padrões básicos, os quais fornecem à aplicação a possibilidade de acessar os recursos do dispositivo, como o acelerômetro, o GPS, a bateria, a câmera, os contatos, etc. Como é chamado esse conjunto de plugins, conforme a documentação oficial do Apache Cordova? A) Core Plugins. B) Plugins Framework. C) NPM Plugins. D) Plugins APIs Guide. E) Cordova Plugins NPM. https://danielsogl.gitbook.io/awesome-cordova-plugins/ https://simtec.fatectq.edu.br/index.php/simtec/article/view/269 https://www.youtube.com/embed/2R9oXqPYszA https://cordova.apache.org/ https://capacitorjs.com/ https://revista.fatectq.edu.br/interfacetecnologica/pt_BR/article/view/333 https://ionicframework.com/docs/native Persistência de dados em dispositivos móveis 1) Ao utilizar a plataforma Google para o desenvolvimento de aplicativos móveis, existem algumas possibilidades de armazenamento dos dados do aplicativo. Segundo a Google, quais seriam as opções possíveis de utilizar para armazenar os dados em uma aplicação Android? A) Shared preferences, armazenamento externo, banco de dados relacional, conexão de rede e servidores internos. B) Shared preferences, armazenamento interno, banco de dados relacional, conexão de rede e servidores externos. C) Preferences shared, armazenamento externo, banco de dados não relacional, conexão de Internet e servidores externos. D) Preferences shared, armazenamento interno, banco de dados não relacional, conexão de Internet e servidores internos. E) Shared preferences, armazenamento interno, banco de dados relacional, conexão de rede e servidores internos. https://danielsogl.gitbook.io/awesome-cordova-plugins/ https://simtec.fatectq.edu.br/index.php/simtec/article/view/269 https://www.youtube.com/embed/2R9oXqPYszA https://cordova.apache.org/ https://capacitorjs.com/ https://revista.fatectq.edu.br/interfacetecnologica/pt_BR/article/view/333 https://ionicframework.com/docs/native 2) A persistência de dados pode ser conceitualizada como o armazenamento coerente e confiável das informações em um sistema de armazenamento de dados. Em outras palavras, como poderia ser um possível conceito de persistência de dados para dispositivos móveis? A) Permitir que as informações manipuladas em um aplicativo deixem de existir quando a aplicação é encerrada. B) Permitir que os dados sejam salvos em memória volátil quando a aplicação for encerrada. C) Garantir que as informações manipuladas em memória não volátil sejam salvas quando a aplicação for encerrada. D) Permitir que as informações manipuladas em um aplicativo sejam salvas em meio volátil da memória quando a aplicação for encerrada. E) Garantir que os dados que estão sendo manipulados em um aplicativo não sejam perdidos quando a aplicação for encerrada. 3) Um aplicativo móvel deve ser capaz de lidar com a troca de dados em ambientes heterogêneos e com baixa confiabilidade, de maneira segura, consistente e com desempenho. Quando se fala em segurança da informação, quais são os três aspectos fundamentais de serem observados? A) Confidencialidade, integridade e disponibilidade. B) Confiabilidade, estabilidade e autoridade. C) Confidencialidade, disponibilidade e veracidade. D) Confiabilidade, veracidade e homogeneidade. E) Confidencialidade, homogeneidade e aplicabilidade. 4) As propriedades básicas de uma transação são popularmente conhecidas pelo acrônimo ACID (atomicidade, consistência, integridade e durabilidade). Qual alternativa representa uma informação correta? A) As informações de uma transação atômica devem levar um banco de um estado consistente para outro estado consistente. B) Uma transação atômica deve ser executada de maneira isolada. C) Uma transação atômica tem por conceito garantir a durabilidade das alterações aplicadas a um banco de dados. D) Uma transação atômica tem por conceito permitir a veracidade das informações manipuladas em um banco de dados. E) Uma transação atômica tem por conceito ser uma unidade de processamento que é ou não realizada de forma integral. 5 SQLite é uma das ferramentas mais utilizadas para armazenamento de dados em aplicativos móveis. Se houvesse uma tabela chamada “TabExer”, com os campos (id int primary key, enunciado text, gabarito text) e você quisesse inserir um registro nessa tabela, qual dos comandosvocê deveria executar? A) sqlite> INSERT INTO TabExer (id, enunciado, gabarito) values (1, 60 “A”). B) sqlite> INSERT INTO TabExer (id, enunciado, gabarito) values (1, “Nesta questão...”, 9). C) sqlite> INSERT INTO TabExer (id, enunciado, gabarito) values (1, “Nesta questão...”, “A”). D) sqlite> INSERT INTO TabExer (id, enunciado, gabarito) values (1, 10, “A”). E) sqlite> INSERT INTO TabExer (id, enunciado, gabarito) values (“1”, “Nesta questão...”, 8). https://www.youtube.com/embed/GHU7qobOhKk https://www.devmedia.com.br/sqlite-o-pequeno-notavel/7249 https://www.json.org/json-pt.html https://www.sqlite.org/index.html Fornecimento de recursos 1) Ao desenvolver um aplicativo para o Android, é fundamental conhecer os recursos que estão disponíveis e saber como utilizá-los na aplicação. Também é possível desenvolver recursos próprios que serão utilizados por outros aplicativos. Sobre o conceito de recursos, é correto afirmar: A) Recursos são disponibilizados pelo Android Studio, ambiente de desenvolvimento do Android. B) São exemplos de recursos originais, por exemplo, os relacionados a layout de interface. C) Os recursos originais somente podem ser utilizados sem possibilidades de estender suas funcionalidades. D) Na verdade, no Android não existem recursos originais disponíveis. E) Para utilizar recursos no Android, é preciso instalar bibliotecas adicionais. 2) Um dos recursos que se pode trabalhar no Android são as strings. Por exemplo, se quiser padronizar o rótulo de um botão para que todo lugar em que ele seja exibido fique com a mesma informação, pode-se fazer isso alterando o arquivo string.xml. Acerca do arquivo string.xml, é correto afirmar: A) É importante saber que existe esse recurso porque é assim que o Android exibe toda e qualquer mensagem da aplicação. B) O arquivo string.xml fica localizado no diretório de resources e é utilizado para armazenar strings e seus valores. C) O arquivo string.xml, apesar de referenciar as strings e seus valores, não é considerado um recurso. D) Não existe a necessidade de realizar a identificação ID de arquivos string, diferentemente de outros recursos. E) O arquivo string.xml jamais deve ser alterado, pois podem ocorrer diversos problemas com mensagens na aplicação. 3) Em todo projeto Android existe a necessidade de externalizar alguns itens, por exemplo, imagens, strings, para que seja possível mantê-los independentes e para que possam suportar configuração específica, idioma do dispositivos, tamanho de tela, orientação, etc. A pasta res, utiliza várias subpastas que, juntas, classificam os resources por tipo e configuração. Com base nessa explicação, é correto afirmar: A) A pasta res serve somente para organizar os arquivos necessários para externalizar no projeto Android. B) A pasta res possui subpastas e a classificação dos recursos por tipo é opcional nessa estrutura. C) A subdivisão em subpastas conforme a classificação dos recursos é importante para organização e localização. D) Manipulação de câmera é um exemplo de recurso que existe dentro da pasta res e serve para https://www.youtube.com/embed/GHU7qobOhKk https://www.devmedia.com.br/sqlite-o-pequeno-notavel/7249 https://www.json.org/json-pt.html https://www.sqlite.org/index.html armazenar esses recursos. E) A pasta res somente é gerada no projeto quando existem arquivos necessários para externalizar. 4) A classe R.java é gerada automaticamente pelo plugin da IDE de desenvolvimento. Essa classe tem papel fundamental, pois ela é responsável por fazer o relacionamento entre os arquivos .xml e os .java do projeto. Essa classe não pode, de forma alguma, ser alterada, e a sua alteração só será feita pela geração de uma nova compilação do projeto. Não é preciso se preocupar com isso, mas é importante conhecer seus métodos. Escolha a alternativa que está correta acerca da finalidade da classe R.java: A) A classe R.java tem o objetivo de manter os arquivos .xml e os .java do projeto intactos. B) A classe R.java é um recurso do Android e tem como finalidade apoiar a sincronização entre arquivos. C) A classe R.java tem métodos que facilitam gerar sincronismo na aplicação, sem necessidade de conhecer melhor seus recursos. D) A classe R.java é tem por finalidade manter a sincronia entre o arquivo .xml do projeto e o .java do desenvolvimento. E) A classe R.java tem por objetivo manter objetos estáticos do projeto e por isso não pode ser alterada. 5) Os recursos de string fornecem strings de texto para o aplicativo com estilo e formatação de texto opcional. Existem três tipos de recursos que podem fornecer strings ao seu aplicativo. A utilização do recurso de strings permite: A) criar as varáveis utilizadas no aplicativo. B) criar recursos de strings reutilizáveis para aplicação. C) criar mensagens de texto padronizadas. D) definir o layout de strings, por exempo, fonte. E) padronizar nomes de telas da aplicação. https://www.youtube.com/embed/KLaY0kT5Qt0 https://medium.com/android-dev-br/estrutura-de-resources-para-android-alternativa-2869d99a41f7 https://developer.android.com/guide/topics/resources/providing-resources?hl=pt-br#Accessing Introdução ao método Scrum 1) Uma equipe de desenvolvimento planeja adotar o método Scrum e está definindo quem executará cada papel. Para definir o product owner, eles devem considerar: A) que o product owner deve ter maior conhecimento em relação ao negócio do cliente, assim, a chance de se obter sucesso será. B) que a melhor decisão é a definição de um comitê com as principais partes interessadas, dessa forma, esse comitê representa o product owner do projeto. C) que o product owner do time deve ser o gerente da equipe, pela sua posição hierárquica. Se alguém tem que definir algo, tem que ser alguém com poder. D) que deve ocorrer um sorteio para definir quem deverá ser o product owner, afinal,qualquer membro do time está apto a sê-lo. E) que o product owner pode ser dispensado, pois será utilizado um sistema informatizado para https://www.youtube.com/embed/KLaY0kT5Qt0 https://medium.com/android-dev-br/estrutura-de-resources-para-android-alternativa-2869d99a41f7 https://developer.android.com/guide/topics/resources/providing-resources?hl=pt-br#Accessing registro das solicitações. 2) Na reunião de planejamento, o time Scrum tem por objetivo gerar um artefato que é muito importante para o método. Qual o nome desse artefato? A) Backlog do produto. B) Definição de pronto. C) Backlog da sprint. D) Incremento. E) Produto. 3) O evento com mais ocorrências no método Scrum é a reunião diária, já que irá ocorrer em todos os dias de trabalho de uma sprint. Em relação às recomendações para a execução da reunião diária, é possível afirmar que: A) a participação dos membros é voluntária. B) um membro pode utilizar a reunião para apresentar um código-fonte que esteja com dúvida, obtendo o apoio para a resolução. C) deve ter a duração máxima de 15 minutos e ocorrer no mesmo horário e local. D) sua duração depende da quantidade de problemas que ocorreram no dia, sem limitação de tempo. E) pode ser utilizada para fornecer treinamento para o time. 4) Entre os papéis envolvidos no método Scrum, o scrum master tem uma missão que envolve liderança, garantindo que o time seja autogerenciado. O scrum master é um facilitador para o time de desenvolvimento. Assinale a alternativa que contém as suas atribuições. A) Garantir o sucesso da sprint. Se ela falhar, a responsabilidade é do scrum master. B) O scrum master deve ser responsável por determinar o ritmo do time. C) Os eventos só deverão ocorrer se o scrum master tiver disponibilidade de participar. D) Dividir com até três scrum masters a condução dos trabalhos em uma sprint. E) Atuar como líder, blindando o time de interferências externas e removendo impedimentos. 5) Parauma condução exemplar de uma sprint e para a obtenção dos melhores resultados com o método Scrum, algumas regras precisam ser cumpridas. Assinale a alternativa correta. A) A sprint terá o tamanho (em dias) que a equipe precisar para entregar o produto. B) Uma sprint pode ter até 60 dias de execução. C) A sprint pode ser prorrogada sempre que a equipe não tiver conseguido concluir o trabalho. D) A sprint deve ter, no máximo, 30 dias de duração. E) Uma nova sprint deve iniciar três dias antes do encerramento da anterior https://www.devmedia.com.br/introducao-ao-scrum/33724 https://www.atlassian.com/br/agile/scrum/backlogs Scrum e o planejamento 1) Uma importante ferramenta utilizada na gestão de projetos é a Planning Poker. Sobre ela, analise as afirmativas a seguir: I. É um método que privilegia a opinião do "jogador" ganhador em detrimento da opinião dos demais. II. O "jogo" é composto por cartas com números que representam esforço estimado. III. O "jogo" tem 356 cartas. IV. Há uma forte interação entre os "jogadores" e product owners, que discutem questões do projeto antes de realizarem suas jogadas. https://www.devmedia.com.br/introducao-ao-scrum/33724 https://www.atlassian.com/br/agile/scrum/backlogs Estão corretas as afirmativas: A) II e IV. B) I e III. C) I e II. D) III e IV. E) I e IV. 2) Em todos os projetos que utilizam a metodologia ágil Scrum, existe uma divisão das atividades a serem realizadas em Sprints. Em um Sprint de desenvolvimento, o Scrum Master solicita à equipe uma reunião para alinhar as atividades. Nessa reunião, os integrantes foram convidados a avaliar a complexidade das Histórias de Usuários e apresentar uma nota que é representada pela escolha de uma carta de baralho. Dentro do conceito de Scrum, dá-se o nome a essa reunião de: A) Planning Poker. B) CALL. C) Sprints. D) Kick-off. E) Daily Scrum. 3) A análise por ponto de função é realizada como um estratégia para definir estimativas em projetos ágeis de software. A partir do conceito de análise de pontos por função, analise as seguintes afirmativas: I. É feita com base na especificação funcional do software. II. Define uma pontuação para determinadas características do software, de acordo com seu nível de complexidade. III. O valor apresentado pela análise de pontos por função é a quantidade de dias de duração do projeto. IV. A análise de pontos por função é restrita a softwares orientados a objetos. V. Avalia entradas, saídas e consultas dos usuários, além dos dados utilizados pelo sistema. Quais afirmativas estão corretas? A) I e II. B) II e III. C) III, IV e V. D) I, II e V. E) I, III e V. 4) A análise de ponto por função é utilizada como estratégia para estimar a complexidade de um projeto, principamente quando se trata de um projeto de escala corporatva. A análise de pontos por função é um método que: A) permite medir projetos de desenvolvimento e manutenção de software e que depende da tecnologia utilizada na implementação. O tipo de tecnologia é um fator decisivo no projeto. B) padroniza a medição de projetos de desenvolvimento de software. O objetivo é definir uma estimativa de tamanho, chamada de pontos de função, que considera as funcionalidades efetivadas a partir da ótica do usuário. C) mede a funcionalidade requisitada com foco no analista de desenvolvimento e também nos aspectos do gerente de projetos, além de considerar fatores de complexidade da tecnologia adotada. D) estima o tamanho do pacote de software adquirido, analisando o número de funções desenvolvidas com parâmetros de retorno diferente de nulo (null) e também em outros parâmetros que indicam erro de código. E) verifica se as telas dos sistemas estão de acordo com a quantidade mínima segundo o tamanho do código fonte e outros aspectos técnicos, além da tecnologia que está sendo adotada no projeto. 5) Todo projeto de criação de um software tem diversas fases de acordo com a metodologia escolhida. Leve em consideração uma empresa desenvolvedora de software que tem um processo de software composto pelas seguintes fases: Levantamento de Requisitos, Análise de Software, Projeto de Software, Codificação, Testes e Entrega do Software. Além disso, tem a cultura de estimar seus projetos utilizando Análise de Pontos por Função. Caso essa organização esteja interessada na criação de uma referência de estimativas de seus projetos, a contagem de pontos por função seria mais indicada em qual momento? A) Na etapa de Análise do Software, pois, dessa forma, o gerente de projetos poderá estimar o tempo restante do projeto com maior precisão e clareza se comparado a outras estratégias. B) No início do projeto, na fase de Levantamento de Requisitos, pois, assim, a equipe já deve ter diversos elementos para determinar o prazo de entrega do projeto e também de cada fase. C) Durante a etapa de Projeto de Software, pois já existe um grande entendimento dos requisitos e, como o software será desenvolvido em seguida, o valor da contagem obtido pode ser utilizado para estimar o tempo do projeto. D) No início do projeto, para poder estimar a duração do projeto e elaborar um cronograma inicial, depois do detalhamento dos requisitos para refinar o cronograma e após o software ter sido concluído para, com base no tamanho real, recalcular a taxa média de produtividade da organização. E) Durante a etapa de Codificação, pois os desenvolvedores, por conhecerem o produto e a complexidade de implementar os requisitos, são os mais indicados, dentre os membros do grupo de desenvolvimento, para apontar o prazo para o término do projeto e de conclusão das atividades. https://www.youtube.com/embed/0UgmuLn9VRQ https://www.scrum.org/ https://www.youtube.com/embed/Y1xqpvnTFvM https://www.devmedia.com.br/scrum-e-planning-poker-analise-de-estimativa-de-software/31019 chrome- extension://efaidnbmnnnibpcajpcglclefindmkaj/https://scrumguides.org/docs/scrumguide/v2017/20 17-Scrum-Guide-Portuguese-Brazilian.pdf Scrum e design thinking 1) O design thinking é muito importante dentro do contexto de desenvolvimento de softwares, atuando em harmonia com o Scrum. Pensando nisso, é correto afirmar que o design thinking é: A) uma metodologia ágil. B) uma abordagem utilizada em projetos. C) um software de design. D) uma plataforma de bibliotecas de design. https://www.youtube.com/embed/0UgmuLn9VRQ https://www.scrum.org/ https://www.youtube.com/embed/Y1xqpvnTFvM https://www.devmedia.com.br/scrum-e-planning-poker-analise-de-estimativa-de-software/31019 E) um dos quatro princípios do design. 2) Entre as fases existentes no design thinking, podemos destacar: empatia, definição, idealização, protótipos e testes. Qual dessas fases se refere à eleição de caminhos para solução de problemas? A) Idealização. B) Protótipos. C) Definição. D) Testes. E) Empatia. 3) Existem algumas estratégias que você pode usar para encontrar uma solução para um problema. Uma delas é utilizando o design thinking, em que, em vez de impor o seu ponto de vista, são consideradas opiniões de todos os interessados no projeto. Considerando essas informações, é correto afirmar que um profissional terá êxito como design thinker quando for capaz de: A) fazer perguntas estratégicas ao gestor especialista da área e com ele obter os dados necessários a fim de acertar na hora de desenvolver um software. B) criar um plano de controle de métodos com base em experiências anteriores de sucesso para outros clientes, sendo estes tanto pessoas físicas quanto pessoas jurídicas. C) extrair dados de grande valor, por meio da coleta minuciosa de informações junto aos stakeholders do projeto, a fim de adquirir insights para o desenvolvimento do software. D) inventariar corretamente as prioridades do problema e fazer um modelo de dados grande o suficiente para contertodas as respostas possíveis para públicos diferentes. E) criar relatórios consistentes sobre como os insights podem auxiliar a empresa a desenvolver ferramentas estratégicas de gestão de pessoas. 4) Considere as afirmações sobre design thinking e assinale V para a(s) verdadeira(s) e F para a(s) falsa(s). ( ) Ao usar da empatia e se colocar no lugar do público que vai ler os dados, é mais fácil entender qual forma de design deve ser utilizada. ( ) Idealização é definir concretamente quais problemas devem ser resolvidos após sintetizar, compilar e analisar os dados. ( ) Criar protótipos é o mesmo que pegar as conclusões e as soluções obtidas a partir dos dados já analisados e colocá-las em prática. ( ) A fase de testes é a fase em que se decide quais caminhos serão seguidos nas próximas etapas. Assinale a alternativa que indica a sequência correta: A) V, F, V, F. B) F, V, F, V. C) V, V, F, F. D) F, F, V, V. E) V, F, F, V. O processo de elicitação de requisitos é definido por algumas etapas essenciais que organizam a coleta de informações de modo a agilizar o desenvolvimento de um software. Quais são essas etapas? A) Estabelecer objetivos, entender o background, organizar o conhecimento e comprar ferramentas. B) Estabelecer objetivos, entender o background, organizar arquivos do software e coletar requisitos. C) Estabelecer reuniões com fornecedores, entender o background, organizar o conhecimento e coletar requisitos. D) Estabelecer objetivos, entender o background, organizar o conhecimento e coletar relatórios. E) Estabelecer objetivos, entender o background, organizar o conhecimento e coletar requisitos. https://www.youtube.com/embed/5xRSOltxXnU https://softdesign.com.br/blog/design-thinking-no-desenvolvimento-de-software/ Scrum e a modelagem de software 1) A linguagem UML oferece uma maneira padronizada de documentar e projetar sistemas. A https://www.youtube.com/embed/5xRSOltxXnU https://softdesign.com.br/blog/design-thinking-no-desenvolvimento-de-software/ respeito das características da linguagem, leia as assertivas a seguir: I - A UML possibilita que detalhes de implementação possam ser abstraídos para fins de facilitar a comunicação com outros setores de negócio ou com o próprio cliente. II - Os diagramas disponíveis na UML permitem que tanto o funcionamento de um sistema como a sua implementação possam ser representados. III - Cada diagrama UML tem o seu escopo de uso bem definido, de maneira a evitar que um elemento de diagrama seja usado em um diagama de outro tipo. IV - Por ser uma linguagem estritamente gráfica, a UML possibilita que o entendimento sobre um sistema seja formalizado de maneira detalhada e completa, o que viabiliza a ampla compreensão do mesmo. Quais assertivas estão corretas? A) I e II. B) II e IV. C) I, II, e III. D) II, III e IV. E) II e III. Diante da publicação do manifesto ágil, a relevância do uso da linguagem UML para a documentação de sistemas passou a ser reavaliada. Marque V para verdadeiro e F para falso nos itens que tratam do uso da UML no contexto da metodologia ágil Scrum. Depois, selecione a sequência correta. ( ) Por ser do tipo comportamental, o uso de diagramas de sequência no Scrum oferece uma garantia da correta execução do software. ( ) O uso de diagramas de classe no Scrum minimiza o impacto que alterações nos requisitos do sistema geram sobre sua arquitetura. ( ) Ainda que os diagramas UML disponíveis estejam sendo introduzidos no Scrum, seu caráter iterativo e incremental não foi comprometido. ( ) As propostas de mesclagem do Scrum com documentação UML ainda têm sido avaliadas e carecem de um conscenso quanto à viabilidade. A) V - V - V - F B) F - F - F - V C) F - V - F - F D) V - F - F - V E) V - V - F - F 3) Diagrama de classes UML é um poderoso recurso para a representação de conceitos de negócio e interações entre os seus diversos elementos. A respeito desse diagrama, marque a alternativa correta. A) Dois objetos com propriedades contendo valores distintos devem ser instâncias de duas classes distintas, respectivamente. B) O número de objetos que podem ser gerados a partir de um diagrama está limitado ao número de classes que foi representado nele. C) A definição do tipo de relacionamento entre um par de classes depende de como uma afeta o ciclo de vida da outra. D) Dois objetos distintos gerados a partir de uma mesma classe devem apresentar métodos ou comportamentos também distintos. E) Dois objetos gerados a partir de duas classes respectivas que não têm relacionamento entre si podem interagir por meio de seus métodos. 4) Outros dois diagramas UML amplamente utilizados na documentação de sistemas são o diagrama de componentes e o diagrama de casos de uso. A respeito desses dois diagramas, assinale a alternativa correta. A) Em um diagrama de caso de uso, cada ator é representado uma única vez em associação com cada uma das funcionalidades que ele pode acionar B) O ambiente onde um sistema é executado é representado em um diagrama de componentes em associação com os demais componentes do sistema. C) A forma como um componente é implementado é representada em conjunto com os seus relacionamentos com os demais componentes no diagrama. D) O escopo de atuação de um ator e de funcionamento de um caso de uso é delimitado pelas fronteiras do sistema. E) A presença de elementos de um diagrama de caso de uso em um diagrama de componentes indica falha na modelagem e violação dos padrões UML. 5) Em um cenário em que um usuário precisa fazer uma consulta em um sistema sobre a situação do seu título de eleitor, os seguintes elementos foram identificados em um diagrama de sequência: 1. Atores: usuario. 2. Objetos: telaConsulta, bancoDeDados. Assinale a alternativa que indica o fluxo correto de mensagens até que o usuário receba uma mensagem de erro indicando que seu título eleitoral está com problemas (o símbolo -> está sendo usado de forma simplificada para indicar o envio de uma mensagem). A) 1. usuario -> envia título -> bancoDeDados. 2. telaConsulta -> envia título -> bancoDeDados. 3. bancoDeDados -> envia erro -> telaConsulta. 4. telaConsulta -> envia erro -> usuario. B) 1. usuario -> envia título -> telaConsulta. 2. telaConsulta -> envia título -> bancoDeDados. 3. telaConsulta -> envia erro -> usuario. 4. bancoDeDados -> envia erro -> telaConsulta. C)1. usuario -> envia título -> bancoDeDados. 2. bancoDeDados -> envia título -> telaConsulta. 3. telaConsulta -> envia erro -> bancoDeDados. 4. bancoDeDados -> envia erro -> usuario. D) 1. usuario -> envia título -> telaConsulta. 2. telaConsulta -> envia erro -> bancoDeDados. 3. telaConsulta -> envia erro -> telaConsulta. 4. telaConsulta -> envia erro -> usuario. E) 1. usuario -> envia título -> telaConsulta. 2. telaConsulta -> envia título -> bancoDeDados. 3. bancoDeDados -> envia erro -> telaConsulta. 4. telaConsulta -> envia erro -> usuario. A interface de usuário é um tema central no desenvolvimento de aplicações móveis. Por isso, os guias disponibilizados pelos fabricantes das plataformas Android e Apple trazem muitas recomendações, as quais estão diretamente relacionadas a esse tema. Você, como desenvolvedor de aplicativos, recebeu um novo projeto. Veja a seguir: O projeto que você recebeu trata de um novo aplicativo que será utilizado, em sua grande maioria, por um público de maior idade. Sendo assim, alguns cuidados relacionados à interface de usuário devem ser considerados. Para isso, você irá consultar as recomendações dos guias de Android e iOS. Identifique e justifique as recomendações que devem ser seguidas para evitar problemas com o público-alvo. a. Tanto no guia de Android quanto no de iOS, o item clareza e fluidez aborda que:– o texto deve ser legível em todos os tamanhos; – os ícones devem ser precisos e lúcidos; – deve-se fazer uso de adornos para dar destaque e chamar atenção do usuário;– o foco principal deve ser na funcionalidade. Espaço negativo, cor, fontes, gráficos e elementos de interface realçam sutilmente conteúdos importantes, além de transmitir interatividade. Isso é fundamental para um público que tem dificuldade para ler e ouvir. b. Tanto no guia de Android quanto no de iOS, o item clareza e fluidez aborda que: – o texto deve ser legível no Desktop; – os ícones devem ser precisos e lúcidos; – os adornos devem ser sutis e apropriados;– o foco deve ser aguçado na funcionalidade. Espaço negativo, cor, fontes, gráficos e elementos de interface realçam abundantemente conteúdos importantes, além de transmitir interatividade. Isso é fundamental para um público que tem dificuldade para ler e enxergar. c. Tanto no guia de Android quanto no de iOS, o item clareza e fluidez aborda que: – o texto deve ser legível em todos os tamanhos e dispositivos; – os ícones devem ser com cores fortes para chamar atenção; – os adornos devem ser fortes e apropriados;– o foco deve ser aguçado na funcionalidade. Espaço negativo, cor, fontes, gráficos e elementos de interface realçam sutilmente conteúdos importantes, além de transmitir interatividade. Isso é fundamental para um público que tem dificuldade para ler e enxergar. d. Tanto no guia de Android quanto no de iOS, o item clareza e fluidez aborda que: – o texto deve ser legível em todos os tamanhos; – os ícones devem ser grandes e com cores fortes para dar destaque; – os adornos devem ser sutis e apropriados;– o foco deve ser aguçado na funcionalidade. Espaço negativo, cor, fontes, gráficos e elementos de interface realçam sutilmente conteúdos importantes, além de transmitir interatividade. Isso é fundamental para um público que tem dificuldade para ler. e. Tanto no guia de Android quanto no de iOS, o item clareza e fluidez aborda que: – o texto deve ser legível em todos os tamanhos; – os ícones devem ser precisos e lúcidos; – os adornos devem ser sutis e apropriados;– o foco deve ser aguçado na funcionalidade. Espaço negativo, cor, fontes, gráficos e elementos de interface realçam sutilmente conteúdos importantes, além de transmitir interatividade. Isso é fundamental para um público que tem dificuldade para ler e enxergar. Ao construir seus aplicativos, você percebe que muitas vezes é necessário escrever mais de uma string referente às mensagens a serem exibidas na tela. Esse tipo de problema pode ser facilmente solucionado utilizando o conceito de recursos no Android. Assim, como um desenvolvedor que procura utilizar os recursos da plataforma Android, você vai utilizar os recursos para resolver isso. Enquanto profissional de desenvolvimento de aplicativos, é importante conhecer bem os recursos disponíveis pela plataforma do Android e principalmente como estes funcionam e podem ser implementados. Você trabalha como desenvolvedor e se depara com uma situação como a mencionada anteriormente. Sinalize uma alternativa de correção que poderia resolver essa questão, utilizando a estrutura de recursos para solucioná-la. a. Os arquivos .xml com os recursos ficam localizados no diretório res; o arquivo kernel.xml mantém todas as strings que podem ser referenciadas, por exemplo, em mensagens de tela do aplicativo. Sendo assim, uma alternativa seria criar uma string no arquivo .xml, dessa forma não existiria a necessidade de alteração no código. b. Os arquivos .html com os recursos ficam localizados no diretório res; o arquivo strings.php mantém todas as strings que podem ser referenciadas, por exemplo, em mensagens de tela do aplicativo. Sendo assim, uma alternativa seria criar duas strings diferentes no arquivo .xml, dessa forma não existiria a necessidade de alteração no código. c. Os arquivos .xml com os recursos ficam localizados no diretório res; o arquivo strings.xml mantém todas as strings que podem ser referenciadas, por exemplo, em mensagens de tela do aplicativo. Sendo assim, uma alternativa seria criar duas strings diferentes no arquivo .xml, dessa forma não existiria a necessidade de alteração no código. d. Os arquivos .xml com os recursos ficam localizados no diretório raiz; o arquivo strings.xml mantém as strings que não podem ser referenciadas, por exemplo, em mensagens de tela do aplicativo. Sendo assim, uma alternativa seria criar duas strings diferentes no arquivo .xml, dessa forma não existiria a necessidade de alteração no código. e. Os códigos .xml com os recursos ficam localizados no diretório rest; o arquivo strings.xml mantém todas as strings que podem ser referenciadas, por exemplo, em mensagens de tela do aplicativo. Sendo assim, uma alternativa seria criar uma string no arquivo .xml, dessa forma não existiria a necessidade de alteração no código.