Anotações, resumos, trabalhos, provas e exercícios de Computação de Universidade

Orientação a Objetos e Desenvolvimento em Camadas

Computação4,16 KB

Objeto de Transferência de Dados (DTO)

Objeto de Transferência de Dados – Um objeto que transporta dados entre processos de modo a reduzir o número de chamadas de métodos.

Vantagens da Orientação a Objetos

  • Vantagens Diretas – maior facilidade para reutilização de código e, por consequência, do projeto; possibilidade do desenvolvedor trabalhar em um nível mais elevado de abstração; utilização de um único padrão conceitual durante todo o processo de criação de software; maior adequação à arquitetura cliente/servidor; maior facilidade de comunicação com os usuários e com outros profissionais de informática.
  • Vantagens Reais – ciclo de vida mais longo para os sistemas; desenvolvimento acelerado de sistemas; possibilidade
...
Continue lendo "Orientação a Objetos e Desenvolvimento em Camadas" »

Servlets, JSF, AJAX e MVC — Guia prático e perguntas

Computação65,08 KB

Servlets, JSF, AJAX e MVC — Perguntas e respostas

1. O que é um Servlet?

Pergunta: O que é um Servlet?

Resposta: São classes Java que processam dinamicamente requisições do cliente, constroem respostas e as devolvem ao cliente.

2. Arquitetura de um aplicativo Servlet

Desenhe uma das arquiteturas possíveis para um aplicativo Servlet em um servidor WEB.

Imagen

3. O que é um contêiner (container) Servlet? Cite dois exemplos

Resposta: É uma aplicação que auxilia no desenvolvimento e na execução de aplicações J2EE, oferecendo suporte à execução de Servlets e outras especificações web.

Exemplos: Tomcat, GlassFish

4. Explique o código abaixo

Trecho XML/Web descriptor:

<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE web-app PUBLIC
...
Continue lendo "Servlets, JSF, AJAX e MVC — Guia prático e perguntas" »

Engenharia de Software: conceitos e qualidade

Computação8,93 KB

O que é interface?

Interface é uma superfície entre duas faces. Uma interface pode (e quase sempre é) um mecanismo de mão dupla (canal de comunicação aberto nos dois sentidos). Uma boa interface torna a intenção do usuário com o sistema mais fácil de aprender e usar.

Confiabilidade

Preservação do desempenho e da confiabilidade do software.

  • Maturidade — frequência de falhas.
  • Tolerância a falhas — em caso de falha, o desempenho deve ser mantido.
  • Recuperabilidade — restabelecimento e restauração após uma falha.

Usabilidade

Facilidade para a utilização do sistema.

  • Inteligibilidade — entendimento dos conceitos utilizados.
  • Apreensibilidade — facilidade para o aprendizado.
  • Operacionalidade — facilidade para realizar as operações
...
Continue lendo "Engenharia de Software: conceitos e qualidade" »

Manipulação de XML com PHP DOM, XSLT, DTD e XSD

Computação713,83 KB

Data: 03 de janeiro de 2024

4MAAAAASUVORK5CYII=

Criação de Ficheiro XML com PHP DOM

Apresente um script PHP DOM que crie um ficheiro XML (com o nome exercicio2.xml) com o conteúdo apresentado na Figura 1.

<?php
// Cria uma nova instância de DOMDocument
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->formatOutput = true; // Formata a saída para melhor legibilidade

// Cria o elemento raiz <shiporder>
$shiporder = $dom->createElement('shiporder', '889923');
$dom->appendChild($shiporder);

// Cria e adiciona o elemento <cliente_nome>
$cliente_nome = $dom->createElement('cliente_nome', 'Carlos Alves');
$dom->appendChild($cliente_nome);

// Cria o elemento <dados> e seus filhos
$dados = $dom->createElement('dados');
$name = $dom-
...
Continue lendo "Manipulação de XML com PHP DOM, XSLT, DTD e XSD" »

Funções e Strings em Python: Algoritmo de César, Contagem e Vetores

Computação1,16 KB

Funções e Strings

#1 Descomponha o algoritmo de César (desenvolvido na última aula) em funções. Exercite essas funções na main.py

def crip(texto):
crip = ''
for i in texto:
palavra = (chr(ord(i) + 4))
crip += palavra
return crip

def descrip(texto):
descrip = ''
for i in texto:
palavra = (chr(ord(i) - 4))
descrip += palavra
return descrip

textoTeste = 'perez'
retornoCrip = crip(textoTeste)
retornoDescrip = descrip(retornoCrip)

print(retornoCrip)
print(retornoDescrip)

#3 Dado um texto de entrada do usuário e uma letra (que também pode ser uma entrada) ... crie uma função que conte a quantidade de incidências dessa letra na palavra. Exercite essa função na main.py

