1/70
Tópico 02 - Uso de um Sistema de Controle de Versões Distribuído
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Qual o comando utilizado para apresentar o histórico de commits?
O comando utilizado foi: git log.
Git é uma ferramenta de controle de versão distribuída muito utilizada por profissionais de Tecnologia da Informação (TI) na atualidade.
Sabendo que o modo mais usual de manipular um repositório Git se dá pela entrada de instruções via prompt de comando, marque a alternativa que apresenta as funcionalidades da instrução git add.
R: Prepara arquivos do repositório local para serem incluídos na próxima versão consolidada. O comando git add
é utilizado para incluir arquivos ao monitoramento do Git, preparando-os para a próxima versão por meio do comando commit
.
O comando add serve para incluir arquivos ao monitoramento local do Git, bem como os prepara para serem incluídos na próxima versão por meio do comando commit (consolidação). Esse comando não tem a capacidade de unir dois arquivos nem importar ou exportar arquivos e repositórios.
Um sistema de controle de versão distribuído como o Git tem a capacidade de visualizar o estado dos arquivos que são gerenciados pelo repositório local.
Considerando que um commit foi realizado recentemente e que nenhum arquivo foi modificado após essa instrução, marque a alternativa que representa o resultado da execução do comando git status.
R: Nothing to commit, working tree clean.
Uma vez que nenhuma alteração foi realizada nos arquivos após a execução de um commit, o comando git status informará “Nothing to commit, working tree clean”, pois não há nada para ser consolidado. As demais opções não representam resultados do status.
No sistema de controle de versão distribuído Git, a instrução commit é utilizada para realizar a consolidação do estado atual dos arquivos, os quais estão preparados em uma versão segura.
Considerando que um desenvolvedor queira realizar commit de modo rápido, sem precisar preparar os arquivos que foram modificados, marque a opção correta.
R: O desenvolvedor utiliza a opção -a para pular a fase de preparação.
Para preparar um arquivo que entrará no commit,o desenvolvedor utiliza a instrução add. No entanto, essa preparação não é obrigatória, pois a opção -a pula a fase de preparação e inclui no commit todos os arquivos que foram modificados.
GitHub é um conjunto de repositórios remotos que contêm centenas de milhares de projetos públicos, os quais podem ser baixados, pelo Git, por qualquer pessoa que tenha acesso à Internet.
Marque a alternativa que realiza o download de um repositório remoto pelo Git contendo todo o seu histórico de commits.
R: Git clone [caminho do repositório].
Para clonar um repositório remoto utilize o comando git clone e informe o caminho ou endereço do repositório. Download não é um comando válido do git e checkout é utilizado para trabalhar com branches.
A atualização de dados de um repositório local pode ser realizada a partir de uma busca no repositório remoto. Essa busca tem em vista trazer apenas o que foi modificado desde a última atualização publicada no repositório remoto.
Considerando que Git tem comandos específicos para fazer a atualização local, indique a alternativa correta.
R: Os comandos fetch e pull trazem apenas as atualizações; no entanto, pull faz merge automaticamente com os branches locais.
Os comandos fetch e pull trazem apenas as atualizações do repositório remoto em relação ao repositório local; a diferença é que pull faz merge automaticamente. O comando clone traz todo o repositório remoto, não apenas as atualizações.
A linguagem de programação C#, desenvolvida pela Microsoft, faz parte da plataforma .NET para o desenvolvimento de aplicativos móbile, desktop e Web. Com base nas características dessa linguagem, marque a alternativa correta:
A.
É orientada a componentes, no entanto, por medida de segurança, não permite o uso de bibliotecas externas às da própria linguagem.
B.
Por ser da Microsoft, executa apenas no sistema operacional Windows.
C.
Implementa o paradigma da orientação a objetos por meio de classes, herança, polimorfismo e outros.
D.
Diferentemente das linguagens C e C++, não permite acesso direto à memória por meio de ponteiros.
Resposta: C.
Implementa o paradigma da orientação a objetos por meio de classes, herança, polimorfismo e outros.
C# implementa o paradigma da orientação a objetos como uma de suas principais características. É orientada a componentes, aceitando inúmeras bibliotecas, inclusive as implementadas por outras linguagens. C# faz uso de ponteiros, assim como C e C++ e, apesar de o Visual Studio ser a sua principal IDE, aceita várias outras.
A linguagem C# pode se conectar a diversos sistemas gerenciadores de banco de dados, como SQL Server, Oracle e MySQL, entre outros. Considerando que se deseja conectar com o MySQL versão 8, indique a alternativa que representa a respectiva configuração na IDE Visual Studio 2019.
A.
Inclusão da biblioteca MySQL.Connector nas referências do projeto.
B.
Inclusão da biblioteca MySQL.Data nas referências do projeto.
C.
Inclusão da biblioteca MySQL.Connector nos componentes do projeto.
D.
Inclusão da biblioteca MySQL.Data nos componentes do projeto.
E.
Inclusão da biblioteca MySQL.Connector nos serviços do projeto.
B. Inclusão da biblioteca MySQL.Data nas referências do projeto.
No Visual Studio 2019, deve-se adicionar a conexão com o MySQL 8 por meio do menu Projeto – Adicionar Referência. Em seguida, deve-se localizar e confirmar a biblioteca MySQL.Data.
Uma forma de acessar um banco de dados MySQL com o C# é por meio de uma string de conexão utilizada na classe MySQLConnection. Informe a alternativa que apresenta um exemplo de string de conexão com o MySQL.
A.
“SERVER=localhost;DB=db_name;USER=user;PWD=password”.
B.
“SERVER=127.0.0.1;DATABASE=db_name;USER=user;PWD=password”.
C.
“SERVER=locahost;SCHEMA=db_name; UID=user;PAS=password”.
D.
“SERVER=127.0.0.1;PORT=3308;DATABASE=db_name;UID=user;PWD=password”.
E.
“SERVER=localhost;DATABASE=db_name; PORT=3306;UID=user;PAS=password”.
D. “SERVER=127.0.0.1;PORT=3308;DATABASE=db_name;UID=user;PWD=password”.
A string de conexão do C# tem os itens SERVER, DATABASE, UID e PWD como obrigatórios e PORT como opcional. Os itens DB, USER, SCHEMA e PAS não são válidos para o C#.
C# é uma linguagem fortemente tipada, o que significa que deve haver conversão explícita de dados quando um certo dado não é do mesmo tipo da variável que irá recebê-lo. Considerando o código e a execução da instrução TryParse abaixo, escolha a alternativa que informa o valor da variável número:
int numero = 0;
bool n = Int32.TryParse(“12.1”, out numero).
A.
O número será 0 porque não é possível converter “12.1” em inteiro.
B.
O número será 12.
C.
O número será 12.1.
D.
O número receberá 121.
E.
Gerará um erro em tempo de execução pela tentativa inválida de converter “12.1” em inteiro.
A. O número será 0 porque não é possível converter “12.1” em inteiro.
A variável número receberá 0 porque não é possível converter “12.1” em um número inteiro, pois a função TryParse não trunca, não concatena nem arredonda os valores da string. Um erro em tempo de execução não é possível porque a função TryParse devolve true ou false.
A linguagem C# implementa recursos para evitar a entrada de comandos maliciosos nos campos de formulário que acessam bancos de dados, como o MySQL. Marque a alternativa que informa um dos comandos preparados para fazer essa validação no C#:
A.
AddParam.
B.
BindParam.
C.
AddWithParam.
D.
BindValue.
E.
AddWithValue.
E. AddWithValue.
Um dos comandos utilizados para validar a entrada de dados em capôs que acessam bancos de dados é AddWithValue, cuja sintaxe substitui um parâmetro recebido de um formulário por seu conteúdo validado. As demais opções não são válidas para a linguagem C#.
Git é uma ferramenta de controle de versão distribuída muito utilizada por profissionais de Tecnologia da Informação (TI) na atualidade.
Sabendo que o modo mais usual de manipular um repositório Git se dá pela entrada de instruções via prompt de comando, marque a alternativa que apresenta as funcionalidades da instrução git add.
A.
Une arquivos que foram modificados simultaneamente por dois ou mais desenvolvedores.
B.
Adiciona arquivos do repositório atual em um repositório remoto.
C.
Importa arquivos de um repositório existente no repositório atual.
D.
Inclui um novo repositório ao repositório já existente.
E.
Prepara arquivos do repositório local para serem incluídos na próxima versão consolidada.
E.
Prepara arquivos do repositório local para serem incluídos na próxima versão consolidada.
O comando add serve para incluir arquivos ao monitoramento local do Git, bem como os prepara para serem incluídos na próxima versão por meio do comando commit (consolidação). Esse comando não tem a capacidade de unir dois arquivos nem importar ou exportar arquivos e repositórios.
Um sistema de controle de versão distribuído como o Git tem a capacidade de visualizar o estado dos arquivos que são gerenciados pelo repositório local.
Considerando que um commit foi realizado recentemente e que nenhum arquivo foi modificado após essa instrução, marque a alternativa que representa o resultado da execução do comando git status.
A.
Nothing to commit, working tree clean.
B.
File(s) changed.
C.
Changes to be committed.
D.
File(s) staged.
E.
Changes to do.
A.
Nothing to commit, working tree clean.
Uma vez que nenhuma alteração foi realizada nos arquivos após a execução de um commit, o comando git status informará “Nothing to commit, working tree clean”, pois não há nada para ser consolidado. As demais opções não representam resultados do status.
No sistema de controle de versão distribuído Git, a instrução commit é utilizada para realizar a consolidação do estado atual dos arquivos, os quais estão preparados em uma versão segura.
Considerando que um desenvolvedor queira realizar commit de modo rápido, sem precisar preparar os arquivos que foram modificados, marque a opção correta.
A.
O desenvolvedor precisará preparar os arquivos por meio da instrução add.
B.
O desenvolvedor precisará preparar os arquivos por meio da instrução prepare.
C.
O desenvolvedor precisará preparar os arquivos por meio da instrução check.
D.
O desenvolvedor utiliza a opção -a para pular a fase de preparação.
E.
O desenvolvedor utiliza a opção -p para pular a fase de preparação.
D.
O desenvolvedor utiliza a opção -a para pular a fase de preparação.
Para preparar um arquivo que entrará no commit, o desenvolvedor utiliza a instrução add. No entanto, essa preparação não é obrigatória, pois a opção -a pula a fase de preparação e inclui no commit todos os arquivos que foram modificados.
GitHub é um conjunto de repositórios remotos que contêm centenas de milhares de projetos públicos, os quais podem ser baixados, pelo Git, por qualquer pessoa que tenha acesso à Internet.
Marque a alternativa que realiza o download de um repositório remoto pelo Git contendo todo o seu histórico de commits.
A.
Git clone [nome do repositório].
B.
Git download [nome do repositório].
C.
Git clone [caminho do repositório].
D.
Git download [caminho do repositório].
E.
Git checkout [caminho do repositório].
C.
Git clone [caminho do repositório].
Para clonar um repositório remoto utilize o comando git clone e informe o caminho ou endereço do repositório. Download não é um comando válido do git e checkout é utilizado para trabalhar com branches.
A atualização de dados de um repositório local pode ser realizada a partir de uma busca no repositório remoto. Essa busca tem em vista trazer apenas o que foi modificado desde a última atualização publicada no repositório remoto.
Considerando que Git tem comandos específicos para fazer a atualização local, indique a alternativa correta.
A.
Os comandos fetch e pull têm o mesmo comportamento ao baixar as atualizações.
B.
O comando fetch traz apenas as atualizações e o comando pull traz tudo, inclusive os arquivos/pastas existentes localmente.
C.
O comando fetch traz tudo que está no repositório remoto e o comando pull traz apenas o que foi modificado.
D.
Os comandos fetch e pull trazem apenas as atualizações; no entanto, pull faz merge automaticamente com os branches locais.
E.
As atualizações devem ser baixadas por meio do comando clone.
D.
Os comandos fetch e pull trazem apenas as atualizações; no entanto, pull faz merge automaticamente com os branches locais.
Os comandos fetch e pull trazem apenas as atualizações do repositório remoto em relação ao repositório local; a diferença é que pull faz merge automaticamente. O comando clone traz todo o repositório remoto, não apenas as atualizações.
Gerenciar as modificações feitas nos códigos-fonte dos projetos é uma atividade fundamental para quem trabalha com o desenvolvimento de softwares, sendo o Git um dos programas mais utilizados para o versionamento local de arquivos. Considerando as definições do Git, de que forma ele organiza localmente as informações das versões dos arquivos?
A.
Registra as informações dos arquivos no arquivo readme.md.
B.
Cria uma pasta chamada src e registra nela as informações dos projetos.
C.
Utiliza uma pasta chamada .git e nela deposita as informações dos arquivos.
D.
O gerenciamento ocorre pelo modo GNU, que possui as configurações dos arquivos.
E.
Registra as informações das versões dos arquivos em uma pasta chamada model.
C.
Utiliza uma pasta chamada .git e nela deposita as informações dos arquivos.
As informações das versões dos arquivos ficam armazenadas na pasta .git do diretório local do projeto. O arquivo readme.md é utilizado pelo GitHub no repositório remoto. As pastas src e model não fazem parte das configurações do Git, e GNU é o nome da licença de uso do Git e, portanto, não possui qualquer informação do repositório.
Considerando que o sistema de controle de versões Git foi instalado para gerenciar as versões dos arquivos de código-fonte de um projeto de desenvolvimento de um sistema, indique a alternativa que considera quais campos precisam ser configurados nas opções do Git logo após a criação do repositório, para que futuramente o Git possa se conectar com o repositório remoto.
A.
E-mail e senha do usuário.
B.
Nome e senha do usuário.
C.
E-mail do usuário e local do repositório.
D.
Nome do usuário e local do repositório.
E.
Nome e e-mail do usuário.
E.
Nome e e-mail do usuário.
Após criar o repositório local, deve-se ajustar o nome e o e-mail do usuário por meio da tela de configurações localizada no menu Edit - Options. Nessa tela de configurações não há campo para senha nem para o nome do repositório.
Git é um sistema de controle de versão de arquivos que auxilia no desenvolvimento de sistemas e que se integra com o GitHub para a transferência de arquivos do repositório local para o remoto. Quando existe um repositório remoto no GitHub, quais dados precisam ser configurados no Git para fazer o relacionamento entre esses repositórios?
A.
Nome do usuário do repositório GitHub e nome do repositório.
B.
Nome do repositório GitHub e e-mail do dono do repositório.
C.
Nome do usuário e a senha do repositório GitHub.
D.
Nome do repositório e caminho do repositório no GitHub.
E.
Nome do usuário do repositório GitHub e caminho do repositório remoto.
D.
Nome do repositório e caminho do repositório no GitHub.
Para relacionar o repositório local Git com o repositório remoto GitHub, deve-se informar o nome do repositório e o caminho do repositório no GitHub. Nome do usuário, senha e e-mail não são necessários na vinculação entre os repositórios.
No GitHub existe a definição de estruturas em forma de árvore que mantêm as histórias do repositório em diferentes ramos. Essas estruturas permitem a edição de funcionalidades em paralelo, por diferentes equipes de desenvolvimento. Com base no exposto, identifique como se chamam essas estruturas no serviço GitHub.
A.
Branch.
B.
Commit.
C.
Merge.
D.
Pull request.
E.
Push.
A.
Branch.
As estruturas de ramos no GitHub são chamadas de branches. Commit define o estado dos arquivos locais que poderão ser transferidos para o repositório remoto. Merge faz a união de branches no GitHub. Pull request é uma forma de enviar uma sugestão de melhoria, e Push faz o upload dos arquivos para o repositório remoto.
A transferência de arquivos do repositório local (Git) para o repositório remoto permite que os códigos-fonte fiquem disponíveis no serviço web GitHub. Baseando-se na ferramenta de interface gráfica Git, selecione a opção que apresenta a ordem das ações que devem ser executadas para realizar o upload de arquivos.
A.
Adicionar os arquivos à staged area, fazer commit das modificações e realizar o push para o repositório remoto.
B.
Adicionar os arquivos à unstaged area, fazer commit das modificações e realizar o push para o repositório remoto.
C.
Realizar commit das modificações, remover os arquivos da staged area e realizar o push para o repositório remoto.
D.
Adicionar os arquivos à staged area, realizar o push para o repositório remoto, fazer commit das modificações e adicionar os arquivos à unstaged area.
E.
Realizar o push para o repositório remoto, adicionar os arquivos à staged area, fazer commit das modificações e realizar o remote add.
A.
Adicionar os arquivos à staged area, fazer commit das modificações e realizar o push para o repositório remoto.
A ordem correta para transferir os arquivos do repositório local para o repositório remoto é: adicionar os arquivos à staged area, realizar commit para rotular esses arquivos com uma mensagem, e executar push para fazer o upload dos commits para o repositório remoto.
Toda aplicação depende diretamente do modelo lógico que visa representar. Um sistema computacional é um reflexo das funções de negócio presentes no dia a dia. O modelo MVC quando criado, também compreendendo a necessidade de abstrair as funções computacionais em um modelo lógico, dividiu em camadas essas abstrações.
No modelo MVC a camada responsável pela abstração das funções do sistema, ou seja, pela lógica de negócio é a:
A.
Camada View.
B.
Camada Controller.
C.
Camada Model.
D.
Camada Cliente.
E.
Camada Servidor.
C.
Camada Model.
No modelo MVC, a camada responsável pela lógica de negócio e pelas abstrações das funções do sistema é a camada Model. As duas outras camadas, respectivamente View e Controller, não armazenam a lógica de negócio, somente interagem respectivamente com as funções do sistema, através da camada Model. A camada Cliente e a Camada Servidor não pertencem ao modelo MVC e, sim, ao modelo de duas camadas cliente-servidor, que pode ou não utilizar o modelo MVC, mas não faz parte do modelo MVC necessariamente. A camada Cliente, nesse caso, serve para abstrair as requisições do usuário, e a camada Servidor serve para abstrair as respostas das requisições realizadas.
Toda aplicação reflete para o usuário algum tipo de interface que realiza a apresentação do modelo lógico representado no sistema. Um sistema computacional precisa apresentar suas funções de negócio através de uma camada de apresentação, no caso de sistemas Web emprega HTML e CSS, por exemplo. O modelo MVC, quando criado, também compreendendo a necessidade de abstrair as apresentação do sistema, separou a lógica de negócio da apresentação.
No modelo MVC, a camada responsável pela aparência e interação com o usuário é a:
A.
Camada View.
B.
Camada Model.
C.
Camada Controller.
D.
Camada Abstract.
E.
Camada Usuário
A.
Camada View.
No modelo MVC, a camada responsável pela aparência e interação com o usuário é a camada View. Respectivamente temos as camadas Controller e Model, que não armazenam a interface, isto é, não realizam comandos de apresentação para com o usuário, a interação do usuário ocorre exclusivamente com a camada View. A camada Abstract não existe, o que existe é a abstração de cada camada, ou seja, a abstração da função realizada pelas respectivas camadas do MVC. As funções esperadas da Camada Usuário são abstraídas pela Camada View, logo não existe necessidade de uma camada usuário.
Toda lógica de negócio do modelo MVC precisa necessariamente interagir com a camada de apresentação, a fim de que o usuário consiga realizar os comandos de interação com o sistema. Todavia tais comandos precisam ser intercambiados através de uma camada meio, que é responsável por realizar as atualizações e requisições na lógica de negócio e na apresentação para o usuário do sistema.
No modelo MVC, a camada responsável pela implementação das operações de entrada é a:
A.
Camada Pass.
B.
Camada Begin.
C.
Camada View.
D.
Camada Model.
E.
Camada Controller.
E.
Camada Controller.
No modelo MVC, a camada responsável pela implementação das operações de entrada é a camada Controller, realizando assim o intercâmbio de dados entre as camadas Model e View, atualizando e enviando requisições, a fim de que o usuário consiga não só interagir com o sistema, mas também que o sistema consiga executar a finalidade para a qual foi desenvolvido. Não temos Camada Pass e Camada Begin no modelo MVC.
Toda interação entre as camadas do modelo MVC precisa ser registrada, a fim de que possa haver rastreabilidade nas transações de dados, bem como para que seja possível executar os comandos armazenados nos sistemas.
Na arquitetura MVC, qual abstração armazena as funcionalidades de um sistema de informação:
A.
Controller.
B.
Model.
C.
Begin.
D.
View.
E.
Mind.
B.
Model.
No modelo MVC, a camada responsável pela implementação das operações de entrada é a camada Controller, realizando assim o intercâmbio de dados entre as camadas Model e View, atualizando e enviando requisições, a fim de que o usuário consiga não só interagir com o sistema, mas também que o sistema consiga executar a finalidade para a qual foi desenvolvido. Não temos Camada Pass e Camada Begin no modelo MVC
A ordem lógica de implementação de um sistema através da arquitetura MVC precisa, pelo menos, demonstrar as funções de leitura, verificação, armazenamento e tomada de decisão.
Imagine que você queira criar um sistema de informação que realize as seguintes funções: ler dados, verificar dados, armazenar dados e tomar decisão. Qual é a ordem que melhor demonstraria a lógica e funcionamento de cada uma das camadas arquiteturais do modelo MVC?
A.
View – Banco de Dados – Model - Controller.
B.
Controller– Banco de dados – View - Model.
C.
View– Controller – Banco de dados - Model.
D.
Model – Controller – View – Banco de dados.
E.
Banco de dados – View – Model - Controller.
C.
View– Controller – Banco de dados - Model.
A ordem que melhor demonstra a lógica MVC é View (porque, a partir da View, o usuário inicia a interação com o sistema), Controller (porque, após a interação, o sistema precisa reagir à interação com o usuário, por meio de algum parâmetro, que estará no Controller), Banco de dados (porque o Controller pode tanto acionar a camada Model com a lógica de negócio da aplicação, como consultar um Banco de dados e retornar ou armazenar um dado, no caso como o sistema armazenará os dados, necessariamente será em um Banco de dados), Model (porque a lógica de negócio, ou seja, as instruções do sistema estão na Model, logo a tomada de decisão necessariamente ocorre por meio da lógica presente na camada Model).
Os modelos arquiteturais se baseiam na abstração de níveis de funcionalidades, que colaboram entre si, com fronteiras de atuação bem delimitadas.
Diante disso, é feita a definição de que um sistema de informação deve ser desenvolvido em três níveis. Isso é feito por qual padrão de projeto arquitetural? Marque a alternativa correta:
A.
MCA (Model Class Assignment).
B.
TMS (Time Milestones Setting).
C.
MVC-DEV (Model Value Constructive Development).
D.
MVC (Model View Controller).
E.
PMC (Project Main Controller).
D.
MVC (Model View Controller).
A definição de que um sistema de informação deve ser desenvolvido em três níveis é feita pelo padrão de projeto arquitetural, conhecido como Model-View-Controller ou MVC. Os demais padrões arquiteturais não apresentam três níveis de camadas.
Cada modelo de software implementa um estilo arquitetura próprio. O modelo de arquitetura do MVC é responsável por propor o funcionamento da camada model.
No contexto de arquitetura de software, como pode ser definido o estilo arquitetural do modelo MVC? Marque a alternativa correta:
A.
Interativo.
B.
Estrutural.
C.
Cascateado.
D.
Rígido.
E.
Monolítico.
A.
Interativo.
No contexto de arquitetura de software, o modelo MVC é um estilo arquitetural interativo, pois apresenta intercomunicação e cooperação ao longo de todo o processo de desenvolvimento de software entre as respectivas camadas (Model-View-Controller).
A Model, ou camada modelo, é onde a lógica de negócio da aplicação fica armazenada, o que colabora diretamente com as outras camadas, a fim de que o usuário consiga interagir com o sistema.
A camada Model tem a responsabilidade de armazenar e buscar dados que deverão ser exibidos por qual camada? Escolha a opção correta:
A.
Controller.
B.
View.
C.
Servidor.
D.
Cliente.
E.
Banco de dados.
B.
View.
A camada modelo tem a responsabilidade de armazenar e buscar dados que deverão ser exibidos pela camada view. Isso acontece, pois a view é a camada de apresentação que interage diretamente com o usuário do sistema.
O modelo MVC é conhecido pelo particionamento de camadas e o trabalho conjunto entre elas para que o usuário tenha uma melhor experiência com o sistema.
Na arquitetura MVC, o modelo encapsula objetos de conteúdo. Enquanto isso, quem solicita atualizações do modelo e quem seleciona o comportamento do modelo, respectivamente?
A.
Visão e controlador.
B.
Controlador e visão.
C.
Modelo e visão.
D.
Visão e modelo.
E.
Controlador e modelo.
A.
Visão e controlador.
Na arquitetura MVC, o modelo encapsula objetos de conteúdo, enquanto a view (visão) é quem solicita atualizações do modelo e o controller (controlador) é responsável por selecionar o comportamento do modelo.
Cada camada no modelo MVC é responsável por interoperar com as outras respectivas camadas, o que ajuda diretamente a fazer com que a lógica de negócio esteja em constante verificação.
No MVC, as regras de negócio que definem a forma de acesso e modificação dos dados são geridas por qual camada?
A.
Cliente.
B.
Controller.
C.
View.
D.
Servidor.
E.
Model.
E.
Model.
No MVC, as regras de negócio que definem a forma de acesso e modificação dos dados são geridas pelo modelo (model), tendo em vista que essa é a camada responsável pela lógica de negócio da aplicação.
Dada a sua simplicidade e leveza de estrutura, o formato JSON é difundido na maioria dos sistemas que operam intercâmbio de dados. O formato JSON é constituído de duas estruturas principais. São elas:
A.
Uma coleção de pares nome/valor e uma pilha ordenada de valores.
B.
Uma coleção de strings e uma fila ordenada de valores.
C.
Uma coleção de pares nome/valor e uma lista ordenada de valores.
D.
Uma coleção de inteiros e uma lista de strings.
E.
Uma coleção de strings e uma coleção de pares nome/valor.
C.
Uma coleção de pares nome/valor e uma lista ordenada de valores.
O formato JSON é constituído por duas estruturas principais: uma coleção de pares nome/valor, utilizada para agrupar e referenciar strings e valores, e uma lista ordenada de valores, utilizada para armazenar os valores ordenados.
O JSON utiliza identificadores para definir seus objetos, o que ajuda na compreensão da linguagem, tendo em vista seu parentesco com a própria linguagem humana. Os identificadores em JSON devem ser escritos entre:
A.
Parênteses.
B.
Aspas.
C.
Vírgulas.
D.
Interrogações.
E.
Exclamações.
B.
Aspas.
No formato JSON, a fim de facilitar a assimilação da compreensão humana, os identificadores devem ser escritos entre aspas por padrão.
Hoje, o formato JSON é o principal concorrente da linguagem XML, que tem perdido força principalmente em soluções mais simplificadas que utilizam web services para o intercâmbio de dados. O formato JSON permite representar objetos e classes como estruturas de dados e arrays associativos, com sintaxe similar à linguagem:
A. HTML.
B. XML.
C. PHP.
D. DHTML.
E. JavaScript.
E.
JavaScript.
O formato JSON permite representar objetos e classes como estruturas de dados e arrays, com sintaxe similar à linguagem JavaScript, porque foi dessa linguagem que se originou o JSON.
Algumas diferenças são marcantes entre o XML e o JSON, o que colaborou para o emprego do JSON, considerando a sua facilidade de compreensão. No JSON, a análise sintática é realizada por uma função, enquanto que no XML a análise deve ser feita necessariamente por um:
A.
Controller XML.
B.
Model XML.
C.
Begin XML.
D.
Parser XML.
E.
View XML.
D.
Parser XML.
XML é a principal concorrente do JSON no intercâmbio de dados, e na linguagem XML a análise deve ser feita necessariamente por um Parser XML.
Um dos principais desafios dos próximos anos, que deu origem à linguagem XML, será transferir dados de sistemas diferentes, com linguagens diferentes, em formatos padronizados e leves. O que colaborou para a utilização e difusão do formato JSON foi o seu emprego para:
A.
Orquestração de dados.
B.
Implementação de dados.
C.
Gestão de dados.
D.
Armazenamento de dados.
E.
Intercâmbio de dados.
E.
Intercâmbio de dados.
Tendo em vista a sua simplicidade e leveza, o formato JSON é utilizado para intercâmbio de dados, o que colabora diretamente para aplicações leves como, por exemplo, as aplicações mobile.
JSON é um formato para troca de dados entre aplicações, que compete diretamente com a linguagem XML. Apesar dos inúmeros benefícios do formato JSON, ele apresenta limitações.
Entre elas, temos que JSON não possui suporte a:
A.
intercâmbio de dados.
B.
indexação de dados.
C.
controle de hipermídias.
D.
strings.
E.
objetos.
C.
controle de hipermídias.
JSON possui suporte a intercâmbio de dados (finalidade principal), indexação de dados (porque indexa dados), suporte a strings e objetos (porque trabalha com strings e objetos em seus tipos de dados), mas não possui suporte a controle de hipermídias (porque não faz controle de dados em hipermídia).
O formato JSON foi pensado em meados de 2000, para ser uma forma simples de intercambiar dados.
Dessa forma, os tipos de dados no formato JSON se dividem em dados:
A.
elementares e estruturados.
B.
procedurais e fundamentais.
C.
primitivos e avançados.
D.
simples e decompostos.
E.
inteiros e booleanos.
A.
elementares e estruturados.
Os tipos de dados no formato JSON estão divididos somente em dados elementares e estruturados.
Os tipos de dados no formato JSON abarcam duas categorias.
A categoria elementares tem tipos de dados que podem ser de vários formatos; entre eles, os booleanos, que também são conhecidos como:
A.
reais.
B.
chars.
C.
inteiros.
D.
float.
E.
lógicos.
E.
lógicos.
Os booleanos são tipos de dados elementares e também conhecidos como lógicos; utilizam indicações lógicas excludentes, como 0 e 1. Já os reais são numerações fracionárias, os chars são caracteres, os inteiros são números e os floats são o mesmo que os reais.
Os tipos de dados no formato JSON abarcam duas categorias.
A categoria elementares tem tipos de dados que podem ser de vários formatos; entre eles, os literais, que também são conhecidos como:
A.
inteiro.
B.
caractere.
C.
real.
D.
booleano.
E.
float.
B.
caractere.
Os literais são tipos de dados elementares, também conhecidos como caractere. Já os inteiros são números, os reais são números fracionários, os booleanos são dados lógicos excludentes e o float é outra forma de designar dados fracionários ou reais.
Há infinitos tipos estruturados no formato JSON, pois são a combinação de vários outros.
O mais comum no JSON é a cadeia de valores, que são representações de sequências de caracteres, também conhecidas como:
A.
char.
B.
integer.
C.
string.
D.
float.
E.
boolean.
C.
string.
As cadeias de valores em JSON são também conhecidas como strings, e são tipos de dados estruturados no formato JSON. Char, integer, float e boolean são dados elementares, e não são a combinação de vários outros; são únicos em sua natureza.
O objeto XMLHttpRequest é utilizado para auxiliar a troca de dados entre cliente e servidor, via Web.
A ideia por detrás do XMLHttpRequest é atualizar partes de uma página Web, sem haver a necessidade de:
A.
utilizar um browser para a página Web.
B.
dividir a página Web.
C.
recarregar a página Web.
D.
enviar dados do servidor para a página Web.
E.
responder requisições da página Web.
C.
recarregar a página Web.
O objeto utilizado entre os browser para realizar a troca de dados entre cliente e servidor, via Web é o XMLHttpRequest. Logo, ele é utilizado para atualizar partes de uma página Web, sem haver a necessidade de recarregá-la; essa é sua única finalidade.
A sintaxe dos métodos por detrás do XMLHttpRequest é bem intuitiva.
Dos métodos pertencentes ao objeto, há um, em específico, que é utilizado para cancelar uma requisição. Trata-se do método:
A.
rescind ( ).
B.
annul ( ).
C.
revoke ( ).
D.
cancel ( ).
E.
abort ( ).
E.
abort ( ).
Para cancelar uma requisição do objeto XMLHttpRequest, utiliza-se o método: abort ( ). Não há outra indexação de método.
Os métodos mais utilizados para enviar solicitações do cliente ao servidor são get e post.
Outra forma de fazê-lo, é pela combinação dos métodos:
A.
set ( ) e open ( ).
B.
open ( ) e send ( ).
C.
back ( ) e front ( ).
D.
client ( ) e server ( ).
E.
set ( ) e back ( ).
B.
open ( ) e send ( ).
Os métodos get ou post são os mais utilizados para enviar solicitações do cliente ao servidor. Outra forma de fazê-lo, é por meio da combinação dos métodos open ( ) e send ( ), para comunicação de dados do cliente para o servidor.
A linguagem JavaScript, em específico, na arquitetura cliente-servidor, possui diversas APIs disponíveis. Elas não fazem parte da linguagem em si, mas são escritas sobre o core business da linguagem JavaScript, fornecendo capacidades a serem utilizadas em seu código.
Geralmente, tais APIs fazem parte de uma das seguintes categorias, APIs de terceiros e APIs:
A.
navegadores.
B.
serviços.
C.
cliente.
D.
interface.
E.
servidor.
A.
navegadores.
As APIs não fazem parte da linguagem JavaScript em si, mas são escritas sobre o core business da linguagem, fornecendo capacidades a serem utilizadas em seu código. Geralmente, tais APIs fazem parte de uma das categorias: APIs de terceiros e APIs de navegadores. Não existem outras categorias além dessas duas.
Como propriedades pertencentes ao objeto XMLHttpRequest, há o readyState, que mantém o status do objeto.
Diante disso, os status possíveis são:
A.
0. solicitação não verificada, 1. conexão do servidor em análise, 2. solicitação recebida, 3. solicitação de encaminhamento e 4. solicitação terminada.
B.
0. solicitação não renderizada, 1. conexão do servidor estabelecida, 2. solicitação enviada, 3. solicitação de processamento e 4. solicitação concluída.
C.
0. solicitação não inicializada, 1. conexão servidor estabelecida, 2. solicitação recebida, 3. solicitação de processamento e 4. solicitação concluída.
D.
0. solicitação inicializada, 1. conexão do servidor estabelecida, 2. solicitação enviada, 3. solicitação de processamento e 4. solicitação concluída.
E.
0. solicitação não inicializada, 1. conexão do servidor em análise, 2. solicitação recebida, 3. solicitação estabelecida e 4. solicitação terminada.
C.
0. solicitação não inicializada, 1. conexão servidor estabelecida, 2. solicitação recebida, 3. solicitação de processamento e 4. solicitação concluída.
Os status do readyState, em ordem, são: 0. solicitação não inicializada, 1. conexão do servidor estabelecida, 2. solicitação recebida, 3. solicitação de processamento e 4. solicitação concluída.
A arquitetura cliente-servidor é difundida desde os anos 80, como a principal arquitetura para o desenvolvimento Web. O lado do cliente é o lado da arquitetura cliente-servidor responsável pela interação com o usuário (client-side), também conhecido como:
A.
back-end.
B.
front-end.
C.
client-end.
D.
side-client.
E.
user-client.
B.
front-end.
O lado do cliente é o lado da arquitetura cliente-servidor responsável pela interação com o usuário (client-side) e também é conhecido como front-end. O outro lado é o back-end, que é o lado do servidor, responsável pelo processamento das requisições. Na arquitetura cliente-servidor, tem-se unicamente esses dois lados.
O Bootstrap é famoso e amplamente utilizado no lado do cliente, porque atualmente é o framework mais completo do ponto de vista de funcionalidades para o lado do cliente. Isso ocorre porque o Bootstrap é um framework que reúne as tecnologias:
A.
HTML, JBOSS e JUNIT.
B.
JS, JSF e JEE.
C.
SERVLETS, JSP e JDBC.
D.
CSS, JS e HTML.
E.
JSP, JSF e JS.
D.
CSS, JS e HTML.
O Bootstrap é um framework utilizado no lado do cliente, que reúne as tecnologias HTML, CSS e JavaScript. Não utiliza as tecnologias JBOSS, JUNIT, JSF, JEE, SERVLETS, JSP e JDBC.
A grande quantidade de frameworks front-end está ligada à dinamicidade e à importância cada vez maior da experiência do usuário, ou seja, a noção de como o usuário enxerga e interage com as aplicações no lado do cliente. Os frameworks no lado do cliente podem ser divididos em três frentes:
A.
conteúdo, apresentação e interação.
B.
apresentação, organização e gestão.
C.
gestão, interação e organização.
D.
conteúdo, gestão e interação.
E.
interação, apresentação e gestão.
A.
conteúdo, apresentação e interação.
Os frameworks no lado do cliente podem ser divididos nas três frentes: conteúdo, cujo responsável é o HTML, apresentação, cujo responsável é o CSS, e interação, cujo responsável é o JavaScript.
O framework Angular surgiu da junção do HTML, CSS e JS, sendo processado no lado do cliente da aplicação, o que até então foi uma revolução, tendo em vista que todo o processamento ocorria no lado do servidor. O framework Angular surgiu do conceito de:
A.
user page application (UPA).
B.
client page application (CPA).
C.
user framework application (UFA).
D.
single framework application (SFA).
E.
single page application (SPA).
E.
single page application (SPA).
A junção do HTML, CSS e JS fez nascer o framework Angular, que utiliza o conceito de SPA (single page application), no qual as aplicações são processadas no lado do cliente, em vez de serem processadas no lado do servidor, dando mais celeridade ao processamento de requisições. UPA, CPA, UFA e SFA não são conceitos adotados pelo framework Angular.
O framework Angular é um framework JavaScript criado pela Google com o objetivo de construir aplicações Web client-side simples e fáceis de manter por meio de componentes reusáveis e modulares, através da arquitetura:
A.
CMC (Cliente-Model-Controller).
B.
CVU (Client-View-User).
C.
MVC (Model-View-Controller).
D.
MUC (Model-User-Controller).
E.
FUC (Framework-User-Controller).
C.
MVC (Model-View-Controller).
O framework Angular representa a junção do HTML, CSS e JS sendo processados no lado do cliente, através do conceito de SPA (single page application) com a arquitetura MVC (Model-View-Controller). Não adota arquiteturas CMC, CVU, MUC ou FUC.
Um framework captura funcionalidades comuns a várias aplicações. Entre diversas opções disponíveis no mercado, as ferramentas Laravel e Flask são amplamente utilizadas para trabalhar com a linguagem PHP. Cada uma delas tem características específicas. Qual destas opções é uma característica do Laravel?
A.
Vários back-ends para armazenamento de sessão e cache.
B.
Contém um servidor de desenvolvimento e depurador.
C.
Inclui suporte para modelagem Jinja2.
D.
Trabalha com cookies seguros.
E.
Realiza teste de unidade e envio de solicitação RESTful.
A.
Vários back-ends para armazenamento de sessão e cache.
O Laravel tenta aliviar a dor do desenvolvimento, facilitando tarefas comuns usadas na maioria dos projetos da web, como:
• Mecanismo de roteamento simples e rápido.
• Forte dependência de container de injeção.
• Vários back-ends para armazenamento de sessão e cache.
• ORM de banco de dados expressivo e intuitivo.
• Migrações de esquema independentes de banco de dados.
• Processamento robusto do background.
• Transmissão de eventos em tempo real.
Flask é uma microframework para Python. Ele contém um servidor de desenvolvimento e depurador e inclui suporte para modelagem Jinja2, cookies seguros, teste de unidade e envio de solicitação RESTful.
Django é um framework para aplicações web gratuito e de código aberto, escrito em Python. Um web framework é um conjunto de componentes que ajuda você a desenvolver sites de forma mais rápida e fácil. Qual das opções abaixo se refere a uma característica do Django Framework?
A.
Desenvolvimento difícil de ler e manter.
B.
Desenvolvimento web desenvolvido na linguagem Python.
C.
Desenvolvimento web sob licença comercial.
D.
Não possibilita desenvolvimento escalável.
E.
Desenvolvimento web criado para programação em JavaScript.
B.
Desenvolvimento web desenvolvido na linguagem Python.
O Django é um framework web Python de alto nível que incentiva o desenvolvimento rápido e o design limpo e pragmático. É gratuito e de código aberto. Também é rápido, seguro e muito escalável. Baseando-se em Python, o código do Django é fácil de ler e manter.
No mercado, há uma série de frameworks que ajudam os desenvolvedores no processo de codificação e geração de softwares. Assinale a alternativa que contém apenas frameworks utilizados para desenvolver soluções em Python:
A.
Django e Flask.
B.
Ruby on Rails e Spring Boot.
C.
Spring Boot e Laravel.
D.
Spring Boot e Django.
E.
Flask e Ruby on Rails.
A.
Django e Flask.
Django e Flask são frameworks para desenvolvimento em Python. Rails é um framework da web criado para a linguagem de programação Ruby. Laravel é um framework de aplicativos da web em PHP. Spring Boot é um framework de desenvolvimento web do lado do servidor usando Java.
Existem dois tipos de linguagens para Internet, as linguagens client-side (lado do cliente) e as linguagens server-side (lado do servidor). Você poderá encontrar outros termos utilizados por desenvolvedores, como, por exemplo, front-end, referindo-se às linguagens client-side, e back-end, referindo-se às linguagens server-side. Ambas são a mesma coisa. Qual é a definição para o termo “framework no lado do servidor”?
A.
Uma armazenagem de informações sobre itens de dados encontrados em um diagrama de fluxo de dados.
B.
Uma descrição dos principais recursos de um produto de software, seu fluxo de informações, comportamento e atributos.
C.
A especificação das atividades de um sistema, fluxo de tarefas e procedimentos para implementação.
D.
Uma combinação de componentes como bibliotecas de classes, que simplifica a construção de aplicações e pode ser conectada em uma aplicação.
E.
Um exame e a alteração de um sistema de software para reconstruí-lo e reimplementá-lo de nova forma.
D.
Uma combinação de componentes como bibliotecas de classes, que simplifica a construção de aplicações e pode ser conectada em uma aplicação.
Um framework do lado do servidor trata-se de uma combinação de componentes, como, por exemplo, uma bibliotecas de classes, que simplifica a construção de aplicações e pode ser conectada em uma aplicação. Um framework não trata da armazenagem de informações sobre itens de dados encontrados em um diagrama de fluxo de dados, nem traz a especificação das atividades de um sistema, fluxo de tarefas e procedimentos para implementação. Um framework também não se refere a um exame e à alteração de um sistema de software para reconstruí-lo e reimplementá-lo de nova forma.
O .NET Framework consiste basicamente em dois componentes principais. Um deles trata do ambiente de execução independente de linguagem que interage com o outro componente, que é um conjunto de bibliotecas unificadas. Ele permite executar diversas linguagens permitindo grande interoperabilidade entre elas. Na plataforma .NET, o componente responsável pela execução do código é chamado de:
A.
Common Execution Architecture – CEA.
B.
Common Intermediate Language – CIL.
C.
Common Language Runtime – CLR.
D.
Common Type System – CTS.
E.
Common Virtual Machine – CVM.
C.
Common Language Runtime – CLR.
CEA, CIL, CTS e CVM não são padrões para execução de código na plataforma .NET. Common Language Runtime – CLR é o componente responsável pela execução do código na plataforma .NET.
A lista de necessidades do cliente Treina-sis envolve uma relação prévia das funcionalidades que ele deseja que sejam implementadas no seu fórum.
No cenário real apresentado, indique a opção que caracteriza a necessidade que envolve a localização de um tema para que os comentários possam ser lidos pelos usuários.
A.
Realizar cadastro.
B.
Fazer login.
C.
Pesquisar tema.
D.
Criar tema.
E.
Ler comentários.
C.
Pesquisar tema.
A necessidade que envolve a localização de um tema é a N-3 (Pesquisar tema). É pela pesquisa que o usuário poderá encontrar determinado tema para que possa ler os comentários postados. Os demais itens não realizam a localização de conteúdo.
Os requisitos de um software são elaborados para facilitar a compreensão do problema que será resolvido. Têm, como premissa, proporcionar a mesma visão do que precisa ser feito, tanto para os analistas como para o cliente demandante.
Com base no levantamento de requisitos do cenário real proposto, indique a alternativa correta.
A.
Usuários inativos por 3 meses serão bloqueados no fórum.
B.
O acesso ao fórum não requer que o usuário seja cadastrado.
C.
A inclusão de um tema precisa ser validada pelo administrador.
D.
A pesquisa de temas poderá ser realizada por meio de palavras-chave.
E.
Apenas os instrutores terão autorização para comentar temas no fórum.
D.
A pesquisa de temas poderá ser realizada por meio de palavras-chave.
A pesquisa de temas poderá ser realizada por meio da entrada de palavras-chave. Para acessar o fórum, os usuários precisarão se cadastrar; qualquer usuário poderá criar tema ou comentá-los, sem a prévia validação de moderadores. Não haverá bloqueio de usuários por inatividade.
O levantamento de requisitos é uma fase importante de um projeto de desenvolvimento de software, uma vez que auxilia no entendimento do problema que será tratado.
Indique a alternativa que compreende algumas das mais importantes técnicas de levantamento de requisitos.
A.
Planejamento, decisão e execução.
B.
Planejamento, reunião e observação.
C.
Observação, entrevista e reunião.
D.
Observação, decisão e investimento.
E.
Investigação, entrevista e execução.
C.
Observação, entrevista e reunião.
Entre as técnicas mais utilizadas, são destacadas a observação, a entrevista e a reunião. Planejamento, decisão e execução não são técnicas de levantamento de requisitos, apesar de auxiliarem no processo.
Um dos principais objetivos do fórum é justamente a parte dos temas e comentários. Por meio deles é que realmente haverá a interação entre usuários e instrutores.
Considerando os requisitos do cenário real proposto, marque a alternativa correta.
A.
Os comentários podem ser anônimos — sem identificação do autor.
B.
Os comentários são identificados por um número sequencial administrado pelo sistema.
C.
O momento do registro de um comentário compreende somente a data.
D.
O requisito “Escrever comentário” tem maior prioridade que o requisito “Ler comentário”, pois para ler é preciso que o comentário já exista.
E.
Não importa a ordem de apresentação dos comentários, desde que todos sejam listados nos seus respectivos temas.
B.
Os comentários são identificados por um número sequencial administrado pelo sistema.
Os comentários serão identificados por um campo autoincremento (AI) no banco de dados, o qual gerencia um número sequencial automaticamente. Os comentários não podem ser anônimos, registram a data e a hora no momento da publicação, e a ordem de apresentação deve ser cronológica crescente. Além disso, não há diferença de prioridade entre os requisitos Escrever e Ler comentários.
Na modelagem do cenário real proposto existe uma relação entre as classes Tema e Comentario.
Essa relação está indicada por uma associação de que tipo?
A.
Aglutinação, pois as classes Tema e Comentario estão diretamente ligadas.
B.
Composição, pois um tema só existe se contiver um ou mais comentários.
C.
Agregação, pois um comentário só existe se houver um tema.
D.
Composição, pois um comentário só existe se houver um tema.
E.
Agregação, pois um tema só existe se contiver um ou mais comentários.
D.
Composição, pois um comentário só existe se houver um tema.
A associação entre as classes Tema e Comentario se dá por composição, uma vez que um comentário é dependente de um tema, de modo que ele somente existirá se determinado tema também existir. Agregação estabelece uma associação mais fraca e ambos podem existir de modo independente. Aglutinação não é um tipo de associação entre classes.
O ASP.NET Framework MVC trabalha com a arquitetura em três camadas que define responsabilidades específicas para as classes Model, View e Controller, sendo que as classes Model têm relação com as tabelas do banco de dados. Considerando a forma de trabalho do Entity Framework, marque a forma como deve ser identificada uma tabela chamada Func em uma classe Model chamada Funcionario:
A.
[Table(“Func”)].
B.
[Table(“Funcionario”)].
C.
[Table (Name=“Func”)].
D.
[Table (Name=“Funcionario”)].
E.
Não é preciso identificar manualmente porque o framework busca automaticamente o nome da tabela do banco de dados.
A.
[Table(“Func”)].
É preciso a anotação [Table(“Func”)] para que o Entity Framework associe a tabela Func com a classe Funcionario, pois por padrão ele considera que o nome da tabela é Funcionarios – plural do nome da classe. As demais opções não são válidas para associar o nome da tabela na classe Model.
Para utilizar um banco de dados MySQL no ASP.NET Framework MVC, é preciso adicionar a referência MySQL.Data.EntityFramework for EF6 no projeto. Além disso, é preciso adicionar a string de conexão que contém os dados de acesso ao banco de dados MySQL. Nesse contexto, marque a alternativa que informa o nome do arquivo que contém as definições dessa conexão:
A.
Layoutcshtml.
B.
_ViewStart.cshtml.
C.
Global.asax.
D.
RouteConfig.cs.
E.
Web.config.
E.
Web.config.
O arquivo Web.config é um arquivo em formato XML que contém uma marcação chamada <connectionstrings> que permite a inclusão do acesso ao banco de dados MySQL. Os arquivos com a extensão cshtml são de layout, Global.asax define configurações gerais do sistema e RoutConfig.cs define as rotas dos controladores.
Um controlador é uma classe responsável pela ligação entre as requisições das Views e o acesso aos dados pelas Models. No ASP.NET Framework MVC com Entity Framework, as requisições são recebidas das Views por meio de rotas que definem:
A.
Identificador, arquivo e parâmetro.
B.
Controlador, ação e parâmetro.
C.
Mapeamento, classe e identificador.
D.
Configurador, método e identificador.
E.
Pasta, arquivo e extensão.
B.
Controlador, ação e parâmetro.
As rotas são definidas no arquivo RouteConfig.cs e especificam o nome do controlador, a ação que indica o método da classe do controlador e o parâmetro id que é opcional. As demais alternativas não são válidas para a configuração de uma rota.
A camada View é responsável por receber as requisições dos usuários e por apresentar seus resultados. Com o Entity Framework do ASP.NET MVC, é possível enviar dados entre as páginas por meio do objeto:
A.
@Html.ActionLink.
B.
@Html.DisplayFor.
C.
@Html.LabelFor.
D.
@Model.
E.
@ViewBag.
E.
@ViewBag.
Informações podem ser enviadas de uma página para outra por meio da instrução @ViewBag. @Html.ActionLik serve para montar atalhos, @ Html.DisplayFor apresenta o conteúdo de um campo do banco de dados, @Html.LabelFor apresenta uma legenda e @Model faz a vinculação com determinada classe.
O ASP.NET Framework MVC com Entity Framework busca os nomes dos campos de um banco de dados a partir das classes Model de um projeto. Para substituir o nome de um campo por uma descrição mais amigável, é preciso utilizar a inclusão da seguinte instrução antes do atributo na classe:
A.
[Display(Name=”Descrição amigável”)].
B.
Display(Label=”Descrição amigável”)].
C.
[Display(“Descrição amigável”)].
D.
[Annotation(“Descrição amigável”)].
E.
[Annotation(Label=”Descrição amigável”)].
A.
[Display(Name=”Descrição amigável”)].
Uma descrição amigável do nome do atributo pode ser obtida por meio da instrução [Display(Name=”Descrição amigável”)]. Essa notação deve ser inserida acima do nome do atributo na classe. As demais alternativas não são válidas para o contexto apresentado.
“É uma alternativa à XML para representar dados, comumente utilizado em aplicativos AJAX. Seus objetos são representados como uma lista de nomes e valores de propriedade entre colchetes. Trata-se de um formato simples que facilita leitura, criação e análise de objetos e, ainda, permite que programas transmitam dados eficientemente pela Internet.”
Essa descrição se refere a:
A.
POJO – Plain Old Java Object.
B.
JSON – JavaScript Object Notation.
C.
SOAP – Simple Object Access Protocol.
D.
REST – Representational State Transfer.
E.
PL/SQL – Procedural Language/Structured Query Language.
B.
JSON – JavaScript Object Notation.
POJO, SOAP, REST e PL/SQL não se referem a notações para representar dados. JSON é uma alternativa a XML para representar dados, comumente utilizado em aplicativos AJAX. Seus objetos são representados como uma lista de nomes e valores de propriedade entre colchetes. Ele facilita a leitura porque é um fomato simples que permite que aplicações Web transmitam dados pela Internet.
Para a criação de páginas dinâmicas que podem ser atualizadas de modo assíncrono, eliminando a necessidade de se carregar toda a página novamente, o web designer deve trabalhar com o seguinte método:
A.
AJAX.
B.
C.
JSON.
D.
SQL.
E.
XQuery.
A.
AJAX.
AJAX é o acrônimo para JavaScript assíncrono e XML, que é usado no lado do cliente como um grupo de técnicas de desenvolvimento da Web inter-relacionadas, para criar aplicativos da Web assíncronos. De acordo com o modelo AJAX, os aplicativos da Web podem enviar e recuperar dados de um servidor de forma assíncrona, sem interferir na exibição e no comportamento da página existente. ASP.NET é um framework para construir aplicativos Web com .NET e C#. JSON é um formato de representação de dados baseado na linguagem de programação Javascript. SQL e XQuery são linguagens para banco de dados.
Quando se quer transferir ou armazenar dados, é muito útil poder converter um objeto JSON em uma string. Qual função converte um objeto JavaScript em uma sequência JSON?
A.
JSON.parse()
B.
JSONGetElement()
C.
JSON.stringify()
D.
JSONListKeys
E.
JSONListValues
C.
JSON.stringify()
Algumas funções que podem ser usadas com JSON:
- JSON.stringify() — converte um objeto JavaScript em uma sequência JSON;
- JSON.parse() — converte de uma string de volta para um objeto;
- JSONGetElement — consulta dados JSON em busca de um elemento (objeto, matriz ou valor);
- JSONListKeys — lista nomes de objeto (chaves) ou índices de matriz em dados JSON;
- JSONListValues — lista valores em dados JSON.
AJAX é usado no lado do cliente como um grupo de técnicas de desenvolvimento da Web inter-relacionadas para criar aplicativos da Web assíncronos. JSON é um formato leve para compartilhar dados.
Para qual tarefa de desenvolvimento de software é utilizado AJAX com JSON?
A.
Fornecer serializadores JSON, YAML e XML para auxiliar na construção de serviços AJAX.
B.
Armazenar dados da página Web no lado do cliente.
C.
Transitar dados entre o cliente e o servidor sem a necessidade de atualizar a página.
D.
Realizar a tradução dos dados transmitidos para o servidor.
E.
Validar os dados antes de exibi-los na página Web.
C.
Transitar dados entre o cliente e o servidor sem a necessidade de atualizar a página.
AJAX com JSON não realiza armazenamento de dados no lado do cliente. AJAX e JSON é uma combinação perfeita para transitar dados entre o cliente e o servidor sem que seja necessário atualizar a página. Dessa forma, AJAX com JSON não é utilizado para realizar nenhum tipo de tradução nem validação de dados. Além disso, é o Django que fornece serializadores JSON, YAML e XML para auxiliar na construção de serviços AJAX.
Quaisquer dados atualizados usando-se o AJAX podem ser armazenados usando-se o formato JSON no servidor da Web. O AJAX é usado para que o JavaScript possa recuperar esses arquivos JSON quando necessário.
Além disso, em qual situação é utilizada a combinação de AJAX com JSON?
A.
Validação de variáveis a serem retornadas pelo servidor Web.
B.
Validação de campos a serem preenchidos na página Web.
C.
Alteração de dados durante a comunicação do servidor Web com a página da Web.
D.
Comunicação síncrona entre a página e o servidor Web.
E.
Armazenamento dos valores nas variáveis para processamento antes de exibi-los na página da Web.
E.
Armazenamento dos valores nas variáveis para processamento antes de exibi-los na página da Web.
O AJAX é usado para que o JavaScript possa recuperar arquivos JSON, analisá-los e executar uma das seguintes operações:
- armazenar os valores analisados nas variáveis para processamento adicional antes de exibi-los na página da Web;
- atribuir diretamente os dados aos elementos DOM na página da Web, para que sejam exibidos no site.
O AJAX com JSON não realiza a validação de variáveis nem campos a serem retornados para a página Web. Além disso, também não realiza nenhum tipo de alteração de dados durante a comunicação cliente-servidor, que acontece com AJAX de forma assíncrona.