sábado, 15 de dezembro de 2012

Conceitos de BD

Oi, colegas! Vamos rever alguns conceitos sobre bancos de dados:

Bando de Dados é o armazenamento estruturado de um conjunto de fatos que possibilitam produção de informação.

Dado é:
 Valor atômico.
 Registro de um fato isolado.
 Não tem significado claro.
 Importante para o usuário.
 Menor unidade de informação.
 Conteúdo do campo.

Campo: descreve o significado de um dado.

Tupla (Registro) é: Conjunto de campos.

Arquivo é: Conjunto de registros.

Banco de Dados é: Armazenamento físico dos arquivos.

SGBD (Sistema Gerenciador de Banco de Dados) é: Software responsável pelo armazenamento e recuperação dos dados do
BD.

A princípio era utilizado o Sistemas de arquivos dos Sistemas Operacionais, para armazenamento e recuperação de informações. O que apresentava os seguintes problemas:
- Redundância: Arquivos criados e mantidos por diferentes programadores.
                         Várias cópias dos dados em arquivos distintos.
                          Informação repetida em diversos arquivos, que gera Inconsistência e isolamento.

- Inconsistência: Arquivos com formatos diferentes.
                              Dados parcialmente atualizados.
         
- Dificuldade no acesso a dados: Necessidade de construir programas para obter qualquer informação, necessitando ser feito de forma manual ou por programas específicos, que exigem constante atualização para se adaptar a qualquer mudança.

- Isolamento dos dados:
Difícil escrever aplicações para recuperação

- Múltiplos usuários: Atualizações concorrentes, que podem resultar em inconsistência.

- Segurança: Autorização de acesso a diferentes usuários.

- Integridade: Os dados armazenados devem obedecer restrições para manutenção da consistência.

- Atomicidade: Operações feitas de forma única, atômica, invariável, a fim de assegurar a integridade e consistência dos dados.

Por necessidade de maior eficiência, surgiram os Sistema Gerenciador de Banco de Dados (SGBD).

Pense nisto: Eu, porém, vos digo: Amai aos vossos inimigos, e orai pelos que vos perseguem; (Mateus 5:44)

segunda-feira, 15 de outubro de 2012

Estude

Oi, colegas! O site Google Code University oferece cursos e tutoriais de várias linguagens de programação, para que os estudantes, entusiastas e educadores de tecnologia aprendam mais sobre as tecnologias e os paradigmas atuais da computação. No site, há tutoriais, slides de palestras e estudo de casos. Alguns dos assuntos são:
  •     CSS, HTML e JS
  •     AJAX
  •     Algoritmos
  •     Sistemas distribuídos
  •     Segurança na web
  •     Linguagens
  •     Bancos de dados.
Além dos cursos, também é possível encontrar materiais didáticos publicados por professores de departamentos de Ciência da Computação do mundo todo.

Pense nisto:
Eu, porém, vos digo: Amai aos vossos inimigos, e orai pelos que vos perseguem; (Mateus 5:44)

sexta-feira, 20 de julho de 2012

SGBD´s gratuítos

Oi, colegas! Além do Oracle e MS SQL Server, que são os SGBD´s mais comum para aplicações comerciais, temos uma gama de Sistemas de Gerenciamento de Banco de Dados gratuitas. A grande maioria usa o padrão SQL ANSI. Listamos os 3 SGBD free mais usados, e você pode saber mais sobre cada um deles clicando nos links abaixo:
MySQL
PostgreSQL
Firebird


Pense nisto: [Diz o Senhor:] Buscar-me-eis e me achareis quando me buscardes de todo o vosso coração.(Jeremias 29:13)

quarta-feira, 20 de junho de 2012

SGBD

Oi, colegas! Antigamente as lojas, os hotéis, os hospitais, as escolas, as instituições públicas e as empresas privadas, mantinham todo seus cadastros e informações (cliente, fornecedores, pedidos, notas fiscais) só através de registro em papel, o que ocupava muito espaço e eram trabalhosos de se manipular. Hoje conseguimos ordenar um banco de dados por hora, data, estado civil, turma, classe, nome de paciente, etc, e de forma rápida buscar por uma informação. Isto é possível graças aos SGBD´s.
O SGBD, Sistema Gerenciador de banco de dados, é o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de uma base de dados. O principal objetivo é retirar da aplicação cliente a responsabilidade de gerenciar o acesso, manipulação e organização dos dados. O SGBD disponibiliza uma interface para que os seus clientes possam incluir, alterar ou consultar dados. Em bancos de dados relacionais a interface é constituída pelas APIs ou drivers do SGBD, que executam comandos na linguagem SQL.
(fonte: Wikipedia)

