Baixe o app para aproveitar ainda mais
Prévia do material em texto
PERGUNTA 1 É comum incorporar à página HTML, código JavaScript para, dentre outras coisas, realizar validação dos campos do formulário. Uma outra utilização do JavaScript consiste na manipulação das folhas CSS, para que seja possível a construção de páginas responsivas. Dentre as afirmativas abaixo, assinale com “V”, o que for verdadeiro e, com “F”, o que for falso. (_) o código JavaScript deve estar localizado na área de cabeçalho da página, ou seja, dentro da região delimitada por <head> e </head>. (_) o nome do script JavaScript deverá ser referenciado por meio do parâmetro action da tag <form>. (_) a validação do formulário pode ocorrer somente quando o botão de submissão for pressionado pelo usuário. (_) a ativação de um script pode ser realizada também por meio de eventos tal como o onkeypress . Marque a alternativa que contenha a sequência correta. V; F; V; F. F; V; V; F. F; F; F; V. V; F; F; V. V; V; F; V. 1 pontos PERGUNTA 2 Padrões de projeto tem o objetivo de auxiliar o processo de projeto e implementação de sistemas computacionais, dentre os quais podemos relacionar as páginas web . Dentre os padrões existentes, podemos citar o GOF que consiste de uma coleção de padrões classificados em padrões de criação, padrões estruturais e padrões comportamentais. Muitos destes padrões compõem, ainda, o padrão MVC. Para essa questão, encontramos, abaixo, uma definição sumária de quatro destes padrões: I. Composite : permite a composição de objetos estabelecendo-se uma árvore de hierarquia e relacionamentos entre objetos que compõem a estrutura. II. Applicability : independentemente da estrutura do objeto, todos os objetos de uma estrutura são tratados de forma uniforme, desprezando-se as diferenças entre eles. III. Facade : esse padrão objetiva a construção de uma interface unificada para a integração de um conjunto de interfaces. IV. Data Access Object : realiza a mediação entre a aplicação propriamente dita e a base de dados. Dados os exemplos de uso, numere-os de forma a estabelecer um relacionamento entre os padrões apresentados acima e os exemplos de uso. (Data Access Object) Permite um baixo acoplamento e uma simplificação em relação à manutenção do sistema. (Composite ) Pode ser usado em ambientes que permitam uma editoração gráfica, na qual a figura consiste de uma árvore de objetos. (Facade) Criar subcamadas do sistema, permitindo uma abstração em um nível acima. (Applicability) Em um editor gráfico, todos os objetos gráficos, independentemente de suas composições, podem ser reunidos em uma classe abstrata, que incorpora as particularidades de todos os abrangidos. Assinale a alternativa que contenha a sequência correta. III; I; IV; II. II; I; III; IV. IV; I; III; II. IV; III; I; II. I; IV; III; II. 1 pontos PERGUNTA 3 Dentro da programação, independentemente de ser a codificação de um sistema baseado em páginas web ou não, temos sempre a preocupação de sua escalabilidade. Por exemplo, vamos supor que temos a necessidade de criar uma página para e-commerce e que são estabelecidos descontos diferenciados para cada tipo de forma de pagamento. Suponha que um programador fez uma primeira versão da seguinte forma (código em PHP): public function retornaDesconto($formaPG,$valor_compra) { if($formaPG==”Boleto”) {return $valor_compra*0.9;} else if($formaPG==”Debito”) {return $valor_compra*0.95;} else {return $valor_compra;} } Na implementação acima, temos o inconveniente de que, quando houver a necessidade de adicionar mais uma forma de pagamento, deveremos adicionar mais uma estrutura do tipo “else if... else”. Diante da situação, foram apresentadas algumas soluções: Solução 1: criar uma classe para cada tipo de forma de pagamento. Todas as classes teriam um método para retornar o valor com desconto – o nome e a lista de parâmetros seriam os mesmos para todas as classes. Por exemplo, para a classe boleto, a implementação seria: class Boleto { public function ValorComDesconto($valor_compra) { return $valor_compra*0.9; } } Solução 2: criar uma interface na qual todas as classes devem implementá-la. Assim, a solução ficaria: interface formaPG { public function ValorComDesconto($valor_compra); } class Boleto implements formaPG { public function ValorComDesconto($valor_compra) { return $valor_compra*0.9; } } Diante dessas duas versões de implementação, analise as afirmações a seguir. I. Não implementaria a “solução I” pois, assim que for determinado o tipo de pagamento, para criar um objeto relativo à classe pertinente deve-se fazer uma estrutura de “if...else if...” II. Implementaria ambas as soluções, pois ambas apresentam as mesmas vantagens e desvantagens. III. Não implementaria a “solução II” pois as classes ficariam não flexíveis, ou seja, todas deveriam seguir o mesmo padrão, o que dificultaria a reutilização do código. IV. Implementaria a “solução II”, pois a modificação do código para inserir ou retirar uma forma de pagamento, ficaria mais ágil e fácil de ser realizada. V. Implementaria a “solução I”, pois é mais fácil de entender. Diante das afirmações acima, selecione a opção correta. Apenas a afirmativa V é verdadeira. As afirmativas I e IV são verdadeiras. As afirmativas III e V são verdadeiras. As afirmativas I e III são verdadeiras. Apenas a afirmativa II é verdadeira. 1 pontos PERGUNTA 4 Muito se fala em aplicar padrões de projeto ( design pattern ) para o desenvolvimento de sistemas computacionais, dentre os quais encontram-se as páginas web . Para essa questão, considere as afirmativas abaixo. I. Possibilidade de reutilização de código, ou seja, usar componentes já utilizados em outros projetos; II. Decomposição do sistema em camadas funcionais; III. Separação de partes dependentes daquelas independentes do ambiente no qual o sistema será executado. IV. Possibilidade de uma documentação mais completa e concisa. Associe as afirmativas acima com as possíveis consequências: (_) melhor abstração do sistema, deixando-o mais legível para a codificação, depuração, correção e manutenção; (_) maior facilidade para a portabilidade dos sistemas para outros ambientes computacionais; (_) facilitar o diálogo entre as equipes que atuarão no desenvolvimento do projeto; (_) diminuição do tempo gasto para a implementação do sistema, acarretando, consequentemente, diminuição dos gastos. Assinale a opção que contenha a sequência correta de relações entre as afirmativas e as consequências. III; II; I; IV I; IV; II; III. IV; I; III; II. II; I; IV; III. II; III; IV; I. 1 pontos PERGUNTA 5 Temos inúmeros padrões de projeto que podemos aplicar no desenvolvimento de nossas páginas, dentre os quais, podemos mencionar o padrão GOF e o padrão MVC. Analise as afirmações abaixo, classificando-as como “V”, se forem verdadeiras, ou “F”, se forem falsas. (_) O padrão GOF é mais restritiva, ou seja, analisa um aspecto em específico. (_) O padrão GOF contempla três grupos: criação; estrutural e comportamental. (_) O padrão GOF é o preferido para a implementação de páginas. (_) O padrão MVC é totalmente divergente em relação ao GOF. Assinale a alternativa que que apresenta a sequência correta. F; V; V; F. F; V; F; F. V; F; V; F. V; F; F; V. F; V; V; V. 1 pontos PERGUNTA 6 Várias páginas oferecem a possibilidade de interação com o usuário por meio de formulários. Para um processamento correto, as informações fornecidas devem ser validadas, para que possam ser processadas no servidor. Considerando isso, analise as afirmações a seguir. I. Em um modelo de III camadas, a validação do formulário deve ocorrer na camada I, tanto em relação à estrutura, quanto em relação à regra de negócio. II. A validação de estrutura deve ocorrer na camada I e a validação em relação às regras de negócio na camada II. III. É comum usar, para a validação em relação à estrutura, JavaScript e, para as regras de negócio, comumente usa-se PHP. IV. Toda validação é realizada na camada II, aplicando-se funções escritas em PHP. A partir das observações realizadas, marque aalternativa correta. As afirmativas III e IV são verdadeiras. Apenas a afirmativa I é verdadeira. Apenas a afirmativa IV é verdadeira. As afirmativas II e III são verdadeiras. As afirmativas I e III são verdadeiras. 1 pontos PERGUNTA 7 A validação de um campo pode ser realizada de duas maneiras: a verificação da estrutura e a verificação do valor. No caso, por exemplo, do CPF, a verificação da estrutura poderá ser realizada com a utilização de expressões regulares e, a verificação do valor, com codificação JavaScript direta. Para essa questão, suponha o código para a validação estrutural abaixo. <html> <head> <script language="JavaScript"> function VerificarCPF(f) { var exp_regCPF = ___; if(exp_regCPF.test(f.___.value)) { alert("___"); return true; } else { alert("___"); return true; } } </script> </head> <body> <form name="cadastro" method=”POST” _1_="return VerificarCPF(this);"> <p>Número do CPF: <input type="text" name="cpf"></p> <p><label><input type="submit" name="Verificar" value="Verificar"></label></p> </form> </body> </html> Preencha os campos em aberto escolhendo itens da lista a seguir. I. onSubmit II. action III. /^\d{3}\.\d{3}\.\d{3}\-\d{2}$/ IV. /^\d{0-9}\.\d{0-9}\.\d{0-9}\-\d{0-9}$/ V. cpf VI. cadastro VII. CPF não válido VIII. CPF válido Assinale a alternativa que contém a sequência correta. III; V; VII; VIII; I. IV; V; VIII; VII; I. III; V; VIII; VII; II. III; V; VII; VIII; II. III; V; VIII; VII; I. 1 pontos PERGUNTA 8 Sabe-se que para a codificação de uma página, pode-se utilizar, além do HTML, linguagens de programação, tais como JavaScript e o PHP. Sabe-se, também, que o desenvolvimento da página pode ser estruturado em camadas funcionais. Para essa questão, dadas as afirmativas a seguir, assinale com “J”, a afirmativa que se relaciona com o JavaScript, e com “P”, a que se relaciona com o PHP. (_) Está mais associada com a parte de regras de negócio, interfaceando a camada de interação com o usuário, com a camada de armazenamento persistente (bancos de dados). (_) Relaciona-se mais com a camada de interface com o usuário pois, com ela, pode-se fazer, por exemplo, validação de formulário de forma mais fácil. (_) Em um formulário, o seu código é referenciado no parâmetro “onSubmit”. (_) Em um formulário, o seu código é referenciado no parâmetro “action”. Assinale a opção que contenha a sequência correta. J; P; P; J. J; P; J; P. P; P; J; P. P; J; J; P. P; J; P; J. 1 pontos PERGUNTA 9 Suponha que você tenha que implementar um projeto que relaciona a classe pessoa (que contém o método locomover ) a três tipos de veículos: carro (métodos acelera e freia ), bicicleta (métodos pedala e freia ) e moto (métodos acelera e freia ). Para melhorar o projeto, pode-se, por exemplo, adotar o padrão strategy . Para essa questão, suponha as afirmativas abaixo. I. A nova versão implementaria uma interface do tipo veículo , que contém os métodos acelera e freia. II. A nova versão implementaria uma nova classe do tipo veículo , que contém os métodos acelera e freia. III. Na nova versão, as classes carro , bicicleta e moto implementariam a interface veículo. IV. Na nova versão, as classes carro , bicicleta e moto fariam parte da composição da classe veículo . V. Na nova versão, as classes carro , bicicleta e moto fariam um relacionamento de cardinalidade 1:1 para a interface veículo. Assinale a alternativa correta. As afirmativas II e IV são verdadeiras. As afirmativas I, II, III e IV são verdadeiras. As afirmativas I e V são verdadeiras. As afirmativas II e V são verdadeiras. As afirmativas I e III são verdadeiras. 1 pontos PERGUNTA 10 Páginas responsivas poderão ser construídas por meio da combinação de scripts JavaScript com as folhas de estilo CSS. Uma das formas é adicionar ou retirar regras CSS. Porém, quando se codifica páginas, sempre há uma preocupação frente à versão ou ao tipo de navegador que o usuário poderá usar para abrir as referidas páginas. Para essa questão, analise os elementos de codificação que poderão ser usados em suas páginas. I. if(obj.addRule) {obj.addRule(seletorCSS,defEstilo, índice);} else {obj.insertRule(seletorCSS,defEstilo, índice);} II. $(document).ready(function(){ código para verificar o tipo do ambiente para, depois, manipular CSS }); III. var v = document.createElement(“style”); body.appendChild(v); IV. var v = document.createElement(“style”); head.appendChild(v); Marque a opção correta. Pode-se usar os códigos numerados como II e III. Pode-se usar os códigos numerados como I, II e IV. Pode-se usar os códigos numerados como I e III. Pode-se usar apenas o código numerado como III. – local correto, quando analisamos a afirmativa IV. Pode-se usar apenas o código numerado como I.
Compartilhar