O livro Defensive Database Programming, de Alex Kuznetsov, contém 302 páginas de excelente conteúdo e é uma fantástica fonte de informações a respeito de como escrever código T-SQL de qualidade.
Dentro deste livro, você encontrará dezenas de práticas e técnicas de programação defensiva que irá melhorar a qualidade do seu código T-SQL e aumentar a sua resistência e robustez.
Os seguintes assuntos são abordados:
- Basic Defensive Database Programming Techniques
- Code Vulnerabilities due to SQL Server Misconceptions
- Surviving Changes to Database Objects
- When Upgrading Breaks Code
- Reusing T-SQL Code
- Common Problems with Data Integrity
- Advanced Use of Constraints
- Defensive Error Handling
Programação defensiva:
O objetivo da programação defensiva é produzir código resiliente que responde graciosamente ao inesperado.
Para o programador do SQL Server, isso significa que o código T-SQL se comportará de forma consistente e previsível em caso de problemas, não quebrará sob execuções paralelas, e sobreviverá a mudanças previsíveis para os esquemas de banco de dados e configurações.
Resiliência:
O cientista inglês Thomas Young foi um dos primeiros a usar o termo. Tudo aconteceu quando estudava a relação entre a tensão e a deformação de barras metálicas, em 1807. Resiliência para a física é, portanto, a capacidade de um material voltar ao seu estado normal depois de ter sofrido tensão.
Atualmente resiliência é utilizado no mundo dos negócios para caracterizar pessoas que têm a capacidade de retornar ao seu equilibrio emocional após sofrer grandes pressões ou estresse, ou seja, são dotadas de habilidades que lhes permitem lidar com problemas sob pressão ou estresse mantendo o equilibrio.