Pense nisto: Ainda que a figueira não floresça, nem haja fruto na vide; o produto da oliveira minta, e os campos não produzam mantimento; as ovelhas sejam arrebatadas do aprisco, e nos currais não haja gado, todavia, eu me alegro no Senhor, exulto no Deus da minha salvação. (Habacuque 3:17-18)

domingo, 20 de maio de 2012

Scrum

Scrum é uma metodologia ágil para gestão e planejamento de projetos de software.
No Scrum, os projetos são dividos em ciclos (tipicamente mensais) chamados de Sprints. O Sprint representa um Time Box dentro do qual um conjunto de atividades deve ser executado. Metodologias ágeis de desenvolvimento de software são iterativas, ou seja, o trabalho é dividido em iterações, que são chamadas de Sprints no caso do Scrum.
As funcionalidades a serem implementadas em um projeto são mantidas em uma lista que é conhecida como Product Backlog. No início de cada Sprint, faz-se um Sprint Planning Meeting, ou seja, uma reunião de planejamento na qual o Product Owner prioriza os itens do Product Backlog e a equipe seleciona as atividades que ela será capaz de implementar durante o Sprint que se inicia. As tarefas alocadas em um Sprint são transferidas do Product Backlog para o Sprint Backlog.
A cada dia de uma Sprint, a equipe faz uma breve reunião (normalmente de manhã), chamada Daily Scrum. O objetivo é disseminar conhecimento sobre o que foi feito no dia anterior, identificar impedimentos e priorizar o trabalho do dia que se inicia.
Ao final de um Sprint, a equipe apresenta as funcionalidades implementadas em uma Sprint Review Meeting. Finalmente, faz-se uma Sprint Retrospective e a equipe parte para o planejamento do próximo Sprint. Assim reinicia-se o ciclo.
Pra saber mais sobre o SCRUM, clique aqui para ver o que diz a Wikipédia.

Pense nisto: Pois sabemos que todas as coisas trabalham juntas para o bem daqueles que amam a Deus, daqueles a quem ele chamou de acordo com o seu plano. (Romanos 8:28)

sexta-feira, 20 de abril de 2012

XP: Extreme Programming

Olá, colegas! XP é uma metodologia para desenvolvimento de software ágil, com qualidade e que atenda as necessidades do cliente. Ela é uma metodologia voltada para projetos cujos requisitos mudem com freqüência, utilizem desenvolvimento orientado a objetos, equipes enxutas e desenvolvimento incremental.

Para saber mais, veja o que a Wikipédia nos diz sobre Extreme Programming, clicando aqui.

Pense nisto:
Sem fé ninguém pode agradar a Deus, porque quem vai a ele precisa crer que ele existe e que recompensa os que procuram conhecê-lo melhor. (Hebreus 11:6)

terça-feira, 20 de março de 2012

Desenvolvimento Ágil

Olá, colegas! A crise do software não é recente, vem desde a década de 70. Nos anos 90 diversos pensadores da área de engenharia de software se juntaram para tentar encontrar a metodologia correta para lidar com software e não chegaram a uma conclusão. Mas chegaram a um conjunto de valores importantes, que deram origem ao que chamamos de manifesto ágil, que pode ser visto aqui.
Através destes princípios foram definidas aboradagens para o desenvolvimento de software, que tenta minimizar o risco pelo desenvolvimento do software em curtos períodos, chamados de iteração, os quais gastam tipicamente menos de uma semana a até quatro. Cada iteração é como um projeto de software em miniatura de seu próprio, e inclui todas as tarefas necessárias para implantar o mini-incremento da nova funcionalidade: planejamento, análise de requisitos, projeto, codificação, teste e documentação.

Os princípios do desenvolvimento ágil valorizam:

    * Garantir a satisfação do consumidor entregando rapidamente e continuamente softwares funcionais;
    * Softwares funcionais são entregues frequentemente (semanas, ao invés de meses);
    * Softwares funcionais são a principal medida de progresso do projecto;
    * Até mesmo mudanças tardias de escopo no projecto são bem-vindas.
    * Cooperação constante entre pessoas que entendem do 'negócio' e desenvolvedores;
    * Projetos surgem através de indivíduos motivados, entre os quais existe relação de confiança.
    * Design do software deve prezar pela excelência técnica;
    * Simplicidade;
    * Rápida adaptação às mudanças;
    * Indivíduos e interações mais do que processos e ferramentas;
    * Software funcional mais do que documentação extensa;
    * Colaboração com clientes mais do que negociação de contratos;
    * Responder a mudanças mais do que seguir um plano.

Pense nisto:
O Senhor está perto de todos os que pedem a sua ajuda, dos que pedem com sinceridade. (Salmo 145:18)