def PalavraChave(textoMaiusculo, procura):
contador = 0
...
Continue lendo "Funções e Strings em Python: Algoritmo de César, Contagem e Vetores" »

Guia de JavaScript: Formulários, Eventos e Objetos

Computação5,22 KB

Estrutura do Script

FOR

for (i = 1; i <= 5; i++) {
    total = total + 1;
    document.write(total);
}

FORMULÁRIOS

Formulário:

<form action="resultado.php" name="form1" method="post">

Caixa de texto:

Botão submit:

Botão normal:

Caixa de seleção:

<select name="hobby">
    <option value="livros">ler livros</option>
    <option value="música">ouvir música</option>
    <option value="esporte" selected>praticar esportes</option>
</select>

Obs:

  • Para obter o valor de uma caixa de texto, utilize: formulário.nomecaixa.value
  • Para colocar o foco em uma caixa de texto, utilize: formulário.nomecaixa.focus()

Eventos

Evento ONLOAD

Ex: <body onload="chegada()">

Evento ONCLICK

Ex: <input type="button"...

Continue lendo "Guia de JavaScript: Formulários, Eventos e Objetos" »

Arquitetura de CPU: Ciclos, Pipeline e Instruções

Computação2,7 KB

10 – Ciclo de busca: A CPU executa cada instrução em uma série de pequenas etapas:

  1. Trazer a próxima instrução da memória até o registrador.
  2. Alterar o contador de programa para indicar a próxima instrução.
  3. Determinar o tipo de instrução trazida.
  4. Se a instrução usar uma palavra na memória, determinar onde a palavra está.
  5. Trazer a palavra dentro de um registrador da CPU, se necessária.
  6. Executar a instrução.
  7. Voltar à etapa 1 para iniciar a execução da instrução seguinte.

Este é um ciclo conhecido como Busca-Decodifica-Executa.

11 – O conceito de Pipeline: permite que a execução da instrução seja dividida em muitas partes (uma dúzia ou mais), cada uma manipulada por uma parte dedicada do hardware, e todas elas podem executar...

Continue lendo "Arquitetura de CPU: Ciclos, Pipeline e Instruções" »

Análise Léxica e Sintática: Conceitos Fundamentais

Computação3,6 KB

- O programa é uma sequência de instruções que descrevem como executar uma determinada tarefa.
- O analisador léxico reconhece, a partir de uma sequência de caracteres, os símbolos terminais de uma linguagem.
- O scanner tem por objetivo reconhecer os itens léxicos e atribuir a cada um deles uma classe/identificação.
- O conjunto finito de todos os símbolos de uma linguagem é denominado alfabeto.
- Podemos entender a tarefa de reconhecer um token como a atividade de identificação de uma palavra em uma sentença/linguagem, tarefa esta realizada por um analisador léxico.
- Os símbolos terminais podem ser considerados as palavras de uma linguagem de programação.
- O alfabeto de uma linguagem é um conjunto finito de símbolos que são
...
Continue lendo "Análise Léxica e Sintática: Conceitos Fundamentais" »

7- quais os benefícios do uso de threads em ambientes cliente-servidor?

Computação2,93 KB

8- Windows server 2012: existem Duas carateristicas workgroup e o domínio. No workgroup nenhum Computador tem controlo sobre o outro, cada um tem um conjunto de contas De utilizadores, nao costuma haver mais de 20 computadores e todos os Computadores estao na mesma rede local. No domínio um computador e um servidor, os administradores de rede utilizam servidores pára controlar a Segurança e as permissoes pára todos os computadores.
9- Active directory domain service e management service: oADDS Armazena os dados do directorio e gere a comunicaçao entre utilizadores E dominios, processos de login do utilizador e pesquisas de directorio. ADMS cria uma estratégia de segurança de uma organizaçao protegendo as Informaçoes com politicas
...
Continue lendo "7- quais os benefícios do uso de threads em ambientes cliente-servidor?" »

Guia de Estudo: Redes de Computadores e Protocolos

Computação3,36 KB

Fundamentos de Aplicações de Rede

Quais os objetivos principais devem ser cumpridos para que uma aplicação possa ser classificada como aplicação de rede?
R.: Executar em diferentes sistemas finais e se comunicar através de uma rede.

Arquiteturas de Aplicação

Quais são as arquiteturas de aplicação possíveis e suas características?

  • Cliente-servidor: O cliente requisita dados ao servidor, que responde à solicitação.
  • P2P (Peer-to-Peer): Sistemas finais se comunicam diretamente, atuando como cliente e servidor.
  • Híbrido: Integra conceitos de cliente-servidor com P2P.

Qual é a interface de comunicação entre a camada de aplicação e a de transporte?
R.: Socket.

Protocolos e Serviços Web

Por que HTTP, FTP, SMTP, POP3 e IMAP rodam sobre TCP

...
Continue lendo "Guia de Estudo: Redes de Computadores e Protocolos" »