Olá, pessoal. Neste artigo vou avaliar um livro bem didático sobre o SQL, que foi lançado recentemente: o Guia Mangá de Bancos de Dados. Este livro foi originalmente escrito em japonês e depois traduzido e adaptado para o inglês e o português. Ele faz parte da série de livros que se propõe a ensinar o básico do básico sobre certos assuntos a partir das histórias em quadrinhos japonesas, os chamados mangás.
Em geral posso dizer que o livro é uma
leitura diferente, prazerosa, didática e faz bem o que se propõe a
fazer, isto é, apresentar os conceitos básicos de banco de dados para o
leitor que é leigo na área. Estudantes e profissionais que nunca viram
SQL e nem sabem o que significa esta sigla vão encontrar um
excelente material didático, especialmente aqueles que gostam de ler
mangás. Porém, até mesmo aqueles que já trabalham com BD há muito tempo podem se beneficiar da leitura que, além de útil, é muito agradável.
A capa do livro atrai quem gosta de mangás e de BD
Antes de começar a falar sobre o conteúdo eu destaco a capa, que apresenta uma fadinha, um livro aberto e três personagens perto de um castelo ao fundo. Apesar de inusitada, com certeza esta capa vai atrair vários leitores que podem estranhar encontrar um livro como este na seção de informática e computação de uma livraria.
O livro foi feito a duas mãos. Mana Takahashi cuidou da parte do desenho do mangá, e Shoko Azuma foi o responsável pela parte técnica. Esta divisão fica clara quando se começa a ler o livro, pois cada um dos seis capítulos é dividido entre a história dos personagens e uma parte textual que aprofunda os conceitos apresentados na história, além de mostrar exercícios, resumo do capítulo e respostas dos exercícios.
A proposta é apresentar os conceitos básicos de banco de dados
de forma didática, através de uma história que envolve personagens que
precisam utilizar o banco de dados. Quem espera um conteúdo técnico mais rigoroso ou aprofundado deve procurar outro material, pois este livro está mais focado em mostrar o que são, para que servem e como funcionam os bancos de dados, ao invés de preparar profissionais para o mercado.
Já no primeiro capítulo o leitor é apresentado aos personagens principais: a princesa Ruruna, o ajudante Cain e Tica, a fada de banco de dados. Eles precisam usar o banco de dados basicamente na organização de dados relacionados ao comércio de frutas do reino de Kod. Quem nunca leu um mangá pode estranhar um pouco as figuras de linguagem, mudanças de cenário, roupas, sons de onomatopéias e até explicações de comportamento e sentimento dos personagens. Porém esta linguagem é característica dos mangás, e é justamente o diferencial do livro.
A fada de banco de dados Tica (de chapéu), a princesa Ruruna (de coroa) e o ajudante Cain
O segundo capítulo foca na apresentação da terminologia e conceitos do banco de dados, com destaque para a apresentação das operações de álgebra relacional que incluem projeção, junção e outras. Até este ponto o leitor ainda está se acostumando com os termos da área e precisa ler devagar as páginas para compreender o que a fadinha está apresentando e também entender qual o contexto e a reação dos demais personagens a cada novo conceito.
A fadinha Tica explicando o conceito de chave primária.
O terceiro capítulo foca na apresentação da modelagem, normalização e projeto de banco de dados. Este capítulo organiza as tabelas e os dados que foram apresentados nos capítulos anteriores e é, de longe, o mais complexo de se entender. Talvez porque a normalização e a definição das três formas normais realmente são conceitos complicados e que requerem prática para serem entendidos plenamente. De qualquer maneira, o capítulo segue apresentando como normalizar os dados através da separação e criação de novas tabelas para organizar os dados de vendas, cujo exemplo é explorado durante todo o livro. O destaque vai para a colocação dos personagens em uma espécie de escalada, para indicar que todas a três formas normais devem ser atendidas para que o modelo seja considerado normalizado.
A fadinha Tica explicando o modelo ER para a modelagem de um banco de dados.
O capítulo quatro apresenta a linguagem utilizada para manipular dados e objetos em um banco de dados relacional: o SQL. Inicialmente, o foco é na instrução SQL, que é apresentada passo a passo a partir das cláusulas WHERE e ORDER BY. Também são apresentadas as principais funções de agregações e como utilizar mais de uma tabela em uma instrução SQL por meio de joins.
Apesar de seguir uma linha bem simples, clara e direta, a apresentação dos conceitos comete alguns deslizes, como a apresentação direta de joins em uma instrução com quatro tabelas no primeiro exemplo de join. Acredito que um exemplo mais simples de joins entre apenas duas tabelas poderia ser utilizado durante os desenhos.
Na parte escrita, são explicados alguns detalhes adicionais, como a cláusula HAVING, subconsultas, operadores lógicos e o operador BETWEEN. Aliás, o exemplo do operador BETWEEN contém um pequeno erro, pois este operador indica que o intervalo de valores utilizados nas extremidades do operador é selecionado, inclusive com os valores da extremidade. Também são apresentados alguns detalhes das instruções CREATE TABLE, INSERT, UPDATE e DELETE.
No final do capítulo é feita uma pequena observação a respeito da padronização do SQL e que o uso desta linguagem pode varia de acordo com cada produto. Porém o livro não cita nomes como o SQL Server, Oracle ou o MySQL, provavelmente com o objetivo de evitar favorecer um ou outro fabricante.
A apresentação da linguagem SQL no livro
O título do capítulo cinco é “Vamos Usar um Banco de Dados”. Esta parte reúne vários conceitos importantes da área, explicados superficialmente. No início é explicada a concorrência e o mecanismo de travas (bloqueios). Em seguida, os personagens abordam questões de segurança, indexação, recuperação de desastres, propriedades ACID de uma transação, falhas, checkpoints, detalhes da transação e finaliza indicando quem será o par romântico da princesa Ruruna.
Na parte escrita são explicados conceitos importantes, principalmente os níveis de isolação da transação, comandos GRANT e REVOKE, estrutura de índices e otimizações. O destaque vai para a explicação de como certas operações internas são utilizadas para a realização de um join, como o hash table e o nested loop.
O exemplo de concorrência é apresentado pelos usuários Andy e Becky
O sexto e último capítulo apresenta contextos e situações onde um banco de dados pode ser utilizado, mostrando que isso pode acontecer na Web, em contextos distribuídos e replicados. A parte desenhada também mostra como um banco de dados se encaixa em uma aplicação web e cita o uso de stored procedures e outros objetos. Por fim, sabemos do destino dos personagens na história e terminamos o livro na parte escrita, que explica detalhes de particionamento, protocolo two-phase commit, arquitetura de replicação e outros usos de banco de dados.
A fada de banco de dados, Tica, vestida como uma lutadora de boxe para explicar proteção a falhas em um banco de dados
O pequeno apêndice final contém alguns comandos de referência SQL utilizados no dia a dia, porém ele serve mais como lembrete da forma geral de se utilizar a instrução SQL do que como guia de referência. O próprio livro recomenda a utilização do manual do banco de dados que se utilizará para evitar problemas com a sintaxe da linguagem durante o trabalho diário com banco de dados.
Como disse, é um bom livro, mas para quem está coemçando. Recomendo outro material de apoio mais avançado para quem realmente deseja trabalhar na área ou ficou com um gostinho de “quero mais”, especialmente para desenvolvedores que utilizaram instruções SQL no dia a dia.
Do ponto de vista técnico, existem outros livros mais didáticos e
apropriados para quem está focando no uso imediato, como o que
avaliei anteriormente aqui no iMasters,
o Use a Cabeça SQL, ou mesmo o CD com o curso de SQL que produzi para o iMasters. Destaco que tanto o livro, como o CD, são
voltados para diferentes níveis de aprendizado e cada um possui
vantagens e desvantagens.
Ficha Técnica
Guia Mangá de Banco de Dados
ISBN: 978-85-7522-163-1
Autores: Mana Takahashi e Shoko Azuma
Páginas: 224
Editora: Novatec
Preço médio: R$ 40,00
Um grande abraço e até a próxima, pessoal!