Buscar

ENG DE SOFTWARE WEB - ATV 2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

30/03/2020 Blackboard Learn
https://fmu.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller# 1/6
Pergunta 1
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
Padrões de projeto auxiliam a implementação de páginas web , pois permitem vários níveis de
abstrações em suas diversas funcionalidades e demandas. Dentre os vários padrões existentes
atualmente, destaca-se o GOF que, na verdade, é constituído por diversos padrões classificados em
três classes: padrões de criação, padrões estruturais e padrões comportamentais. Além do GOF,
existe o MVC – padrão preferido para a implementação de páginas. Em sua estruturação, o MVC é
constituído por três camadas: camada de visão, camada de modelo e camada de controle. Tais
camadas incorporam diversos padrões GOF. Dados os padrões a seguir, classifique-os identificando
com “M”, se ele integrar a camada de modelo; com “V”, caso ele seja implementado na camada de
visão e; com “C”, se ele estiver presente na camada de controle.
 
(_) composite 
(_) observer 
(_) strategy 
(_) factory 
 
Assinale a alternativa que corresponda à sequência correta.
V; M; C; C.
V; M; C; C.
Resposta correta. Sua resposta está correta. O “ composite” oferece recursos para a
“composição visual”. A camada de modelo, uma vez que deve informar às demais as
modificações, deve implementar a estratégia “ observer”. Por fim, a camada de controle
deve ter regras para controlar as outras duas camadas. Como exemplo de tais regras,
temos o “ strategy” e o “factory”.
Pergunta 2
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
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.
 
(_) Permite um baixo acoplamento e uma simplificação em relação à manutenção do sistema.
(_) Pode ser usado em ambientes que permitam uma editoração gráfica, na qual a figura consiste de
uma árvore de objetos.
(_) Criar subcamadas do sistema, permitindo uma abstração em um nível acima. 
(_) 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.
IV; I; III; II.
IV; I; III; II.
Resposta correta. Sua resposta está correta. Temos vários padrões envolvendo a criação
de páginas. Cada padrão cobre um aspecto específico em relação à estrutura,
comportamento e de visão.
Pergunta 3
1 em 1 pontos
1 em 1 pontos
1 em 1 pontos
30/03/2020 Blackboard Learn
https://fmu.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller# 2/6
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
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.
As afirmativas I e IV são verdadeiras.
As afirmativas I e IV são verdadeiras.
Resposta correta. Sua resposta está correta. A “solução 2” representa um padrão
chamado deStrategy (estratégia). É um dos padrões GOF usados para a linha
comportamental do sistema.
Pergunta 4
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
1 em 1 pontos
30/03/2020 Blackboard Learn
https://fmu.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller# 3/6
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}$/
30/03/2020 Blackboard Learn
https://fmu.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller# 4/6
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
V. cpf
VI. cadastro
VII. CPF não válido
VIII. CPF válido
 
Assinale a alternativa quecontém a sequência correta.
 III; V; VIII; VII; I.
 III; V; VIII; VII; I.
Resposta correta. Sua resposta está correta. Você acertou a expressão regular
observando os campos que representam valores e aqueles que representam a
quantidade de ocorrências. Além disso, fez uso do método test de forma apropriada e
acertou quando usar o action e quando usar o onSubmit.
Pergunta 5
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
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 I, II e IV.
Pode-se usar os códigos numerados como I, II e IV.
Resposta correta. Sua resposta está correta. A afirmação I codifica a adição de uma
regra CSS. Porém, dependendo do navegador, é implementado o método “addRule” ou
“insertRule”. Sendo assim, há um teste para verificar se o método “addRule” existe. Na
codificação da afirmação II, as alterações de CSS é realizada apenas após o teste de
verificação de ambiente. Por fim, no código da afirmação III, existe um erro no local da
inserção. Na verdade, deveria ser head.appendchild()
Pergunta 6
Às vezes, por uma questão de praticidade ou de comodidade, desenvolvemos páginas em um
ambiente diferente em relação ao de produção. Aquele que o sistema, em sua versão final, será
implantado para ser operado. Analise as afirmativas a seguir e assinale com “V”, o que for verdadeiro
e com “F”, o que for falso.
 
(_) O desenvolvedor deve prestar atenção em diferenças dos ambientes Linux e Windows, como, por
exemplo, realizar a verificação dos atributos de permissão de arquivos, mais rígidos no Linux.
(_) Deve-se optar por desenvolver em um ambiente distinto em relação à produção para que se possa
testar a compatibilidade do código.
(_) Caso haja necessidade de desenvolver em uma máquina Windows, pode-se instalar uma máquina
virtual Linux para que todo o trabalho seja desenvolvido para tal ambiente.
(_) Apache e MySQL foram desenvolvidos nativamente para Linux.
1 em 1 pontos
1 em 1 pontos
30/03/2020 Blackboard Learn
https://fmu.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller# 5/6
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
 
Assinale a opção correta.
V; F; V; V.
V; F; V; V.
Resposta correta. Sua resposta está correta. O desenvolvimento de páginas que
envolvem PHP, Apache e MySQL serão melhor desenvolvidos e executados em
ambientes dotados de Linux. É interessante que os ambientes (de desenvolvimento e de
produção) sejam iguais, para se evitar possíveis comportamentos indesejados de
processamento.
Pergunta 7
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
O padrão MVC é um dos mais utilizados no mundo do desenvolvimento de páginas por contemplar um
nível de abstração mais amplo. Para tanto, ele contempla três camadas: a camada de modelo, a
camada de visão e a camada controladora. Dadas as funcionalidades abaixo, relacione com as
camadas atribuindo os valores “M”, “V” e “C”, respectivamente.
 
