Série da semana: Receitas caseiras para teste unitário

Veja mais

Quer ter acesso a todos os cursos desse Guia?

Banco de Dados para Programadores

Todo programador deveria entender de banco de dados para ser um profissional mais completo, mas isso não é tarefa simples. Nesse guia você irá aprofundar seus conhecimentos em SQL, modelagem, e os principais SGBDs do mercado. Vamos evoluir!

Modelagem

Em muitos sistemas a modelagem do banco de dados é um dos primeiros passos realizados no processo de desenvolvimento. E para que o software tenha sucesso, uma boa modelagem é fundamental, pois ela visa refletir a realidade que o sistema se propõe a atender.

Como desenvolvedor, muitas vezes você precisará realizar a modelagem de novos sistemas, ou ainda de novas funcionalidades para projetos existentes. No curso abaixo você conhecerá os conceitos e técnicas empregadas nessa tarefa:

Em seguida, veja nos links a seguir alguns exemplos práticos de modelagem, encontrados em sistemas reais e com os quais você pode se deparar:

Ainda no contexto da modelagem, um dos conceitos fundamentais é a normalização, processo que visa reduzir a redundância de dados e para isso propõe normalmente a criação de várias tabelas e relacionamentos entre elas. Conheça esse tema no DevCast abaixo:

Há também situações específicas em que se torna viável e necessário empregar uma técnica que vai de encontro à normalização: a desnormalização de bancos de dados. Como o nome sugere, aqui desfazemos alguns passos propostos na normalização, o que acaba gerando redundância de dados. Porém isso é feito normalmente com o objetivo de obter melhor desempenho ao simplificar consultas. Nos DevCasts a seguir você conhecerá esse conceito:

Para entender mais sobre modelagem de dados, desde seus primeiros passos com bancos pequenos até a modelagem para bancos Big Data, acesse:

Linguagem SQL

SQL (Structured Query Language) é a linguagem padrão de manipulação de bancos de dados relacionais. Ela conta com comandos para efetuar consultas, criação e alteração de tabelas, colunas, etc.

Além dos recursos padrão da linguagem, cada SGBD pode implementar uma versão própria com funcionalidades adicionais. Exemplos disso são a T-SQL do SQL Server e a PL/SQL do Oracle.

Para o desenvolvedor, conhecer a linguagem SQL é de extrema importância, pois com frequência será necessário consultar e modificar bancos de dados relacionais. Nos conteúdos a seguir você encontra uma introdução ao assunto, com a apresentação dos principais recursos da SQL padrão:

Subqueries

Uma subconsulta (mais conhecida como SUBQUERY ou SUBSELECT) é uma instrução do tipo SELECT dentro de outra instrução SQL. Por serem muito utilizadas em substituição ao JOIN, quando este não atende, seu domínio pelo programador é fundamental. Aprenda!

Para entender mais sobre a linguagem de consulta estruturada SQL, acesse:

Principais SGBDs

No seu dia a dia como programador você pode precisar lidar com diferentes SGBDs relacionais (Sistemas Gerenciadores de Bancos de Dados). Apesar de todos eles tomarem como base a linguagem SQL padrão (chamada de padrão ANSI), cada um possui diferentes ferramentas de administração e pode também implementar variações do SQL. Para lhe ajudar nesse primeiro contato com essas soluções de bancos de dados, listamos a seguir conteúdos sobre os principais SGBDs relacionais da atualidade:

SQL Server

Desenvolvido e mantido pela Microsoft, o SQL Server está há bastante tempo entre os SGBDs relacionais mais usados no mercado.

MySQL

O MySQL é amplamente adotado tanto para pequenas aplicações quanto para aquelas com grandes volumes de dados. Atualmente esse SGBD é mantido pela Oracle e está disponível em versões gratuitas e pagas.

PostgreSQL

O PostgreSQL é uma opção gratuita e de código aberto que recebe colaborações frequentes da comunidade técnica em sua evolução.

Oracle

O SGBD Oracle é o principal produto da empresa que leva seu nome (Oracle Corporation), a qual também é atualmente a mantenedora do Java e do MySQL, entre outras tecnologias. Ele é também tido como uma das soluções mais robustas de armazenamento de dados relacionais, muito adotado por aplicações de larga escala.

NoSQL

NoSQL é um paradigma que define bancos de dados não relacionais, ou seja, bancos que armazenam as informações de maneira diferente das tabelas, colunas e linhas com as quais estamos acostumados. Ao invés disso, esses bancos usam modelos variados, tais como grafos, chave-valor e documentos.

Esse tipo de SGBD vem ganhando cada vez mais espaço no mercado e seu conhecimento atualmente pode ser considerado um diferencial para o desenvolvedor em diversas situações.

Para compreender melhor esse conceito, consulte os links abaixo:

Para entender mais sobre bancos de dados NoSQL, principalmente sobre o MongoDB, que é um dos mais utilizados na atualidade, acesse:

DevCasts sobre bancos de dados

Nesta seção reunimos os últimos DevCasts que gravamos tratando de assuntos relacionados a bancos de dados. Nos vídeos abaixo você poderá ver diversas discussões sobre técnicas, boas práticas e vários assuntos bastante úteis para seu dia a dia como desenvolvedor:

Sabe aquela dúvida que dá na hora de começar uma aplicação: pelo banco ou pelo código? Assista neste DevCast um bate-papo sobre as diferentes abordagens utilizadas por sistemas ORM (Mapeamento Objeto-Relacional) para permitir que você pense sua aplicação do código para o banco de dados.

Ah, aqui na DevMedia nós usamos o SQL Server. Nos DevCasts abaixo nós compartilhamos um pouco da nossa experiência com esse SGBD:

Documentação

Aqui você encontra informações sobre dois dos subconjuntos da linguagem SQL cujos comandos são mais utilizados. Aprenda sobre os comandos INSERT, SELECT, DELETE e UPDATE com diversos exemplos práticos.

Mais sobre bancos de dados

Além dos cursos e exemplos sugeridos nesse guia, a DevMedia publica com frequência novos conteúdos sobre bancos de dados, os quais você pode conferir nos Guias de Consulta abaixo:

Você também pode conferir todo o conteúdo de banco de dados clicando aqui.

Suporte ao aluno - Deixe a sua dúvida.
Achou 12 meses muito tempo?

Programação muda todo dia e cada novidade nos obriga a rever tudo que já sabíamos. Só um estudo contínuo nos leva ao sucesso.

Apenas 3,5% dos nossos assinantes querem cancelar antes dos 12 meses

O que nossos clientes dizem:

"Excelente trabalho. É assim que a gente vê que o investimento vale a pena. Parabéns!"

- Danniery Alves -
O que nossos clientes dizem:

"Prá lá de bom... Está ótimo: com clareza, didática, conhecimento de causa e uma boa dose de humor. "Persistência" é o segredo."

- Paulo Costa -
O que nossos clientes dizem:

"DevMedia ensina mais do que qualquer faculdade!!!"

- Mauricio Hartmann -