Apontamentos, resumos, trabalhos, exames e problemas de Computação

Ordenar por
Matéria
Nível

Padrões de Projeto: Adapter e Observer

Classificado em Computação

Escrito em em português com um tamanho de 3,32 KB

Padrão Adapter

O Padrão Adapter permite que classes incompatíveis trabalhem em conjunto, convertendo a interface de uma classe em outra interface esperada pelo cliente.

Por que usar?

É comum o uso de frameworks ou bibliotecas de terceiros em projetos. O Adapter é essencial para integrar essas bibliotecas sem a necessidade de realizar manutenções no código existente.

Componentes do Adapter

  • Target (Alvo): Define a interface do domínio específico que o cliente utiliza.
  • Adapter (Adaptador): Adapta a interface Adaptee para a interface da classe Target.
  • Adaptee (Adaptada): Define uma interface existente que necessita ser adaptada.
  • Client (Cliente): Colabora com os objetos em conformidade com a interface Target.

Tipos de Adapter

Existem dois tipos... Continue a ler "Padrões de Projeto: Adapter e Observer" »

Fundamentos de Sistemas Operacionais: Threads, Memória e I/O

Classificado em Computação

Escrito em em português com um tamanho de 17,12 KB

Gerenciamento de Threads e Processos

Monothread vs. Multithreads

Monothread

Neste ambiente, cada processo possui seu próprio espaço de endereçamento. Consome muitos recursos do sistema, pois o sistema precisa alocar recursos no início e no término do processo. O compartilhamento de espaço de endereçamento é um desafio, pois como cada processo tem seu próprio espaço, a comunicação entre processos fica mais lenta, sendo necessária a utilização de mecanismos como semáforos, pipes, compartilhamento de memória, etc.

Multithreads

É um ambiente com múltiplos threads, e pode ser definido como uma sub-rotina de um programa executada de forma assíncrona. Desta forma, um ambiente multithread possibilita a execução concorrente de sub-rotinas... Continue a ler "Fundamentos de Sistemas Operacionais: Threads, Memória e I/O" »

Sistemas Distribuídos: Conceitos, Vantagens, Desafios e Aplicações

Classificado em Computação

Escrito em em português com um tamanho de 9,57 KB

1) Conceitue Sistemas Distribuídos.
Sistema distribuído é aquele no qual os componentes localizados em computadores
interligados em rede se comunicam e coordenam suas ações apenas passando mensagens.
2) Cite vantagens acerca dos Sistemas Distribuídos.
- Compartilhamento de dados - base de dados comum;
- Confiabilidade – se um nó falha os demais poderão continuar operando;
- Escalabilidade – aumento número de nós;
- Economia – melhor relação custo/desempenho
3) Cite alguns exemplos de Sistemas Distribuídos.
Internet, Facebook, Jogos Online, Email,
4) Explique o que quer dizer transparência e cite dois diferentes tipos de transparência.
A transparência é definida como a ocultação, para um usuário final ou para um programador

... Continue a ler "Sistemas Distribuídos: Conceitos, Vantagens, Desafios e Aplicações" »

Conceitos Fundamentais de Mídia, Cores e Imagem Digital

Classificado em Computação

Escrito em em português com um tamanho de 3,39 KB

Mídia

Significa meios de comunicação e pode-se dizer que é um dispositivo onde o conteúdo será depositado.

Interação

É uma ação recíproca realizada por duas ou mais pessoas.

Interativo

É o meio de comunicação que permite ao destinatário interagir de forma dinâmica com o emissor.

Interatividade

Capacidade de interagir ou permitir interação.

Multimídia

É a integração de gráficos, animações, vídeo, etc., baseada em computador, com o objetivo de comunicar conteúdo intelectual aos leitores.

Hipertexto

É um texto que faz referência a outros textos e que possibilita ir ao encontro deles. Exemplos: Áudio, vídeo, gráfico, etc.

Hipermídia

É um tipo de linguagem ampliada. É um conjunto de meios que permite o acesso a textos, imagens... Continue a ler "Conceitos Fundamentais de Mídia, Cores e Imagem Digital" »

Guia de Processamento de Imagens e Design

Classificado em Computação

Escrito em em português com um tamanho de 3,49 KB

Representação de Imagens

  • Representação vetorial: Conjunto de dados que define sua geometria.
  • Representação matricial: Conjunto de atributos que definem a aparência, onde as imagens são descritas por células em uma matriz.

Formatos de Arquivo

  • GIF: Formato compactado, ideal para imagens com grandes áreas de cor sólida.
  • JPEG: Formato otimizado para fotografias e ilustrações.
  • PNG: Alternativa ao GIF, indicado para imagens gráficas.
  • Bitmap: Composto por pequenos pixels, editáveis individualmente ou em grupo.
  • Gráfico vetorial: Possui margens suaves, pois as formas são definidas matematicamente.

Processamento no Domínio Espacial

  • Funções no domínio espacial: Expressas pela imagem resultante, função de transformação e imagem original.
... Continue a ler "Guia de Processamento de Imagens e Design" »

Guia de Redes: Hubs, Switches, Routers e OSPF

Classificado em Computação

Escrito em em português com um tamanho de 2 KB

Dispositivos de Rede: Domínios de Colisão e Difusão

  • Hub: 1 domínio de colisão + 1 domínio de difusão.
  • Router: 1 domínio de difusão por interface.
  • Switch: 1 domínio de colisão por interface + 1 domínio de difusão.

