Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aula 01 As tags responsáveis por quebra de linha, criação de parágrafo e criação de tabelas são, respectivamente: < p > < br > < table > < table > < br > < tr > < br > < p > < tr > < tr > < p > < br > < br > < p > < table > Explicação: As tags seriam br (break), p (paragraph) e table. A tag tr define uma linha da tabela, enquanto td definiria uma célula. As tags responsáveis por quebra de linha, criação de parágrafo e criação de tabelas são, respectivamente: < p > < br > < table > < table > < br > < tr > < br > < p > < tr > < tr > < p > < br > < br > < p > < table > Explicação: As tags seriam br (break), p (paragraph) e table. A tag tr define uma linha da tabela, enquanto td definiria uma célula. Na sintaxe da linguagem HTML para a construção de formulários, qual o tipo de INPUT deve ser utilizado para opções mutuamente exclusivas? text checkbox sumbit radio hidden Explicação: Usando componentes radio com o mesmo "name", é possível definir elementos mutuamente exclusivos, ou seja, ao marcar uma opção as demais são desmarcadas. Quando pessoas de diferentes nacionalidades precisam se comunicar, é necessário que todos conheçam uma mesma língua, caso isto não aconteça, a comunicação não é possível, ou pode ser deteriorada, sendo possível usar apenas gestos e outros recursos de sinais. A mesma coisa acontece entre computadores, e outros dispositivos nas redes. Para que eles possam se comunicar é necessário que sejam utilizando o mesmo (a): Servidor Linguagem Protocolo Meio físico de comunicação Meio lógico de comunicação Explicação: Os protocolos existem para permitir a comunicação entre serviços, onde cada serviço tem um protocolo específico. Por exemplo, para que duas pessoas troquem email, ambas tem que utilizar o mesmo protocolo de comunicação, neste caso o protocolo referente a email. A linguagem HTML 5 permite a utilização de diversas outras sintaxes na escrita do documento. Qual destas sintaxes é voltada para a construção de figuras vetoriais simples, como retângulos e círculos? XML JSON SVG MathML Java Script Explicação: A sintaxe SVG (Scalable Vector Graphics) permite a criação de formas simples com algum nível de interatividade. Ao criar um hiperlink, qual o atributo que definirá para qual endereço ocorrerá a navegação? href destination value src target Explicação: O formato geral de um hiperlink seria: < a href = "Endereço HTTP" > Texto da Âncora < /a > "Permite a inclusão de informações e controle de características do documento, como o uso de UTF-8 para acentuação da língua portuguesa. " Na criação de páginas HTML que tag devemos utilizar para produzir o que é colocado na afirmação apresentada na questão: title body link meta doctype Explicação: title - O que é apresentado na barra de títulos link - Usado para acessar outras páginas, documentos etc. doctype - Não é uma tag HTML; é uma instrução para o navegador da web sobre em qual versão do HTML a página está escrita. body - Corpo da página onde entramos o conteúdo da mesma. Aula 02 Indique a opção que apresenta apenas operadores relacionais. Operadores +, -, * e / Operadores >, <, = e ! Operadores >=, <, == e != Operadores +, -, < e * Operadores &&, || e ! Explicação: Operadores relacionais analisam relações entre números, podendo ser >, <, >=, <=, == ou !=. A Linguagem Java Script como muitas outras linguagens, possuem um conjunto de funções que agilizam o processo de codificação e consequentemente a construção das páginas, programas etc. Em relação a função eval, marque a resposta ERRADA. O trecho de código eval("A"), converte A para o código ascii. z=eval(6/3); e eval(z=(6/3)); Os dois códigos produzem o mesmo resultado. eval("x=(8*3/6+2)"); Atribui a x o valor 6. É capaz de executar uma operação matemática válida. Converte uma string em código JavaScript e executa-o, se for um comando válido. Explicação: O código ascii é apenas uma representação de caracteres para números inteiros e não temos uma função para fazer esta conversão. Assumindo que x vale 1 e y vale 5, quais seriam, respectivamente, os resultados das seguintes expressões? (x > y) && (y-2 < 3) (y < 3 * x) || (x*y <= y) !((x < y)||(y < x)) false, false, false true, true, true true, true, false true, false, true false, true, false Explicação: Analisando as expressões: (x > y) && (y-2 < 3) -> (1 > 5) && (3 < 3) -> F && F -> F (y < 3 * x) || (x*y <= y) -> (5 < 3) || (5 <= 5) -> F || T -> T !((x < y)||(y < x)) -> !((1 < 5) || (5 < 1)) -> !(T || F) -> !T -> F Considerando o código Java Script seguinte, qual será o valor final de b? var a=1, b=1; while(a < 5) { b = b * a; a++; } 1 11 5 24 4 Explicação: Primeira rodada: b = 1, a = 2 Segunda rodada: b = 2 * 1 = 2, a = 3 Terceira rodada: b = 2 * 3 = 6, a = 4 Quarta rodada: b = 6 * 4 = 24, a = 5 No Java Script, uma janela do tipo "prompt": Solicita uma confirmação do usuário, positiva ou negativa. Permite a seleção de data a partir de um calendário. Permite que o usuário insira uma frase dentro da caixa de texto. Exibe apenas uma informação para o usuário. Exibe uma lista para que o usuário selecione um ou mais valores. Explicação: O comando prompt é utilizado como uma entrada de dados de texto, como em: var x = prompt("Digite seu nome",""); Como apresentado na aula, as funções matemáticas usando o Java Script são referenciadas por Math.nome, onde nome é o nome existente da função. Em relação as funções matemáticas apresentadas é ERRADO afirmar que: Math.sqrt(x) - retorna a raíz quadrada do valor x enviado. Math. random( ) - retorna um valor aleatório entre 0 e 1. Math. abs(x) - retorna o valor absoluto de x. Math. pow(x,y) - retorna o resultado de x elevado a y. Math.trunc(x,y) - transforma o valor real X em um inteiro para y. Explicação: A função correta é Math.trunc(x), onde x é um número real na qual a função retornará apenas a parte inteira. Aula 3 Quanto à validação de formulários em Java Script, é correto afirmar que: Permite se utilizar de recursos locais, entre eles o acesso a bancos de dados e arquivos presentes no computador cliente. Quando associada ao evento de envio do formulário necessita de uma função sem retorno de valor. Efetua críticas relativas à formatação e regras simples de interface, ao mesmo tempo em que diminui o fluxo de chamadas desnecessárias ao servidor. As críticas relativas à formatação são realizadas com sucessivas chamadas ao servidor. Pode ser utilizada para substituir os testes de consistência referentes aos relacionamentos do banco de dados, normalmente efetuados no servidor. Explicação: O uso de JavaScript nos formulários irá permitir validações simples, mas não podem ser feitos acessos a recursos servidores, como críticas em Bancos de Dados, ou aos recursos locais da máquina, como arquivos. A principal finalidade é diminuir o fluxo de dados incorretos até o servidor. Diversos eventos podem ser utilizados no processo de validação de formulários. Qual deles deve ser utilizado para efetuar críticas quando o valor de um campo é alterado? onfocus onchange onsubmit onblur onclick Explicação: O evento onchange ocorre na mudança do atributo value, não importando a origem desta mudança. A afirmativa apresentada na questão diz respeito a queevento? "Efetua a validação do formulário imediatamente antes do envio para o servidor. Necessita o retorno booleano, indicando se os valores podem ser enviados ou não". onsubmit onselect onsearch onblur onclick Explicação: onselect - seleciona objetos. onblur - Quando o objeto perde o foco. onclick - Quando clica no objeto. onsearch - Quando envia uma pesquisa. Caso fosse necessário validar um campo para CPF, de acordo com a regra de formação do número, logo que o usuário saísse da caixa de texto, o evento correto seria: onsubmit onchange onblur onclick onfocus Explicação: O evento onblur ocorre na perda do foco, permitindo adicionar máscaras ou apagar o conteúdo quando uma regra é quebrada, a exemplo do dígito verificador do CPF. Marque a resposta correta em relação a afirmativa. "Retorna uma coleção de objetos referenciando todos os componentes que apresentem o atributo class desejado." A afirmativa faz referência a: getElementsByTagName getElementsByClassName getElementById querySelector querySelectorAll Explicação: getElementsByClassName - Retorna um vetor de objetos com todos os elementos filhos que possuem o nome da classe dada. Quando invocado no objeto document, o documento é examinado por completo, incluindo o nó raiz. Você também pode invocar getElementsByClassName(), em qualquer elemento; isso retornaria somente elementos que são descendentes do nó raiz especificado com o nome da classe. Quando falamos das ações que um objeto pode realizar estamos nos referindo a: Herança Nível de Acesso Agrupamentos Atributos Métodos Explicação: Os elementos básicos de uma classe são os métodos, definindo ações que podem ser executadas, e atributos, com as características físicas do objeto que será instanciado. Aula 04 Diversos efeitos são disponibilizados com o uso de JQuery. Qual deles faria com que uma DIV desaparecesse "lentamente"? hide fadeOut fadeIn show shake Explicação: O efeito fadeOut apaga lentamente o componente, enquanto fadeIn exibe lentamente, show exibe instantaneamente, hide apaga instantaneamente, e shake faz ele "tremer". No uso do JQuery, o seletor $("li:odd") serviria para selecionar: O item central de cada lista da página. O primeiro item de cada lista. O último item de cada lista. Todas as ocorrências ímpares de itens de lista. Todas as ocorrências pares de itens de lista. No que tange ao conceito de JQuery, analise as asserções subsequentes e, a seguir, assinale a alternativva correta. I. JQuery é uma biblioteca de funções do HTML, desenvolvida para simplificar os scripts interpretados no navegador do cliente. II. JQuery é uma biblioteca amplamente adotada pelo mercado no desenvolvimento de sistemas. Esta é uma biblioteca que executa do lado cliente, interagindo com os elementos da página e facilitando muitas das tarefas usuais no desenvolvimento das funcionalidades da interface. III. A primeira versão da JQuery foi lançada em janeiro de 2006 pelo seu criador Josh Resig. Somente as asserções I e III estão corretas Somente as asserções II e III estão corretas Somente a asserção I está correta Somente a asserção III está correta Somente as asserções I e II estão corretas Explicação: jQuery é uma biblioteca de funções JavaScript que interage com o HTML, desenvolvida para simplificar os scripts interpretados no navegador do cliente. JQuery é uma biblioteca amplamente adotada pelo mercado no desenvolvimento de sistemas. Esta é uma biblioteca que executa do lado cliente, interagindo com os elementos da página e facilitando muitas das tarefas usuais no desenvolvimento das funcionalidades da interface. A primeira versão foi lançada em janeiro de 2006 pelo seu criador Josh Resig. Ao implementar uma página, com uso de JQuery, deseja-se que os campos de texto fiquem com o fundo amarelo quando ganharem o foco, branco quando perderem o foco e laranja quando o conteúdo for modificado. Quais métodos devem ser utilizados, respectivamente? keydown, keyup e keypress mouseenter, mouseleave e click focus, blur e change mouseenter, mouseleave e change focus, blur e click Explicação: O método focus é executado quando o INPUT ganha o foco, blur quando ele perde e change quando seu atributo value é alterado. No que tange ao JSON (Java Script Object Notation), leia as asserções abaixo e, a seguir, assinale a alternativa correta. I. Várias tecnologias atuais utilizam o JSON como formato texto para troca de informações; II. O Web Services REST passou a ter uso restrito em função das plataformas móveis, como Android e iOS. III. A definição do objeto JSON é iniciada com o uso de chaves, e os pares chave-valor são separados por vírgula. Somente as asserções II e III estão corretas Somente a asserção II está correta Somente as asserções I e III estão corretas Somente as asserções I e II estão corretas Somente a asserção I está correta Explicação: Várias tecnologias atuais utilizam o JSON como formato texto para troca de informações, das quais podemos destacar os Web Services REST, com o uso muito ampliado pelo advento das plataformas móveis, como Android e iOS. A definição do objeto JSON é iniciada com o uso de chaves, e os pares chave-valor são separados por vírgula. Analise as seguintes afirmativas acerca da sintaxe JSON e assinale a opção correta. I - Valores numéricos devem ser colocados entre aspas. II - Valores nulos são representados por null. III - Vetores são definidos com o uso de chaves. Todas as afirmativas são falsas. Apenas a afirmativa II é verdadeira. Todas as afirmativas são verdadeiras. Apenas as afirmativas II e III são verdadeiras. Apenas as afirmativas I e III são verdadeiras. Explicação: A afirmativa I está incorreta porque os números não utilizam aspas, e a de número III está incorreta porque vetores utilizam colchetes. Quanto ao nulo, ele realmente é representado como null. Aula 05 De modo geral, o XML parser nada mais é do que: Uma classe de documentos criados em JavaScript. Um objeto DOM implementado dentro do XML. Um analisador de documentos XML, que tem como objetivo carregar ou criar um documento utilizando o JavaScript. Um método utilizado exclusivamente na validação de documento JavaScript. Uma técnica utilizada para a manipulação de metadados. Explicação: Com o uso de um XML Parser, é possível trabalhar os dados de um documento XML segundo uma visão em árvore. "Bastante similar a uma Activity, um (I) consiste em uma pequena porção de Activty, que permite um projeto mais modular. Não seria errado afirmarmos, assim, que um (II) é uma espécie de subactivity." Na sentença acima, (I) e (II) representam respectivamente a: (assinale a alternativa correta) (I) menu; (II) menu (I) fragmento; (II) botão (I) fragmento; (II) menu (I) fragmento; (II) fragmento (I) menu; (II) fragmento Explicação: Fragmento Bastante similar a uma Activity, um fragmento (fragment) consiste em uma pequena porção de Activty, que permite um projeto mais modular. Não seria errado afirmarmos, assim, que um fragment é uma espécie de subactivity. Esse conceito surgiu com o Android 3.0 (Honeycomb) devido à necessidade de customizá-lo para as interfaces dos aplicativos, em função da pluralidade de tipos e tamanhos de dispositivos, em especial os tablets. Um esquema define uma gramática para determinado domínio do problema, e a sintaxe XML permite duas formas para a definição de esquemas, que são: DTD e XSD XSD e XSL-FOXSLT e XSL-FO XSD e XSLT DTD e XSLT Explicação: As duas formas são: DTD, que apresenta sintaxe mais simples, mas que não é XML, e XSD, com uso de XML e apresentando uma sintaxe mais complexa. "Em aplicativos Android, um recurso extremamente utilizado é o de (I). Basta você baixar alguns aplicativos na Google Play Store que os encontrará facilmente. Embora sejam de fácil implementação, devemos reforçar os cuidados em relação à usabilidade e aparência dos mesmos." A sentença acima refere-se a: (assinale a alternativa que preencher corretamente a (I)). Ícone Caixa de texto Botão Menu Link Explicação: Em aplicativos Android, um recurso extremamente utilizado é o de menu. Basta você baixar alguns aplicativos na Google Play Store que os encontrará facilmente. Embora sejam de fácil implementação, devemos reforçar os cuidados em relação à usabilidade e aparência dos mesmos. É muito comum encontrarmos aplicativos sem nenhum menu, menus sem ícones ou até mesmo com títulos inapropriados. Por isso, é importante lembrarmos de que um bom apelo visual e/ou textual facilitará muito a interação do usuário com o aplicativo. Em aplicativos Android, um recurso extremamente utilizado é o de menu. Basta você baixar alguns aplicativos na Google Play Store que os encontrará facilmente. Podemos trabalhar com três tipos de menus em Android, os quais: I. Menu de opção e barra de opção II. Menu de texto III. Menu pop-up Após a leitura, assinale a alternativa correta. Apenas a afirmação I está correta Apenas as afirmações II e III estão corretas Apenas as afirmações I e III estão corretas Apenas a afirmação II está correta Apenas as afirmações I e II estão corretas Explicação: TIPOS DE MENU: Menu de opção e barra de opção - É o menu default das aplicações Android; - Normalmente encontramos nesse menu as principais opções. Menu de contexto - É exibido quando o usuário clica e segura, por mais de 2 segundos, um componente visual; - Não suporta atalhos, ícones ou até mesmo submenus; - Pode ser compartilhado entre diferentes Views. Menu Pop-up - Abre quando tocamos no item de menu Options (Opções) ou em menu contextual; - Não suporta ícones; - Não suporta submenus aninhados. No que tange ao conceito de fragmento, analise as asserções abaixo e, a seguir, assinale a alternativa correta: I. Bastante similar a uma Activity, um fragmento (fragment) consiste em uma pequena porção de Activty, que permite um projeto mais modular. II. Pode-se afirmar que um fragmento é uma espécie de activity. III. O conceito de fragmento surgiu com o Android 3.0 (Honeycomb) devido à necessidade de customizá-lo para as interfaces dos aplicativos, em função da pluralidade de tipos e tamanhos de dispositivos, em especial os tablets. Somente a asserção II está correta Somente as asserções I e II estão corretas Somente as asserções I e III estão corretas Somente a asserção I está correta Somente as asserções II e III estão corretas Explicação: Fragmento Bastante similar a uma Activity, um fragmento (fragment) consiste em uma pequena porção de Activty, que permite um projeto mais modular. Não seria errado afirmarmos, assim, que um fragment é uma espécie de subactivity. Esse conceito surgiu com o Android 3.0 (Honeycomb) devido à necessidade de customizá-lo para as interfaces dos aplicativos, em função da pluralidade de tipos e tamanhos de dispositivos, em especial os tablets. Ajax não é meramente uma tecnologia. É uma abordagem moderna para desenvolvimento de sites interativos. A abordagem de desenvolvimento tradicional tem semelhanças e diferenças em relação ao Ajax. Uma característica exclusiva de Ajax em relação à abordagem tradicional é que: Permite recuperação assíncrona de dados usando XMLHttpRequest. Usa javascript como linguagem para desenvolver código no lado do cliente. Executa as requisições através do protocolo HTTP. Usa (x)html / css para definir o aspecto visual da página. Representa os objetos no lado cliente com DOM. Explicação: O grande diferencial do AJAX é permitir um comportamento assícrono do cliente nas chamadas HTTP. Aula 06 Qual será a saída obtida pelo seguinte trecho com sintaxe Java? int a = 1, b=100; while( ++a < 5 ) b = b / a; System.out.println(b); 4,17 25 4 12,5 96 Explicação: Primeira rodada: a = 2, b = 100 / 2 = 50. Segunda rodada: a = 3, b = 50 / 3 = 16. Terceira rodada: a= 4, b = 16 / 4 = 4 __________________ é a tecnologia que gerencia a memória alocada para um programa, a fim de liberar objetos que não estão sendo utilizados. Complete a questão escolhendo um dos itens a sequir: Garbage Collector Garbage Drunk Java Virtual Machine Java Collector Java Clean Explicação: O coletor de lixo, ou Garbage Collector, elimina da memória os objetos que não podem mais ser referenciados. Em termos de herança, em determinadas situações é necessário acessar um método do pai a partir do método de mesmo nome do filho, quando tratamos de uma operação sobrescrita no processo de polimorfismo. Qual palavra reservada do Java permite este acesso? extends super new this implements Explicação: A palavra super é utilizada quando desejamos acessar um método existente no pai ou outra superclasse da linha hierárquica, podendo ser utilizado inclusive em construtores. A Classe AlertDialog tem como objetivo exibir uma caixa de dialogo (Android Dialog) para o usuário no Android. Ela possui vários métodos, dentre os quais poderemos observar através das alternativas subsequentes, exceto (ou seja, assinale a alternativa incorreta): setPositiveButton: define um botão para aceitar e conntinuar uma ação (Exemplo: OK) setNeutralButton: define um botão que nem cancela e nem define uma ação (Exemplo: Notifique-me mais tarde) setNegativeButton: exibe a AlertDialog setMessage: define a mensagem de nossa AlertDialog setTitle: define o título de nossa AlertDialog Explicação: A Classe AlertDialog tem como objetivo exibir uma caixa de dialogo (Android Dialog) para o usuário no Android. Ela possui vários métodos, os quais: setTitle: define o título de nossa AlertDialog setMessage: define a mensagem de nossa AlertDialog setPositiveButton: define um botão para aceitar e conntinuar uma ação (Exemplo: OK) setNeutralButton: define um botão que nem cancela e nem define uma ação (Exemplo: Notifique-me mais tarde) setNegativeButton: define um botão para cancelar a ação (Exemplo: Cancel) show(): exibe a AlertDialog "Uma (I) nada mais é do que uma mensagem que aparece na barra de status Android. Seu objetivo é notificar ao usuário sobre algum evento, seja através de um ícone na barra de status, através de vibração, som ou acender de luzes do dispositivo. É muito comum seu uso quando temos uma aplicação que roda em segundo plano, como, por exemplo, um aplicativo de mensagem instantânea, e não podemos ser interrompidos em uma aplicação que roda em primeiro plano, como, por exemplo, uma ligação telefônica." (I) na sentença acima explica o conceito de: (assinale a alternativa correta) Notificação Android Caixa de texto Text Box Chamada Android Classe Explicação: Notifications Uma notificação Android nada mais é do que uma mensagem que aparece na barra de status Android. Seu objetivo é notificar ao usuário sobre algum evento, seja através de um ícone na barra de status, através de vibração, som ou acender de luzes do dispositivo. É muito comum seu uso quando temos uma aplicação que roda em segundo plano, como, por exemplo, um aplicativo de mensagem instantânea,e não podemos ser interrompidos em uma aplicação que roda em primeiro plano, como, por exemplo, uma ligação telefônica. No que tange ao conceito da Classe Toast, leia as asserções abaixo e, a seguir, assinale a alternativa correta: I. A classe Toast (android.widget.Toast) é muito utilizada quando desejamos exibir mensagens de alertas para o usuário. II. A classe Toast (android.widget.Toast) exibe uma pequena tela, que pode ser personalizada, sem caráter permanente, ou seja, desaparecendo sem qualquer tipo de intervenção do usuário. III. A classe Toast (android.widget.Toast) exibe um pop-up de caráter permanente e que necessita de interação do usuário para ser finalizada (fechada). IV. Para implementarmos este tipo de mensagem, é necessário obter uma instância de objeto Toast através do método estático, desta mesma classe, makeText(), que possui três parâmetros: Toast.makeText (contexto, texto, duração) Somente as asserções III e IV estão corretas Somente as asserções I, III e IV estão corretas Somente as asserções I, II e III estão corretas Somente as asserções I, II e IV estão corretas Somente as asserções II, III e IV estão corretas Explicação: Toast A classe Toast(android.widget.Toast) é muito utilizada quando desejamos exibir mensagens de alertas para o usuário. Esta exibe uma pequena tela, que pode ser personalizada, sem caráter permanente, ou seja, desaparecendo sem qualquer tipo de intervenção do usuário. Para implementarmos este tipo de mensagem, é necessário obter uma instância de objeto Toast através do método estático, desta mesma classe, makeText(), que possui três parâmetros, conforme demonstrado abaixo: Toast.makeText (contexto, texto, duração) A classe Toast(android.widget.Toast) é muito utilizada quando desejamos exibir mensagens de alertas para o usuário. Ela exibe uma pequena tela, que pode ser personalizada, sem caráter permanente, ou seja, desaparecendo sem qualquer tipo de intervenção do usuário. Para implementarmos este tipo de mensagem, é necessário obter uma instância de objeto Toast através do método estático, desta mesma classe, makeText(), que possui três parâmetros, demonstrados a seguir: Toast.makeText (contexto, texto, duração) Dada a explicação supracitada, analise a explicação de cada um dos parâmetros citados e, após, assinale a alternativa correta: I. No parâmetro contexto, definimos os botões do aplicativo a serem exibidos na mensagem. II. No parâmetro texto, definimos o texto a ser exibido na mensagem. III. No parâmetro duração, podemos definir o tempo de duração que a mensagem será exibida. A própria classe Toast nos oferece constantes para definirmos este tempo de duração, sendo elas Toast.LENGTH_SHORT e Toast.LENGTH_LONG. Somente a afirmação II está correta Somente a afirmação I está correta Somente as afirmações I e II estão corretas Somente as afirmações II e III estão corretas Somente as afirmações I e III estão corretas Explicação: A classe Toast(android.widget.Toast) é muito utilizada quando desejamos exibir mensagens de alertas para o usuário. Esta exibe uma pequena tela, que pode ser personalizada, sem caráter permanente, ou seja, desaparecendo sem qualquer tipo de intervenção do usuário. Para implementarmos este tipo de mensagem, é necessário obter uma instância de objeto Toast através do método estático, desta mesma classe, makeText(), que possui três parâmetros, conforme demonstrado abaixo: Toast.makeText (contexto, texto, duração) - No parâmetro contexto, definimos o contexto do aplicativo a ser exibido na mensagem; - No parâmetro texto, definimos o texto a ser exibido na mensagem; - No parâmetro duração, podemos definir o tempo de duração que a mensagem será exibida. A própria classe Toast nos oferece constantes para definirmos este tempo de duração, sendo elas Toast.LENGTH_SHORT e Toast.LENGTH_LONG. Aula 07 O uso de um DAO (Data Access Object) em um código tem a função de: Prover uma camada de segurança para a aplicação. Impedir que uma classe tenha mais de um objeto instanciado. Prover uma interface para acesso a um banco de dados ou outro mecanismo de persistência. Encapsular o usuário e senha de acesso ao banco de dados relacional. Gerenciar a geração de logs de acesso com API específica. Explicação: O padrão DAO concentra as chamadas SQL, evitando que este tipo de código se perpetue ao longo da aplicação. No contexto da programação cliente-servidor, ao que se refere o termo back-end? Parte responsável pela manipulação de dados do cliente em uma aplicação Web. Parte responsável pelo coleta de dados do cliente em uma aplicação Desktop. Parte responsável pelo coleta de dados do cliente em uma aplicação Web. Parte responsável pela apresentação de feedbacks ao cliente em uma aplicação Web. Parte responsável pela definição do estilo das interfaces em uma aplicação Web. Explicação: Back End vem da ideia do que tem por trás de uma aplicação. O Back End trabalha em boa partes dos casos fazendo a ponte entre os dados que vem do navegador rumo ao banco de dados e vice-versa, sempre aplicando as devidas regras de negócio, validações e garantias em um ambiente onde o usuário final não tenha acesso e possa manipular algo. No contexto da programação cliente-servidor, ao que se refere o termo front-end? Parte responsável pelo coleta de dados do cliente em uma aplicação Desktop Parte responsável pela apresentação de feedbacks ao cliente em uma aplicação Desktop. Parte responsável pela definição do estilo das interfaces em uma aplicação Desktop. Parte responsável pelo coleta de dados do cliente em uma aplicação Web. Parte responsável pela manipulação de dados do cliente em uma aplicação Web. Explicação: Em outras palavras se classifica como a parte visual de um sistema Web, aquilo com o qual o cliente interage. O que faz o operador BETWEEN da linguagem SQL? Determina as tabelas de onde serão recuperados os registros. Usado para selecionar registros. Usado para determinar quais campos dos registros devem ser recuperados. Estabele um valor mínimo e um valor máximo para filtrar registros. Usado para comparar registros. Explicação: O operador BETWEEN recebe um valor mínimo e um valor máximo e retorna os dados da coluna que atendem a esse critério. O que é um banco de dados relacional? Esse tipo de banco de dados tem como objetivo a manipulação de uma grande quantidade de informações de grande complexidade, como os mapas e imagens de satélite, por exemplo. Oferecem a possibilidade de armazenar informações históricas a respeito de um determinado objeto que nele está sendo mantido. Banco que fica em mais de um servidor, permitindo a descentralização dos dados. Banco que armazena dados em tabelas. Banco replicado para vários servidores como em um processo de espelhamento. Explicação: Bancos de dados relacionais são baseados no modelo relacional, uma maneira intuitiva e direta de representar dados em tabelas. Em um banco de dados relacional, cada linha na tabela é um registro com uma ID exclusiva chamada chave. As colunas da tabela contêm atributos dos dados e cada registro geralmente tem um valor para cada atributo, facilitando o estabelecimento das relações entre os pontos de dados. Existem diversos componentes no JDBC, e um deles permite a parametrização de queries. Indique qual é este componente. Connection PreparedStatement ResultSet DriverManager Statement Explicação: Um componente do tipo PreparedStatement é obtido a partir de uma chamada ao método prepareStatement de Connection, sendo utilizadas interrogações nos trechos do SQL que serão considerados como parâmetros.O middleware de acesso ao banco de dados utilizado pelo Java é denominado: JMS RMI RPC JNDI JDBC Explicação: O middleware para acesso a banco de dados do Java é o JDBC (Java Database Conectivity) Aula 08 Complete as lacunas no trecho de código-fonte abaixo com os termos corretos: __________ emf = Persistence.createEntityManagerFactory("PU"); __________ em = emf.createEntityManager(); em.getTransaction().begin(); c = new Curso(3, "EE"); em.__________(c); em.getTransaction().commit(); EntityFactory; EntityManager; save Connection; Statement; execute Database; Entity; put EntityManagerFactory; EntityManager; persist EntityManager; Command; insert Explicação: Um elemento essencial no JPA é a classe EntityManager, responsável pelo manuseio das diversas entidades. Objetos desta classe são gerados a partir do EntityManagerFactory, e o método persist viabiliza a gravação de uma entidade no banco de dados. O tipo de bean utilizado para tratamento de regras de negócio síncronas, onde ocorre a necessidade de guardar informações entre chamadas sucessivas seria: Stateful Session Bean Stateless Session Bean Entity Bean Async Queued Bean Message Driven Bean Explicação: Os componentes EJB do tipo Session são voltados para o tratamento de regras de negócio de forma síncrona, sendo o Stateless sem a guarda de estado e o Stateful com a guarda de estado. Os EJBs do tipo Session Bean podem ser divididos em três tipos, sendo que um deles permite a ocorrência de apenas uma instância por máquina virtual. Qual é este tipo? Entity Singleton Stateless Message Driven Stateful Explicação: Os EJBs do tipo Sngleton seguem o padrão de desenvolvimento de mesmo nome, ocorrendo apenas uma vez por JVM, e mantendo uma única referência, mesmo em ambientes clusterizados. O que é JPA? É uma API Padrão da linguagem Python que descreve uma interface comum para frameworks de persistência de dados. É uma API Padrão da linguagem SQL que descreve uma interface comum para frameworks de persistência de dados. É uma API Padrão da linguagem PHP que descreve uma interface comum para frameworks de persistência de dados. É uma API Padrão da linguagem Java que descreve uma interface comum para frameworks de persistência de dados. É uma API Padrão da linguagem Ruby que descreve uma interface comum para frameworks de persistência de dados. Explicação: Como o próprio nome diz, JPA (Java Persistence API) é uma tecnologia JAVA. Entre os diferente tipos de EJBs, os MDBs são responsáveis pelo comportamento assíncrono baseado em mensagerias. Assinale a alternativa correta com relação aos MDBs. Apresentam um único método para tratamento de mensagens denominado onMessage. São definidos pela anotação @Message. Necessitam de interfaces @Local e @Remote. Precisam implementar a interface SessionListener. Eles podem guardar informações de estado, como os Statefull Session Beans. Explicação: Os MDBs são componentes EJB para tratamento assícrono de mensagens, através do método onMessage, lidando diretamente com as mensagerias via JMS, sem interfaces remotas ou locais, e sem a possibilidade de guardar estado. Sobre as redes de Petri é correto afirmar que: São uma representação matemática para sistemas distribuídos discretos. Definem graficamente a estrutura de um sistema distribuído como um autômato. Formam uma linguagem de programação. Define um grafo estocástico de elementos essenciais Possuem nós de posição, nós de transição, e arcos não-direcionados conectando posições com transições Explicação: Uma rede de Petri ou rede de transição é uma das várias representações matemáticas para sistemas distribuídos discretos. Como uma linguagem de modelagem, ela define graficamente a estrutura de um sistema distribuído como um grafo direcionado com comentários. Possui nós de posição, nós de transição, e arcos direcionados conectando posições com transições. Sobre POJO é correto afirma que: É uma classe com métodos de negócios e atributos definidos de forma privada e métodos de acesso público. É uma classe com métodos de negócios e com atributos definidos de forma privada e métodos de acesso privado. É uma classe sem métodos de negócios, mas com atributos definidos de forma publica e métodos de acesso público. É uma classe sem métodos de negócios, mas com atributos definidos de forma privada e métodos de acesso público. É uma classe sem métodos de negócios, mas com atributos definidos de forma privada e métodos de acesso privado. Explicação: um POJO (Plain Old Java Object), ou seja, uma classe sem métodos de negócios, mas com atributos definidos de forma privada e métodos de acesso públicos, além de um construtor padrão e alguns métodos utilitários, como hash. Esta classe deve receber anotações que serão responsáveis pelo mapeamento efetuado entre a classe e a tabela, ou seja, o mapeamento objeto-relacional. Aula 09 O ferramental do NetBeans permite gerar de forma automática os EJBs responsáveis por invocar as diversas operações a serem efetuadas no banco a partir de entidades JPA. Ao fazer isto, ele segue um padrão de desenvolvimento denominado: Session Facade Adapter Front Control Intercept Filter Singleton Explicação: É utilizado o padrão Session Facade, onde os Stateless Session Beans servem de fachada para as operações de banco intermediadas pelo JPA. Sobre os Servlets é incorreto afirmar que: São frequentemente usados para processar ou armazenar dados que foram submetidos de um formulário HTML. Fazem uso exclusivo do protocolo HTTP. É uma classe Java usada para estender as funcionalidades de um servidor. Fornecem conteúdo dinâmico, como os resultados de uma consulta a um banco de dados. Não fazem uso de protocolos Explicação: Os servlets normalmente utilizam o protocolo HTTP, apesar de não serem restritos a ele. Sobre o controle de acesso é incorreto afirmar que: O controle de acesso permite manter a confidencialidade e integridade das informações. Sessões são usadas Logins são uma forma de controle de acesso. Por questões de segurança sessões não são usadas. Busca identificar os usuários legítimos das informações. Explicação: A maioria das soluções de controle de acesso faz uso de sessões para aumentar o nível de segurança ao acesso à informação. Através das sessões, por exemplo, é possível ter o controle e o registro de acesso. Sessões ainda podem definir as operações que o usuário pode execer sobre um objeto. Com relação aos conceitos de arquitetura de aplicações, é correto afirmar que o MVC é um padrão que garante que uma lógica de negócios possa ser acessada e visualizada por uma única interface. de desenvolvimento cuja finalidade é definir uma interface na mesma camada da "lógica da aplicação". de objeto que executa uma operação quando ele recebe uma solicitação (mensagem) correspondente de um outro objeto. de arquitetura de aplicações que visa separar a "lógica da aplicação", a "interface do usuário" e a "persistência de dados". de operação dirigida para uma classe e não para um objeto individual. Explicação: A arquitetura MVC divide o aplicativo em 3 camadas: Model (Persistência), Control (Regras de Negócio) e View (Interfaces). Não pode ocorrer contato entre a View e a Model. No ambiente JEE, a anotação PersistenceContext é utilizada para: Definir uma interface remota para um EJB. Definir um EJB do tipo Stateless. Instanciar um EntityManager a partir daunidade de persistência. Efetuar a conexão com as filas de uma mensageria a patir do MDB. Acessar um EJB a partir de um Servlet. Explicação: O uso da anotação PersistenceContext permite instanciar um EntityManager a partir do nome da unidade de persistência, conforme as definições efetuadas no arquivo persistence.xml. O protocolo HTTP não armazena estado, ou seja, os dados são perdidos na navegação entre as páginas. Para manter os dados referentes a uma conexão deve ser utilizado, no servidor, um objeto do tipo: HttpRequest HttpResponse HttpServletRequest HttpServletResponse HttpSession Explicação: Os atributos de sessão, referentes a uma dada conexão, podem ser manipulados com o uso de um objeto do tipo HttpSession. No Servlet ele é obtido a partir da requisição com a chamada ao método getSession, enquanto no JSP ele é um objeto implícito denominado session. Aula 10 Componente dos Web Services SOAP que viabiliza a criação automatizada de clientes nas mais diversas plataformas: WSDL UDDI COS Naming IDL RPC Explicação: Através do descritor de serviços do SOAP, no caso o WSDL, ambientes como Visual Studio (C#) e NetBeans (Java) conseguem gerar os stubs de comunicação e classes para o encapsulamento das chamadas aos serviços oferecidos, o que tira do programador a responsabilidade de implementar toda essa comunicação em rede. Nos Web Services do tipo RESTful, qual o método HTTP utilizado para efetuar consultas aos valores das entidades? POST DELETE PUT HEAD GET Explicação: A utilização dos métodos HTTP pelo REST é bastante padronizada, como na adoção de GET para "SELECT" , PUT para "INSERT" e POST para "UPDATE". O que garante a plena interoperabilidade dos Web Services SOAP e transparência para os firewalls é: A criação em linguagem Java. Trabalhar com as bibliotecas Microsoft. Executar chamadas estilo RPC. Uso de um protocolo baseado em XML. A criação em linguagem C#. Explicação: A interoperabilidade é a comunicação entre plataformas distintas, e o uso de um protocolo texto, transparente aos firewalls, com a adoção de uma sintaxe interpretável em qualquer plataforma, no caso XML, acaba por garantir esta interoperabilidade. Não apenas o protocolo SOAP, mas também a descrição dos serviços (WSDL) e o registro (UDDI) são no formato XML, permitindo a interoperabilidade de Web Services SOAP em todos os níveis. As anotações utilizadas para definir um Web Service SOAP, um método deste Web Service, e os parâmetros de chamada do método são, respectivamente: WebService, Path e WebParam WebServlet, WebMethod e Param WebService, WebMethod e WebParam Service, WebMethod e Param Service, Path e PathParam Explicação: Para o Java, um Web Service SOAP é uma classe comum que recebe a anotação @WebService. Esta classe pode ter diversos métodos e nem todos eles devem ser expostos, sendo necessário o uso de @WebMethod nos métodos expostos, bem como @WebParam nos parâmetros dos mesmos. Sobre os Web Services é incorreto afirmar que: Formam uma solução utilizada na integração de sistemas e na comunicação entre aplicações identicas Permitem às aplicações enviar e receber dados. Permitem que sistemas desenvolvidos em plataformas diferentes sejam compatíveis. Permitem que novas aplicações possam interagir com aquelas que já existem. Formam uma solução utilizada na integração de sistemas e na comunicação entre aplicações distintas Explicação: Os web services são funções de softwares que apresentam uma estrutura arquitetural que permitem a comunicação entre aplicações, mesmo que suas linguagens sejam diferentes. Sobre REST é incorreto afirmar que: É baseado em protocolos off-line. É um estilo de arquitetura de software que define um conjunto de restrições a serem usadas para a criação de web services. É um modelo a ser utilizado para se projetar arquiteturas de software distribuído, baseadas em comunicação via rede. Consiste em princípios que, quando seguidas, permitem a criação de um projeto com interfaces bem definidas. Um dos seus princípios diz que todo recurso deve possuir uma identificação única. Explicação: REST tem como base certos protocolos da internet, logo são on-line.
Compartilhar