Monthly Archives: November 2009

Alguns Conceitos de Orientação a Objetos

Listo abaixo alguns conceitos de orientação a objetos:

Objeto é tudo que é perceptível por qualquer dos sentidos.
Abstração é o ato de separar mentalmente um ou mais elementos de uma totalidade complexa.
Classe é a definição dos atributos e funções de um tipo de objeto.
Herança é quando uma subclasse herda atributos e comportamentos de sua classe imediatamente superior.
Polimorfismo é o princípio em que classes derivadas de uma mesma superclasse podem invocar operações que têm a mesma assinatura, mas comportamentos diferentes em cada subclasse.
Encapsulamento é uma técnica que consiste em separar aspectos externos dos internos da implementação de um objeto.

Advertisements

Importando e Exportando uma base de dados no PostGre

Abaixo vou descrever como importar e exportar uma base de dados no PostGre via linha de comando.
Primeiro vá no menu iniciar e procure pelo PostGre depois clique no link escrito linha de comando (prompt).
Feito isso digite a linha abaixo para gerar o DUMP do seu banco:

PG_DUMP -U postgres -d nomedobanco > caminho

A linha acima começa com o nome do comano depois o atributo "-U" em seguida o nome do usuário no banco outro atributo "-d" e o nome da sua base que deseja importar em seguida o sinal de maior ">" mais o local onde você quer que seja criado o arquivo de backup.
Para importar o DUMP que criamos é muito simples, primeiro crie a database no PostGre depois abra a linha de comando do PostGre como descrito acima, ai é só digitar a linha abaixo:

PSQL -U postgre -f caminho -d nomedobanco

O nome do comando agora mudou "PSQL" na linha temos três atributos "-U -f -d", postgre é o nome do usuário que estou usando caminho é o local onde seu arquivo está e o nome do banco que você criou para receber o DUMP.

Com essas duas linhas é muito simples importar e exportar databases no PostGre.

Curiosidades sobre o PostGre

  • Tamanho máximo de um banco de dados – ilimitado;
  • Tamanho máximo de uma tabela – 32TB;
  • Tamanho máximo de uma linha – 1,6TB;
  • Tamanho máximo de um campo – 1GB;
  • Tamanho máximo de linhas por tabela – ilimitado;
  • Tamanho máximo de colunas por tabela – de 250 a 1600, dependendo dos tipos de dados utilizados;
  • Tamanho máximo de índices por tabela – ilimitado.

O Modelo em Cascata

O Modelo em Cascata ou Ciclo de Vida do Software foi o primeiro modelo de processo de desenvolvimento de software publicado.

Os principais estágios do modelo demonstram as atividades fundamentais de desenvolvimento:

Análise e definição de requisitos. Os serviços, restrições e objetivos do sistema são definidos por meio de consultas aos usuários do sistema. Eles são, portanto definidos detalhadamente e servem como uma especificação de sistema.

Projeto de sistema e software. O processo de projeto de sistema divide os requisitos em sistemas de hardware ou de software. Ele estabelece uma arquitetura geral do sistema. O projeto de software envolve a identificação e a descrição das abstrações fundamentais do sistema de software e suas relações.

Implementação e teste de unidade. Durante esse estágio, o processo de software é realizado como um conjunto de programas ou unidades de programas. O teste unitário envolve a verificação de que cada unidade atende à especificação.

Integração e teste de sistema. As unidades individuais de programa ou os programas são integrados e testados como um sistema completo para garantir que os requisitos de softwares foram atendidos. Após os testes, o sistema de software é liberado para o cliente.

Operação e manutenção. Geralmente (embora não necessariamente) esta é a fase mais longa do ciclo de vida. O sistema é instalado e colocado em operação. A manutenção envolve a correção de erros não detectados nos estágios anteriores do clico de vida, no aprimoramento da implementação das unidades de sistema e na ampliação dos serviços de sistema à medida que novos requisitos são identificados.

Função para Validar CPF

public bool ValidaCPFs(string vrCPF)
{
string valor = vrCPF.Replace(".", "");
valor = valor.Replace("-", "");
if (valor.Length != 11)
{
return false;
}
bool igual = true;
for (int i = 1; i < 11 && igual; i++)
{
if (valor[i] != valor[0])
{
igual = false;
}
}
if (igual valor == "12345678909")
{
return false;
}
int[] numeros = new int[11];
for (int i = 0; i < 11; i++)
{
numeros[i] = int.Parse(valor[i].ToString());
}
int soma = 0;
for (int i = 0; i < 9; i++)
{
soma += (10 – i) * numeros[i];
}
int resultado = soma % 11;
if (resultado == 1 resultado == 0)
{
if (numeros[9] != 0)
{
return false;
}
}
else if (numeros[9] != 11 – resultado)
{
return false;
}
soma = 0;
for (int i = 0; i < 10; i++)
{
soma += (11 – i) * numeros[i];
}
resultado = soma % 11;
if (resultado == 1 resultado == 0)
{
if (numeros[10] != 0)
{
return false;
}
}
else if (numeros[10] != 11 – resultado)
{
return false;
}
return true;
}