Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prova final Desenvolvimento em Javascript Acertos 9 de 10 Nota 45 pontos Correção da prova Questão 1 Respondida Antes de existir dispositivos Android ou iPhone, os desktops foram alvo de batalha no que ficou conhecido como “Guerras dos navegadores”. A batalha envolveu bilhões de dólares investidos por várias empresas, especialmente a Microsoft e Netscape, e o resultado dessa disputa culminou numa padronização para o desenvolvimento de conteúdos web e melhoria na velocidade de processamento dos dados. Com base no apresentado e nos conhecimentos adquiridos, assinale a alternativa correta: • Com o resultado dessa disputa surgiu a HTML, que consiste em uma árvore de elementos que deve ser acessada através da linguagem universal • Com o resultado dessa disputa surgiu a javascript, que consiste em uma árvore de elementos para desenvolvimentos de documentos html que deve ser acessada através da linguagem universal • Com o resultado dessa disputa surgiu o DOM, que consiste em uma linguagem de marcação que deve ser acessada através da estrutura • Com o resultado dessa disputa surgiu a javascript, que consiste em uma linguagem de programação universal para desenvolvimento de documentos html estruturados pelo DOM. • Com o resultado dessa disputa surgiu a HTML, que consiste em uma linguagem de marcação para desenvolvimento de documentos XML através das interfaces de programação de aplicativos. Sua resposta Com o resultado dessa disputa surgiu a javascript, que consiste em uma linguagem de programação universal para desenvolvimento de documentos html estruturados pelo DOM. Alternativa correta Questão 2 Respondida Observe o código a seguir: a = 3 b = 2 console.log(a < b) console.log(a % 2 == 1) console.log(a < b || a % 2 == 1) console.log(a < b && a % 2 == 1) Este código apresenta uma série de expressões lógicas impressas na tela por meio do comando console.log(). Uma expressão lógica pode ter duas opções de saída: true (verdadeiro) ou false (falso). Corresponde à saída deste código: • false true true false • true true true false • false true true true • false true false false • false false true false Sua resposta false true true false Alternativa correta: false true true false - console.log(a < b) -> falso porque a vale 3 e b vale 2 - console.log(a % 2 == 1) -> verdadeiro pois a é um número ímpar - console.log(a < b || a % 2 == 1) -> verdadeiro pois a segunda expressão é verdadeira e foi usado o operador OR - console.log(a < b && a % 2 == 1) -> falso pois a primeira expressão é falsa e foi usado o operador AND Questão 3 Respondida Avalie a seguinte situação: No ensino regular obrigatório, estudantes devem atender a certas faixas etárias para cursar cada nível educacional. Na teoria, os alunos devem ter as seguintes idades para atenderem a cada nível educacional: - Pré-escola: de 4 a menos do que 6 anos - Ensino fundamental: de 6 a menos do que 15 anos - Ensino médio: de 15 a menos do que 18 anos Qual condicional pode ser usada para representar alunos do ensino fundamental? • if(idade >= 6 && idade < 15) • if(idade > 6 && idade < 15) • if(idade >= 6 && idade <= 15) • if(idade > 6 && idade > 15) • if(idade > 6 && idade <= 15) Sua resposta if(idade >= 6 && idade < 15) Resposta correta: if(idade >= 6 && idade < 15) O texto afirma que deve ir “de 6 a menos do que 15 anos”, logo deve-se considerar o valor 6 (ou seja, >= 6) e deve ser menor que 15 (logo, idade < 15). INCORRETAS: - if(idade > 6 && idade < 15) -> INCORRETA pois idade deve ser >= 6 - if(idade >= 6 && idade <= 15) -> INCORRETA pois idade deve ser < 15 - if(idade > 6 && idade > 15) -> INCORRETA pois idade deve ser >= 6 e < 15 - if(idade > 6 && idade <= 15) -> INCORRETA pois idade deve ser >= 6 e < 15 Questão 4 Respondida Em linguagens de programação, tipos de dados correspondem às especificações de informações armazenadas em variáveis. JavaScript é considerada uma linguagem de tipagem dinâmica, ou seja, o tipo do dado é identificado com base na informação passada na declaração ou atribuição da variável. Corresponde a uma variável que recebe um tipo de dado booleano: • var x = 0 • var x = true • var x = “False” • var x = “Bool” • var x = NaN Sua resposta var x = true Resposta correta: var x = true O valor true (verdadeiro) indica que é uma variável booleana. Quanto às alternativas incorretas: var x = 0 – variável numérica var x = “False” - string var x = “Bool” - string var x = NaN - NaN (Not-A-Number) é uma propriedade do objeto global. Questão 5 Respondida Os iteradores for e while podem ser usados para repetir um bloco de código por um conjunto de itens pré-selecionados e enquanto uma condição for verdadeira, respectivamente. Os códigos a seguir tem a mesma função: imprimem uma lista de números de 0 a 4: for(x = 0; x < 5; x++){ console.log(x); } while(x > 5){ console.log(x); x++; } Entretanto, ao executar o código acima, apenas o laço for funcionou. Qual alternativa indica o possível motivo para isso ter acontecido? • O laço while não pode ser executado após o laço for. • O laço while apresenta um erro que gera ao loop infinito. • JavaScript impede que dois códigos iguais sejam executados em seguida. • O laço for tem prioridade sobre while. • A condição do laço while não era verdadeira. Sua resposta A condição do laço while não era verdadeira. Resposta correta: A condição do laço while não era verdadeira. Isso ocorre pois o laço “for” percorre os valores de 0 a 4 e termina com x igual a 5. Quando "while" vai ser executado, a condição não é mais válida, pois x > 5 é falso, logo nada será impresso. INCORRETAS: O laço while não pode ser executado após o laço for. INCORRETO pois não há limitações para o uso de laços em sequência. O laço while apresenta um erro que gera ao loop infinito. INCORRETO pois a variável é incrementada dentro do laço while. JavaScript impede que dois códigos iguais sejam executados em seguida. INCORRETO pois não existe tal limitação. O laço for tem prioridade sobre while. INCORRETO pois não há regra definindo prioridades de laços. Questão 6 Sem resposta O DOM é uma interface de programação de aplicativos padronizada que atua na estruturação de implementações WEB. Por meio da linguagem de marcação HTML, XML ou XHTML, o DOM organiza e estrutura os elementos na página em forma de nós. Uma aplicação web, no entanto, é muito mais que textos estruturados e ordenação. É também interesse visual e apresentações convidativas para a interação com o usuário. Para sanar essa necessidade, criou-se o: • API DOM, que se trata de um conjunto de métodos e propriedades que permitem integrar extensões gráficas da WEB. • CSS ou Cascading Style Sheet de modo literal quer dizer folhas de estilo em cascata. Esse nome se dá por ter surgido como um importante recurso no desenvolvimento WEB para colaborar com a estética das aplicações. • Python e Javascript, e sua utilização na construção de uma aplicação WEB é feita no próprio arquivo de documento HTML ou um arquivo XML, sendo encarregado das funções de design e layout da página. • CSS ou Cascading Style Sheet, que recebe o nome de cascata por consistir em um diagrama de árvore de objetos organizada em forma hierárquica de seus elementos. • Script, que através da tag pode-se acessar o código que irá dar a estilização no próprio arquivo do documento. Sua resposta CSS ou Cascading Style Sheet de modo literal quer dizer folhas de estilo em cascata. Esse nome se dá por ter surgido como um importante recurso no desenvolvimento WEB para colaborar com a estética das aplicações. Resposta correta Questão 7 Sem resposta Em JavaScript, comandos condicionais alteram o fluxo do código, verificandose uma condição é válida antes de executar um bloco de código. Analise o código a seguir: 1. x = 5 2. y = 2 3. 4. if((x < y)||(y % 2 == 1)){ 5. console.log("x é maior do que y OU x é um número ímpar") 6. } Sobre o código acima, qual alternativa melhor explica um dos motivos a mensagem da linha 5 ser executada ou não: • O código será executado, pois x é maior do que y. • O código será executado, pois x é um número ímpar. • O código não será executado, pois y não é um número ímpar. • O código não será executado, pois y é maior do que x. • O código será executado, pois foi usado o condicional OR. Sua resposta O código não será executado, pois y não é um número ímpar. Resposta: O código não será executado, pois y não é um número ímpar. Nesse caso, vemos uma condicional avaliando se x é menor que y (falso) ou y é ímpar (falso), logo o código não será executado. INCORRETAS: O código será executado, pois x é maior do que y. FALSO, pois essa condição não é avaliada. O código será executado, pois x é um número ímpar. FALSO, condição não avaliada. O código não será executado, pois y é maior do que x. FALSO, x é maior que y. O código será executado, pois foi usado o condicional OR. FALSO, apesar de usar OR, as duas condições são falsas (0 or 0 == 0). Questão 8 Sem resposta “O JavaScript é uma linguagem simples e despretensiosa que tem seus dedos em cada canto de sua vida. Desligue o JavaScript em seu navegador e veja o quanto da web não funciona mais. Não importa como ou onde você use a internet, a codificação de Brendan Eich é o sprint mais importante da história da computação. Você não tem que gostar de JavaScript, mas se você ganha a vida desenvolvendo para a web, você tem que aprender.” - Doug Tidwell, programador sênior na IBM. Com base no assunto, avalie as afirmações a seguir: I – Antigamente, era preciso considerar qual navegador tinha compatibilidade com a aplicação WEB que iria utilizar, até que surgiu o javascript como uma unificação de linguagem para desenvolvimento web em documentos HTML, XML e XHTML. II - O DOM surgiu como uma organização acessada apenas através da javascript para representação estruturada da página web de um navegador, ou seja, para que se possa acessar e interagir com objetos em documentos HTML, XHTML e XML. III - Por meio da linguagem de marcação HTML, o DOM organiza e estrutura os elementos na página, e para a construção da imagem visual das aplicações criou-se o CSS. É correto o que se afirma: • Apenas em II • Apenas em I e II • Em I, II e III • Apenas em I e III • Apenas em III Sua resposta Apenas em I e III Alternativa correta Questão 9 Sem resposta JavaScript é uma linguagem de programação usada em aplicações web. Pode-se dizer que JavaScript é utilizada em conjunto com as linguagens HTML (Linguagem de Marcação de HiperTexto) e CSS (Folhas de Estilo em Cascata) para o desenvolvimento de websites e outros tipos de aplicações web (FLANAGAN, 2011). São características da linguagem JavaScript: • É uma linguagem de scripts, interpretada, com tipagem dinâmica e fraca, mas sem suporte a orientação a objetos. • Sua sintaxe é baseada na linguagem de programação Java, tendo sido desenvolvida em colaboração com a Sun Microsystems. • Pode ser executada tanto em client-side por meio de navegadores quanto em server-side por meio de aplicações como o Node.js. • JavaScript foi criado pela ECMA (European Computer Manufacturers Association), empresa privada responsável pelo navegador Firefox. • Não possui suporte para operar usando HTML, sendo consideradas linguagens concorrentes no desenvolvimento web. Sua resposta Pode ser executada tanto em client-side por meio de navegadores quanto em server-side por meio de aplicações como o Node.js. Resposta correta: Pode ser executada tanto em client-side por meio de navegadores quanto em server-side por meio de aplicações como o Node.js. Quanto às alternativas incorretas: - É uma linguagem de scripts, interpretada, com tipagem dinâmica e fraca, mas sem suporte a orientação a objetos: INCORRETA pois JavaScript possui suporte a orientação a objetos. - Sua sintaxe é baseada na linguagem de programação Java, tendo sido desenvolvida em colaboração com a Sun Microsystems: INCORRETA pois Java e JavaScript são linguagens distintas, e a escolha do nome se deu pela popularidade do Java. - JavaScript foi criado pela ECMA (European Computer Manufacturers Association), uma empresa privada responsável pelo navegador Firefox: INCORRETA pois JavaScript foi criada pela Netscape. O padrão ECMAScript foi especificado pela ECMA. - Não possui suporte para operar usando HTML, sendo consideradas linguagens concorrentes no desenvolvimento web: INCORRETA pois scripts podem ser incorporados por meio da tag . Questão 10 Sem resposta Observe o código abaixo: x = true y = false if(x&&y){ console.log(1) } else if(!(x)||y){ console.log(2) } else if(x&&!(y)){ console.log(3) } else if(x||y){ console.log(4) } else{ console.log(5) } A seguir, responda: O que será impresso na tela? • 1 • 2 • 3 • 4 • 5 Sua resposta 2 Resposta: será impresso 3. Isso ocorre, pois, a negação inverte o valor de y, e como os dois são verdadeiros o resultado será verdadeiro. INCORRETAS: - if(x&&y){ => falso pois y é false. - else if(!(x)||y){ => falso pois inverte o valor de x de true para false. - else if(x||y){ => verdadeiro, mas como a condição else if anterior foi executada primeiro, esta não será executada: - else{ => falso pois uma condição else if anterior foi executada.
Compartilhar