Prévia do material em texto
o Android Studio é atualmente a ferramenta de desenvolvimento de aplicações nativas para o Android mais indicada. Dentre as suas diversas abas com diferentes formas de auxílio ao desenvolvedor, pode-se destacar a aba do Component Identifique o que se pode encontrar nessa aba importante e capaz de auxiliar o desenvolvedor na criação de interfaces gráficas. Alternativas A) A visualização da interface gráfica, de forma que tenhamos uma noção da forma como ela será apresentada no dispositivo móvel onde a aplicação for executada. B) A estrutura e ordenamento dos arquivos do projeto em desenvolvimento. C) Todas as propriedades e métodos de eventos de cada componente utilizado na interface gráfica. D) Todos os componentes disponibilizados pelo Android para a criação de interfaces gráficas. E) Marcada pelo aluno A estrutura de ordenamento dos componentes a partir do layout de forma a identificar a hierarquia dos componentes utilizados na interface o desenvolvimento de aplicativos móveis para o Android possui uma série de características e ações que podem ser determinadas pelo desenvolvedor para o uso de diferentes atividades e aplicações. Veja as características para o desenvolvimento de aplicações no Android apresentadas a seguir. No Android é permitido apenas a chamada de atividades se especificarmos obrigatoriamente no Intent o nome da classe que será executada. II. o Android permite a troca de mensagens (informações e dados) entre diferentes e não apenas em uma mesma III. o Android permite o envio de dados de uma atividade para outra, assim como o retorno de dados da atividade chamada para a atividade chamadora. IV. Para a realização de troca de mensagens entre atividades de uma mesma aplicação devemos usar apenas Intents Analise cada afirmação apresentada e determine aquelas que são verdadeiras. Alternativas A) II. B) I IV. C) IV. D) III. Marcada pelo aluno II III.No desenvolvimento de uma aplicação para dispositivos móveis baseada no Android é necessário armazenar em um arquivo, de preferência (SharedPreferences), os valores de entrada da base, da altura em reais e o valor da opção de escolha (opção do tipo inteiro), sendo 1 para Triângulo e 2 para A aplicação possui o layout e a tabela de identificadores e relacionamentos a seguir: Base: Tipo Componente Id - Interface (View) Id Controller Altura: EditText editText1 edt1 EditText editText2 edt2 Triângulo RadioButton radio0 rd1 Retângulo RadioButton radio1 rd2 Button button1 bt1 Calcular Área EditText editText3 edt3 Área da figura: Propriedade onClick do button1: calcularArea Sabe-se que os componentes já foram declarados, os relacionamentos realizados e as bibliotecas já foram importadas. A aplicação precisa armazenar os valores de entrada no arquivo de preferências. Compare e avalie, dentre as opções a seguir, aquela que apresenta corretamente o conjunto de instruções correto para realizar o armazenamento dos dados no arquivo de preferências chamado Você deve avaliar: A abertura do arquivo. o modo de edição. A finalização da Alternativas A) prefs = getSharedPreferences("prefUsuario" MODE PRIVATE); - SharedPreferences.Editor Geometria = prefs.edit(); Float.parseFloat(edt1.getText(). toString())); if(rd1.isChecked()){ 1); } else{ 2); } Geometria.save(); B) Marcada pelo aluno prefs = MODE SharedPreferences Editor prefUsuario = prefs. prefUsuario putFloat("base", Float parseFloat(edt1 getText(). if(rd1.isChecked()){ 1); } else{ 2); } prefUsuario commit();No desenvolvimento de projetos de aplicações para dispositivos móveis, a utilização de intentes (Intent) para acessar outros recursos o Android serve para diferentes propósitos. Uma intente é um objeto e, sendo assim, possui atributos e métodos que podem ser definidos ou utilizados pelo desenvolvedor. Sendo assim, temos disponíveis vários tipos de ações e configurações. Dentre as ações e configurações disponibilizadas pelas Intents, existem algumas que são mais usadas para a troca de mensagens entre diferentes aplicações. Diante do exposto, analise as formas de chamada (ações) e as categorias das Intents a seguir e correlacione o identificador com a sua forma ou categoria relacionada, identificando a ação e configuração de troca de mensagens corretamente. Identificador: Forma / Categoria Relacionada: ( ) A atividade será executada por um navegador (browser), permitindo a exibição de fotos ou I. ACTION_VIEW mensagens de e-mail. II. ACTION_SEND ( ) A atividade relacionada à tarefa será listada no inicializador do aplicativo do sistema. III. ( ) Usada quando dados serão compartilhados entre os aplicativos, podendo ser um aplicativo de e-mail ou no uso de uma rede social. IV. ( ) Usada quando alguma informação poderá ser exibida ao usuário, como uma foto ou uma View da atividade chamada. Analise as opções a seguir e selecione aquela que apresenta corretamente o relacionamento entre os identificadores e com a sua forma ou categoria de uso: Alternativas A) II, I, IV III. B) Marcada pelo aluno III, II At No desenvolvimento de aplicações móveis para o Android, é necessário que façamos o relacionamento entre os componentes da tela (View) com a codificação (Controller). Para isso, é importante identificar corretamente os componentes tanto da tela como na codificação, além de realizar o relacionamento entre eles. Para uma tela com a codificação de entrada definida pelos componentes:B) Gabarito da questão double peso; int idade, op; peso = Double int idade = if(rd1 .isChecked(){ } C) double peso; int idade, op; peso = int idade = if(radio1.isChecked(){ op } D) Marcada pelo aluno double peso; int idade, op; peso = int idade = if(radio1.isChecked(){ At } No desenvolvimento de aplicações para dispositivos móveis, é comum a necessidade de envio de dados (mensagens) entre diferentes telas do sistema. Dessa forma, é necessário que o dado em questão seja enviado explicitamente de uma tela para outra. Identifique, dentre as opções a seguir, a instrução correta que utiliza o método necessário para realizar o envio do dado de uma tela para a outra e o método que busca o dado armazenado no componente EditText relacionado da tela identificado por edt1, para a chamada de Intent de uma aplicação enviando um nome para a atividade identificada como Intent = new Intent(getApplicationContext(), CalculalMC.class); Alternativas A) B) Marcada pelo aluno i edt1 C) i.putExtra("nome", D) E) edt1.getText().toString())No controle do ciclo de vida de aplicação, são definidos os tempos de vida da atividade (entire lifetime), o tempo de vida visível da atividade (visible lifetime) e o tempo de vida em primeiro plano da atividade (foreground lifetime). Indique, dentre as opções a seguir, aquela que apresenta os métodos que são utilizados para determinar o tempo de vida da atividade (entire lifetime), sendo esse o tempo decorrente entre as suas execuções. Alternativas A) onCreate() e onStop(). B) onStart() e onStop(). C) onResume() e onPause(). D) onStart() e onDestroy(). E) Marcada pelo aluno onCreate() e No desenvolvimento de aplicativos baseados no Android, o uso de Intents permite o acesso a de uma aplicação a outras atividades da mesma aplicação ou o uso de outras aplicações para realizar tarefas específicas. uso de Intents permite então o reaproveitamento não apenas de códigos, mas também de outras aplicações. Para a criação de um uma é necessário determinar algumas Sabe-se que uma aplicação precisa enviar dados para uma outra atividade e que não haverá retorno de dados da atividade chamada para a atividade De acordo com as premissas apresentadas, compare a avalie as configurações necessárias para a criação de uma Intent, em consonância com a ordem de definição de cada etapa, conforme as opções apresentadas a seguir, e selecione aquela que se encontra na ordem adequada de execução e que atenda aos requisitos para o envio dos dados para uma atividade da mesma Alternativas A) uri = Uri.parse("sms: ++5521900000001"); intent = new Intent(Intent.ACTION VIEW, uri); - "Corpo de conteúdo do SMS"); startActivityForResult(intent, B) String nome = ed1.getText().toString()); intent = new Calcula.class); nome); startActivity(intent, C) uri = ++5521900000001"); intent = new Intent(Intent.ACTION_VIEW, uri); "Corpo de conteúdo do SMS");D) String nome = ed1.getText().toString()); intent = new Intent(getApplicationContext(), Calcula.class); intent.putExtra("nome", nome); startActivityForResult(intent, E) Marcada pelo aluno String nome = intent = new Calcula nome); Os projetos de aplicações para dispositivos móveis são baseados no modelo MVC (Model, View, Controller), onde os projetos seguem características da arquitetura Cliente X Servidor em três camadas. Analise as afirmações acerca do modelo MVC apresentadas a seguir, definindo aquelas que são consideradas vantagens ao se aplicar esse modelo. I. Determinadas mudanças em uma camada podem não afetar as II. o desenvolvimento de aplicações de pequeno porte é dificultado. III. É necessário o treinamento adequado para as equipes de o desenvolvimento e a manutenção do sistema podem ficar a cargo de diferentes equipes, otimizando e especializando o São vantagens da aplicação do modelo MVC apenas as que se apresentam nas afirmações: Alternativas A) II IV. B) Marcada pelo aluno le C) D) II. E) III.Uma ONG (organização não governamental) deseja cadastrar os moradores de uma certa região da Esse cadastramento será feito por meio de um aplicativo para dispositivos móveis disponibilizado na plataforma Android Serão cadastrados vários tipos de dados de diferentes pessoas de cada família, os dados serão armazenados em tabelas que deverão estar Os dados deverão ser armazenados localmente e enviados para um servidor ao final do expediente pela pessoa que está realizando o Avalie as necessidades aplicadas pela aplicação e selecione a opção que apresenta a forma adequada para armazenar dados e que utilize o método adequado do ciclo de vida de uma aplicação para enviar os dados da aplicação para o servidor. Alternativas A) Deve-se usar um arquivo local para o armazenamento e executar o envio dos dados por meio do método onDestroy(). B) Deve-se usar um arquivo local para o armazenamento e executar o envio dos dados por meio do método onCreate(). C) Marcada pelo aluno Deve-se usar um arquivo SQLite para o armazenamento e executar envio dos dados por meio do método D) Deve-se usar um arquivo SQLite para armazenamento e executar o envio dos dados por meio do método onRestart(). E) Deve-se usar um arquivo SQLite para o armazenamento e executar o envio dos dados por meio do método onResume(). Na fase de Projeto começamos a nos preocupar com a arquitetura da Damos realmente valor à tecnologia, diferente da fase de análise onde ainda estamos esboçando o problema a ser resolvido. Definimos a plataforma e como os componentes do sistema se Evidentemente que os requisitos ainda são importantes, pois, por exemplo, um sistema Web ou então uma aplicação de tempo real deverá influenciar na arquitetura. Mesmo não possuindo uma definição consensual, muitos autores definem a arquitetura de software de um sistema computacional como a suas estruturas, que são compostas de elementos de software, de propriedades externamente visíveis de seus componentes e do relacionamento entre eles. Ou seja, a arquitetura define os elementos de software e como eles interagem entre INTRODUÇÃO ao Padrão MVC. DevMedia. Disponível em:https: em: 02 out 2023. o modelo MVC pode ser usado para construir a arquitetura do software a partir de três elementos: modelo, visão e controle. Com relação ao padrão MVC, julgue os itens a seguir. I. A visão contém as classes que fazem a interação com o II. modelo contém as classes que descrevem os objetos da aplicação, por exemplo, alunos, disciplinas, turmas, professores. III. o controle tem acesso aos objetos do modelo e às estruturas de dados e embute nos seus métodos as "regras de negócio" da É correto o que se afirma em Alternativas A) II e III, B) II, C) I, apenas. D) III, apenas. Gabarito da questão I, III.Para conectar um aplicativo Java a um banco de dados usando JDBC, você precisa usar um driver Esse driver atua como um intermediário entre seu aplicativo e o banco de Existem vários tipos de drivers JDBC disponíveis, portanto, é preciso escolher aquele que melhor se adapte às Outro fator a ser observado é que nem todos os tipos de driver são suportados pela Oracle e, mesmo quando um tipo de driver é suportado pela Oracle, pode não ser suportado por todas as versões do Oracle. Por exemplo, o Microsoft JDBC Driver permite o acesso ao Microsoft SQL Server por meio da API JDBC. Foram definidas quatro categorias de drivers JDBC, que delineiam as diferenças na arquitetura dos drivers. Uma diferença entre as arquiteturas está no fato de determinado driver ser implementado em código nativo ou em código Java. CORTES, S. M. P. Fundamentos de programação com acesso a bancos de dados Porto Alegre: SAGAH, [20--]. Nesse sentido, considere a situação a seguir. Clara, após ser contratada para estagiar em uma empresa de desenvolvimento de aplicações Java, procurou um dos desenvolvedores sênion para esclarecer uma dúvida que tinha em relação à conexão Java a um banco de dados usando JDBC. Tendo em vista a resposta do desenvolvedor para Clara, avalie as asserções a seguir e a relação proposta entre Alternativas A) I. o desenvolvedor pode dizer a Clara que, para conectar-se a um banco de dados via JDBC, é necessário saber qual driver baixar, uma ve cada banco de dados possui seu driver, que implementa a interface de API do JDBC. B) PORQUE II. A grande dos bancos de dados do mercado, dentre eles, Oracle, DB2, SQL Server e já disponibiliza pelo menos um driver JDBC, sendo este, geralmente, um protocolo nativo (driver Java puro). A respeito dessas asserções, assinale a opção correta. Alternativas A) As asserções le são proposições falsas. B) Gabarito da questão As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I C) As asserções e são proposições verdadeiras, mas a não é uma justificativa da I. At D) A asserção é uma proposição falsa, e a é uma proposição verdadeira.Na técnica de Mapeamento Objeto-Relacional (MOR), a utilização de anotações específicas nos próprios arquivos Java é prática e evita a utilização de extensos arquivos em outra linguagem e sintaxe XML. Analise as seguintes assertivas sobre o uso da anotação @Entity: I-A anotação @Entity deve estar depois do nome de uma classe que terá objetos persistidos no banco de dados. - Qualquer classe com a anotação @Entity será mapeada para uma tabela do banco de dados e seus atributos serão mapeados para colunas nesta tabela. III- o nome da tabela será o mesmo nome da classe por padrão, mas poderá ser alterado pela anotação @Table. Marque a alternativa correta: Alternativas A) Apenas as assertivas I e são B) Apenas a assertiva III é verdadeira. C) Gabarito da questão Apenas as assertivas II e III são D) Apenas as assertivas I e III são verdadeiras. E) Apenas a assertiva é verdadeira. A Para gerenciar as entidades de uma aplicação é necessário usar um objeto gerenciador "EntityManager" obtido por meio de uma classe Para sincronizar o banco de dados com as informações que foram modificadas em memória é necessário criar uma transação JPA pelo gerenciador de entidade que controla os objetos a serem atualizados. Aponte qual é o método do EntityManager usado para sincronizar o banco de dados de forma definitiva com as informações que foram modificadas em Alternativas A) find(). B) Gabarito da questão commit() C) getReference(). D) persist(). E) flush().o Padrão MVC é um padrão de arquitetura que é a base do gerenciamento de interação em muitos sistemas baseados em Sobre o Padrão é CORRETO Alternativas A) o componente Controlador gerencia sistema de dados e as operações associadas a esses B) o padrão MVC separa os elementos de um sistema; no entanto, as modificações em uma camada geram alterações nos dados das outras C) o componente Modelo define e gerencia como os dados são apresentados ao D) o componente Visão gerencia a interação com o Gabarito da questão padrão MVC separa a apresentação e a interação dos dados do sistema, sendo estruturado em três componentes lógicos que interagem entre Sobre o Modelo de Arquitetura de chamado MVC, o qual pode ser utilizado para a construção de aplicações web, marque a alternativa CORRETA Alternativas A) o fluxo de comunicação entre os componentes View e Model do padrão MVC deve passar obrigatoriamente pelo componente pois o fluxo de comunicação é sequencial B) A camada View encapsula o acesso aos dados e funções básicas da fornecendo ao usuário procedimentos que executam tarefas específicas. C) Gabarito da questão No as instruções sql são executadas nas classes que fazem conexão com o banco de dado e são representadas no componente D) A camada Model interpreta eventos de entrada e envia requisições para o modelo de dados; em seguida, processa os dados carregados a partir do modelo e envia para o E) No MVC, as instruções sql são executadas nas classes que fazem conexão com o banco de dado e são representadas no componente Controller.Durante o desenvolvimento de sistemas computacionais complexos, o engenheiro ou arquiteto de software precisa determinar como o sistema será organizado, caracterizando todos os componentes de software e suas interações. o modelo arquitetural deve considerar o sistema computacional de forma completa, definindo a estrutura para todos os componentes do sistema. Assim, analise as asserções a seguir sobre o modelo arquitetural usado no desenvolvimento de sistemas - o modelo Multicamadas (N-Tier) pode ser considerado uma evolução da arquitetura Cliente-Servidor (2-Camadas). PORQUE II modelo Multicamadas (N-Tier) foi desenvolvido com o objetivo de manter as lógicas de apresentação, negócio e dados em apenas uma máquina. Analisando as asserções, pode-se inferir que: Alternativas A) As asserções e são proposições verdadeiras e a II é uma justificativa correta da I. B) Gabarito da questão A asserção I é uma proposição verdadeira e all é uma proposição falsa C) As asserções I e são proposições verdadeiras, mas a II não é uma justificativa correta da At Ac D) As asserções le II são proposições Após a implementação de uma aplicação num Web o processamento de requisições e respostas em cada página JSF é controlada pela classe Faces Servlet por meio de várias etapas de execução. Relacione as seguintes etapas de processamento de requisições JSF com seus respectivos significados: Etapa Significado a) Nessa fase as tarefas relacionadas ao evento de usuário que iniciou a requisição podem ser I - Restore View executadas porque as informações dos componentes já estão convertidas, validadas e armazenadas. b) Os componentes com dados transmitidos pelos usuários por meio de formulários de entrada sofrem II Apply- as conversões e validações necessárias. Se houver erro durante os processos de validação e conversão, Request Values serão acrescentadas mensagens de falha no contexto da requisição. III Process c) A árvore de componentes gerada é verificada e decodificada, onde cada componente retira as Validations informações associadas da requisição atual para atualização. IV Invoke d) É gerada uma árvore de componentes inicial representando a tela da primeira requisição feita por um Application usuário e que será reconstruída nas requisições seguintes desse mesmo usuário. Marque a alternativa correta: Alternativas A) a C) D) At Ace E)Para permitir gerenciamento adequado das entidades entre modelo relacional dos bancos de dados e o modelo orientação objeto das é necessário que os provedores de JPA tenham acesso ao estado de cada Analise as assertivas sobre os diferentes modos de acesso ao estado das instâncias das entidades pelo JPA: No modo de acesso Field Access é necessário implementar métodos getters e setters, pois o provedor JPA usará esses métodos para acessar e modificar o estado dos objetos. No modo Field Access o provedor JPA não usará os métodos getters e setters, mesmo se estiverem implementados. III No modo de acesso Property Access não é necessário implementar os métodos getters e setters, pois o acesso aos atributos dos objetos é feito diretamente por meio da técnica de Marque a alternativa correta: Alternativas A) Apenas as alternativas II e III são B) Apenas as alternativas e III são verdadeiras. C) Gabarito da questão Apenas a alternativa II é verdadeira D) Apenas a alternativa é verdadeira. E) Apenas as alternativas e II são At Ace As aplicações WEB implementam a interação com os usuários por meio de navegadores de rede ("browsers"), muitas vezes utilizando o protocolo de comunicação HTTP para acessar as páginas da aplicação. Normalmente as páginas são escritas em linguagem HTML e precisam ser geradas de forma dinâmica devido ao acesso Considere um aplicativo WEB que foi desenvolvido pela equipe de programação colocando todo o conteúdo dinâmico HTML juntamente com as classes Analise se a solução empregada é a mais adequada para o desenvolvimento deste projeto. Caso contrário, proponha uma solução alternativa. Cartão de resposta não enviado para o AvaliA Feedback: Expectativa de resposta: Ao colocar o código HTML junto com as classes JAVA, a manutenção das páginas HTML torna-se mais e desenvolvimento do sistema é prejudicado pela piora na legibilidade do código JAVA da aplicação WEB. Para solucionar esse problema, deve ser usada a tecnologia JavaServer Faces (JSF) para permitir que a equipe de programação trabalhe com o protocolo HTML de forma mais eficiente para o desenvolvimento das aplicações WEB. Com o JSF é facilitado o processo de manutenção das páginas HTML e melhorar a legibilidade do código JAVA da aplicação WEB. Com o também não será necessário colocar o conteúdo dinâmico HTML juntamente com as classes