Configuração de Rotas

Rotas Estáticas: Incluir todas as rotas da tabela do enunciado.
Comando: configure router static-route <destino> next-hop <interfaceViz>

  • Nas rotas locais, contar os caminhos mais o system.
  • Nas rotas OSPF, contar o número de rotas da tabela mais o system.

Configuração do Protocolo OSPF

Para configurar o OSPF, é necessário:

  1. Configurar as interfaces para os prefixos vizinhos.
  2. Definir as interfaces no mesmo AS (Área 0).
  3. Definir as interfaces como ponto a ponto (exceto o system).
  4. Configurar interfaces
... Continue a ler "Guia de Redes: Hubs, Switches, Routers e OSPF" »

Coleções em C#: ArrayList, Queue, Stack, Hashtable e SortedList

Classificado em Computação

Escrito em em português com um tamanho de 4,92 KB

ArrayList

ArrayList possui capacidade inicial = 4.

Métodos:

  • Add
  • BinarySearch
  • Contains
  • Count
  • IndexOf: retorna o índice da primeira ocorrência de um objeto especificado no ArrayList.
  • Insert
  • LastIndexOf: retorna o índice da última ocorrência de um objeto especificado no array.
  • Remove: remove a primeira ocorrência.
  • RemoveAt: remove um objeto no índice especificado.
  • RemoveRange: remove determinada quantidade a partir do índice especificado.
  • Reverse: inverte a ordem dos elementos do ArrayList.
  • Sort: ordena os elementos.
  • ToArray: copia para outro ArrayList.
  • TrimToSize: altera a capacidade para a quantidade de elementos contidos atualmente.

Queue

Queue (Fila - First-in First-out).

Métodos:

  • Clear: remove tudo.
  • Contains: retorna true se tiver o elemento.
  • Count
  • Dequeue:
... Continue a ler "Coleções em C#: ArrayList, Queue, Stack, Hashtable e SortedList" »

Arquiteturas de Software: Cliente-Servidor e Peer-to-Peer

Classificado em Computação

Escrito em em português com um tamanho de 2,84 KB

Modelo Cliente-Magro

Neste modelo, todo o processamento da aplicação e o gerenciamento de dados são realizados no servidor. O cliente é responsável simplesmente por executar o software de apresentação.

Modelo Cliente-Gordo

Neste modelo, o servidor é responsável somente pelo gerenciamento de dados. O software do cliente implementa a lógica da aplicação e as interações com o usuário do sistema.

Como Funciona a Arquitetura Peer-to-Peer?

É uma arquitetura de compartilhamento direto entre utilizadores, de um computador para outro.

Processos desempenham papéis similares:

  • Não há distinção entre cliente e servidor.
  • Um Peer pode ser ora cliente, ora servidor.
  • Peers atuam cooperativamente.

Exemplos

Bittorrent, eMule, Shareaza, Limewire

Como

... Continue a ler "Arquiteturas de Software: Cliente-Servidor e Peer-to-Peer" »

Guia Completo de IHM para CLPs: Tipos e Aplicações

Classificado em Computação

Escrito em em português com um tamanho de 2,93 KB

IHM para CLPs: Conceitos e Aplicações

É necessária uma interface entre o CLP e o operador humano para operação on-line e off-line:

  • Operação on-line:
    • Entrada de dados e comandos;
    • Supervisão e visualização do andamento do processo sob controle do CLP.
  • Operação off-line:
    • Entrada, atualização e correção dos programas de aplicação.

Formas de Interfaceamento

  • Utilizando as entradas e saídas (E/S) do CLP;
  • Utilizando painéis dedicados para IHM (PI);
  • Interligando o CLP a um TP/TI;
  • Interligando o CLP a um PC.

IHM com E/S

  • Método utilizado para operação on-line;
  • Entrada de dados: referência para malhas de controle ou comandos do tipo ON/OFF;
  • Dados introduzidos por botões, chaves seletoras e potenciômetros ligados a entradas pré-definidas do
... Continue a ler "Guia Completo de IHM para CLPs: Tipos e Aplicações" »

Guia Prático de Comandos SQL: DDL e DML

Classificado em Computação

Escrito em em português com um tamanho de 2,66 KB

Criando tabelas no Banco de Dados

CREATE TABLE Parentesco (
  ID NUMBER(4),
  Descricao VARCHAR2(75) NOT NULL,
  CONSTRAINT PK_Parentesco PRIMARY KEY (ID)
);

CREATE TABLE Pessoa (
  CPF NUMBER(11),
  Nome_completo VARCHAR2(150) NOT NULL,
  DT_nascimento DATE,
  Sexo CHAR(1),
  ID_parentesco NUMBER(4),
  CONSTRAINT PK_pessoa PRIMARY KEY (CPF),
  CONSTRAINT Check_date CHECK (DT_nascimento >= TO_DATE('01/01/1920', 'DD/MM/YYYY')),
  CONSTRAINT Check_Sexo CHECK (Sexo IN ('M', 'F')),
  CONSTRAINT FK_ID_Pessoa FOREIGN KEY (ID_parentesco) REFERENCES Parentesco(ID)
);

Inserindo registros nas tabelas

INSERT INTO Parentesco (ID, Descricao) VALUES (9000, 'EU');
INSERT INTO Parentesco (ID, Descricao) VALUES (9100, 'Pai');

INSERT INTO Pessoa (CPF, Nome_
... Continue a ler "Guia Prático de Comandos SQL: DDL e DML" »