(_) Conhecida como “ client-side ”.
(_) Gerencia as demais outras camadas.
(_) Trata as regras de negócio.
(_) Determina qual modelo será aplicado e qual forma de visão será passada ao usuário.
(_) Utiliza HTML e/ou XML.
(_) Notifica as outras duas camadas na ocorrência de alterações.
 
Assinale a alternativa que contém a sequência correta.
V; C; M; C; V; M.
V; C; M; C; V; M.
Resposta correta. Sua resposta está correta. O padrão MVC apresenta a possibilidade
de tornar o sistema altamente dinâmico. A camada de controle é capaz de decidir quais
serão as regras de negócio que a camada de modelo deverá executar e qual será a visão
que o usuário deve ter em um certo momento. A ação da camada de controle é dinâmica,
para tal, ela recebe notificações sobre possíveis alterações inerentes à camada de
negócio. A camada de visão tem a função de manipular elementos relacionados aos
aspectos visuais e de interação com o usuário. Para tanto, manipula codificação em
HTML e/ou XML.
Pergunta 8
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
Às vezes, programar diretamente usando JavaScript, principalmente quando temos que manipular
CSS torna-se uma tarefa árdua. Sem contar pelo fato de que o JavaScript pode ter problemas de
compatibilidade entre os navegadores. Diante destes e outros motivos, surgiu a biblioteca JQuery.
Analisando as afirmativas a seguir, assinale com “V”, o que for verdadeiro e com “F”, o que for falso. 
 
(_) Pelo fato de ser inserida uma camada a mais (representada pelo JQuery), o tempo de
processamento foi aumentado em demasia – não compensando o uso de JQuery.
(_) O JQuery substituiu, com grande vantagem, as animações em Flash.
(_) O JQuery, em relação ao lado do programador, fez com que fossem economizadas várias linhas de
código.
(_) O JQuery mantém compatibilidade com diversos tipos e versões de navegadores.
 
Assinale a opção que contenha a sequência que você julgue como sendo a correta.
F; V; V; V.
F; V; V; V.
Resposta correta. Sua resposta está correta. O JQuery é uma biblioteca pequena que
não introduziu atrasos significativos e nem consumo excessivo extra de memória para o
seu processamento. Substituiu o Flash e consegue ter uma compatibilidade cross-
browser (entre navegadores).
1 em 1 pontos
1 em 1 pontos
30/03/2020 Blackboard Learn
https://fmu.blackboard.com/webapps/late-Course_Landing_Page_Course_100-BBLEARN/Controller# 6/6
Pergunta 9
Resposta Selecionada: 
Resposta Correta: 
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. Singleton : permite uma única instanciação de objeto de uma classe específica.
II. Interator : objetiva acessar, sequencialmente, os elementos de uma lista sem precisar conhecer a
estrutura de relacionamento (por exemplo, array e tabela
hash ).
III. State : neste padrão, acontece uma alteração do comportamento de um objeto em função da
alteração de seu estado.
IV. Observer : um objeto realiza a notificação para outros objetos, devido a sua alteração de estado.
 
Dados os exemplos de uso, numere-os de forma a estabelecer um relacionamento entre os padrões
apresentados acima e os exemplos de uso.
 
(_) Criar um mapa do site 
a partir do percurso de todos os elementos que compõem uma coleção de menus.
(_) Delimitar uma única conexão ao banco de dados por processo.
(_) Objetos da camada de modelo notificam a camada de controle, dentro do escopo do MVC, por
ocasião de suas alterações de estado. 
(_) Dentro de um jogo de RPG, as regras (condições e consequências dos comandos “if”) dependem
do estado corrente do objeto.
 
Assinale a alternativa que contenha a sequência correta.
III; I; IV; II.
II; I; IV; III.
Pergunta 10
Resposta Selecionada: 
Resposta Correta: 
Feedback
da
resposta:
Na implementação de páginas web , uma das linguagens mais utilizadas é o PHP. Na filosofia em
camadas, oPHP aparece na camada intermediária, ou seja, entre a camada de interfaceamento com
o usuário e a camada que compreende as bases de dados. Analise as afirmações a seguir e assinale
com “M” o que for motivo da adoção do PHP, e com “N”, caso contrário.
 
(_) Suporta vários gerenciadores de bancos de dados, como por exemplo: MySQL, PostgresSQL e
Sybase.
(_) Tem suporte a diversos protocolos, tais como: LDAP, SNMP e SSH2.
(_) Consegue interagir de forma muito eficiente com o HTML para validar campos do formulário.
(_) Boa interatividade com o servidor APACHE.
 
Assinale a opção que apresenta a sequência correta.
M; M; N; M.
M; M; N; M.
Resposta correta. Sua resposta foi acertada. O PHP, como linguagem de programação
para implementar a camada intermediária, deve possuir boa interação com os
gerenciadores de bancos de dados e com o próprio servidor de páginas. No caso, ele
possui esses requisitos. Como base para a implementação da camada intermediária e
não para a camada de interfaceamento com o usuário, ele (o PHP) não precisa ter
requisitos que permita uma boa interação com o HTML.
0 em 1 pontos
1 em 1 pontos

Outros materiais