Anotações, resumos, trabalhos, provas e exercícios de Computação de Ensino Médio

Algoritmos Essenciais: Análise, Busca e Ordenação

Computação25,82 KB

Importância e Aplicabilidade da Técnica de Força Bruta

A força bruta é aplicável a uma ampla variedade de problemas. Para alguns problemas importantes, a técnica fornece algoritmos razoáveis independentemente do tamanho do problema, como é o caso, por exemplo, da ordenação, busca sequencial e multiplicação de matrizes.

Técnica de Backtracking: Descrição e Aplicabilidade

É um método para realizar busca exaustiva, isto é, avaliar todas as possíveis soluções de um problema. É geralmente aplicado a problemas de otimização.

Exercícios de Aplicação do Método Húngaro

Nos exercícios 3, 4, 5 e 6, aplique o método húngaro para resolver os problemas que estão sendo propostos. (Exemplo extraído de Anton & Rores, 2001,...

Continue lendo "Algoritmos Essenciais: Análise, Busca e Ordenação" »

Guia Prático de SQL: Comandos, Restrições e Consultas

Computação2,84 KB

Conceitos Fundamentais de Banco de Dados

Modelo Lógico: É a implementação dos relacionamentos na estrutura de dados.

Linguagens de BD Relacional: SQL, Oracle, MySQL, etc.

SQL: Significa Structured Query Language (Linguagem de Consulta Estruturada).

Comandos de Banco de Dados

  • DDL (Data Definition Language): Descreve a estrutura de armazenamento do BD. Permite criar, alterar e destruir objetos da base de dados.
  • DML (Data Manipulation Language): Linguagem de manipulação de dados.
  • DCL (Data Control Language): Linguagem de controle de dados.

Integrity Constraints (Restrições de Integridade)

Permitem definir requisitos para a qualidade dos dados que o BD deve seguir:

  • Not Null: Por padrão, todas as colunas aceitam valores nulos.
  • Unique Key: Não permite
...
Continue lendo "Guia Prático de SQL: Comandos, Restrições e Consultas" »

Bancos de Dados NoSQL: Guia Completo

Computação3,24 KB

O que é NoSQL?

NoSQL não significa "não SQL", e sim "não somente SQL".

Os bancos de dados NoSQL são sistemas de armazenamento de dados que surgiram para atender a necessidades nas quais os bancos de dados tradicionais (relacionais) são ineficazes.

Muitos desses bancos de dados apresentam características interessantes, como:

  • Alta performance
  • Escalabilidade
  • Replicação
  • Suporte a dados estruturados
  • Grafos e subcolunas

Quando usar NoSQL e SQL?

Usamos bancos relacionais principalmente em cenários em que a integridade dos dados é extremamente importante e não pode haver nenhuma quebra de referência.

Para todos os outros cenários, podemos utilizar o NoSQL, principalmente quando precisamos de alta disponibilidade ou escalabilidade.

Resumo:

  • SQL: Ideal
...
Continue lendo "Bancos de Dados NoSQL: Guia Completo" »

Conceitos Essenciais de POO, MVC e Boas Práticas de Programação

Computação5,41 KB

Convenções e Boas Práticas de Programação

Convenções de Nomenclatura

Classes e Projetos (PascalCase)

Devem ser escritos com a primeira letra de cada palavra em maiúscula.

Pacotes, Métodos e Variáveis (camelCase)

Devem ser iniciados com letra minúscula.

Boas Práticas: Documentação

Utilize documentação através de comentários (como JavaDoc) antes de métodos e classes, para facilitar o entendimento e a manutenção do código.

Encapsulamento e Construtores

Por Que Evitar o Uso Indiscriminado de Getters e Setters?

O uso indiscriminado de get/set torna o encapsulamento sem sentido, uma vez que permite o acesso direto aos atributos antes considerados privados.

Como o Construtor Reduz a Necessidade de Métodos Set?

Ao criar um construtor com...

Continue lendo "Conceitos Essenciais de POO, MVC e Boas Práticas de Programação" »

Introdução à Linguagem SQL e Restrições em Banco de Dados

Computação2,94 KB

Modificando Colunas

Modificar coluna Fun_Salario para aceitar 10 inteiros e 2 decimais:

Alter table Funcionario modify (Fun_Salario number (12,2));

Criando Cópias de Tabelas

Criar cópia da tabela Vendas, a nova tabela se chamará vendas_bk01:

Select * into vendas_bk01 from vendas;

Modelo Lógico

É a implementação dos relacionamentos na estrutura de dados.

Linguagens de Banco de Dados Relacional

SQL, Oracle, MySQL, etc.

SQL

Significa Linguagem de Consulta Estruturada.

DDL (Data Definition Language)

Descreve a estrutura de armazenamento do banco de dados; não altera os valores armazenados. Permite criar, alterar e destruir objetos que compõem a estrutura da base de dados.

DML (Data Manipulation Language)

DCL (Data Control Language)

Restrições de Integridade

Restrições...

Continue lendo "Introdução à Linguagem SQL e Restrições em Banco de Dados" »

Estruturas de Dados: Conceitos, TADs e Implementações

Computação3,55 KB

Tipos de Dados e Abstratos

Tipo de Dado

Define o conjunto de valores que uma variável pode assumir e as operações sobre esses valores. Ex.: Int, Double, Char.

Tipo Abstrato de Dados (TAD)

Define o conjunto de valores e as operações sobre os valores, mas não define sua implementação. Ex.: Lista, Pilha, Fila e Árvore.

Exemplos de Tipos Abstratos de Dados (TADs)

  • Lista: Conjunto de itens interligados cujas operações de inserção e remoção podem ser feitas em qualquer parte da lista.
  • Pilha: Conjunto de itens interligados cujas operações de inserção e remoção só podem ser feitas no topo da pilha (LIFO - Last In, First Out).
  • Fila: Conjunto de itens interligados cuja operação de inserção é feita no final da fila e a operação de
...
Continue lendo "Estruturas de Dados: Conceitos, TADs e Implementações" »

Questões de Segurança da Informação e Criptografia

Computação12,5 KB

  1. (CESPE) A equipe de segurança da informação de determinado órgão identificou uma tentativa de ataque com as seguintes características:

    Os analistas de segurança levantaram a hipótese de existência de regras no firewall que permitiam o acesso de todos os segmentos, internos e externos, ao servidor web na porta 80 com o protocolo TCP. Identificaram também que a aplicação web atacada possuía controle de acesso ao ambiente de administração baseado nos perfis das credenciais e do range de IPs internos da rede corporativa.

    Considerando essa situação hipotética e as boas práticas de segurança da informação, julgue o item a seguir.

    O referido atacante utilizou uma máquina comprometida localizada na rede interna do órgão, conhecida

...

Continue lendo "Questões de Segurança da Informação e Criptografia" »

Camada de Controle e Provisionamento em Nuvem

Computação4,28 KB

Camada de Controle: Inclui softwares responsáveis pelo gerenciamento e controle das camadas de infraestrutura de nuvem. Recebe solicitações das camadas de serviço e instrumentação.

Implementação: Pode ser implementada em cima da camada virtual ou da camada física.

Funções da camada de controle: Configuração, provisionamento e monitoramento de recursos.

Software de Controle: Vincula os recursos subjacentes e trabalha em conjunto com o software de virtualização, permitindo:

  • Agrupamento de recursos;
  • Alocação de recursos para serviços;
  • Otimização da utilização de recursos.

Características: Gerenciador de Elemento e Unificado:

  • Element Manager: Permite gerenciar componentes de infraestrutura independentemente.
  • Unified Manager: Fornece
...
Continue lendo "Camada de Controle e Provisionamento em Nuvem" »

Guia Completo sobre MES: Funcionalidades, Versões e Benefícios

Computação3,14 KB

MES: Guia Completo

O que é MES?

MES: São sistemas computadorizados que gerenciam as operações de manufatura, sendo responsável pela integração entre a área administrativa e a industrial.

Funcionalidades do MES

A-*Alocação e estado dos recursos: Tem a função de garantir que os recursos necessários estarão disponíveis.

*programação das operações: Gerencia com base nos recursos disponíveis, reconhecendo operações paralelas ou sobrepostas e identificando as alternativas possíveis.

*Distribuição de unidades de produção: Gerencia o fluxo de unidades de produção sob a forma de tarefas, pedidos, lotes e ordens de serviço.

*Controle de documentação: Controla registros e formulários que devem acompanhar as unidades de produção,...

Continue lendo "Guia Completo sobre MES: Funcionalidades, Versões e Benefícios" »

Configuração de Servidores: DNS (BIND), Web (Apache) e Mail

Computação3,81 KB

Configuração DNS: BIND

Parâmetros de Autoridade de Domínio (SOA)

  • Serial: 2018091301
  • Refresh: 604800
  • Retry: 86400
  • Expire: 2419200
  • Negative Cache TTL: 604800

FQDN (Fully Qualified Domain Name): ns1.labmetodista.lab.

Parâmetro de Configuração de Nameservers

dns-nameservers "172.16.215.10" (Utilizado para determinar o endereço do servidor DNS na VM)

Comando 'server' no nslookup

Objetivo: Encontrar o IP do servidor que está sendo utilizado para fazer a consulta.

Consultas DNS (Comando DIG)

  1. Entradas do tipo A (uol.com.br): DIG A UOL.COM.BR
  2. Entradas do tipo MX (facebook.com): DIG MX FACEBOOK.COM
  3. Entradas do tipo TXT (SPF) (gmail.com): DIG TXT GMAIL.COM
  4. Entradas do tipo SOA (estadao.com): DIG SOA ESTADAO.COM
  5. Entradas do tipo AAAA (youtube.com): DIG AAAA YOUTUBE.
...
Continue lendo "Configuração de Servidores: DNS (BIND), Web (Apache) e Mail" »