Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo:

Neste artigo veremos como utilizar Stored Procedures para centralizar o código de persistência de dados das aplicações no banco de dados, bem como demonstraremos, através de um estudo de caso, como fazer essa migração de forma automática utilizando uma ferramenta implementada em Java.

Para que serve:

Os procedimentos armazenados trazem consigo muitos benefícios, que vão desde a melhoria de desempenho até a centralização das lógicas de negócio e do banco de dados em um mesmo servidor de dados. Quando a migração do código de persistência de dados de aplicações para o banco se torna necessária, podemos ter o auxílio de um sistema para gerar funções automaticamente, reduzindo o tempo gasto neste processo.

Em que situação o tema útil:

As stored procedures, além de resultarem em ganho de desempenho, transferem a lógica de negócio dos softwares para o próprio banco, o que evita o retrabalho de instalação de software e beneficia o reaproveitamento de código. Geralmente, a cada mudança no código das aplicações, é necessária uma reinstalação da mesma em cada computador cliente. Se a persistência destes softwares fosse codificada com procedimentos armazenados, não seria necessária a reinstalação causada por uma possível alteração da codificação de métodos das aplicações.

Resumo DevMan

Os recursos denominados Stored Procedures ou Functions, provenientes de SGBDs, são uma alternativa ao retrabalho durante a migração de uma aplicação. Estes recursos permitem concentrar lógicas de programação juntamente com o banco de dados, que podem resultar em muitos benefícios à aplicação, quando utilizados corretamente. Neste contexto, neste artigo veremos como utilizar Stored Procedures para centralizar o código de persistência de dados das aplicações no banco de dados, bem como demonstraremos, através de um estudo de caso, como fazer essa migração de forma automática utilizando uma ferramenta implementada em Java

Um dos grandes pontos críticos do desenvolvimento de software é a questão da reutilização de código e o retrabalho. Às vezes uma migração de um sistema de software para outra linguagem ou mudança de Sistemas Gerenciadores de Banco de Dados (SGBD) se faz necessária, ocasionando problemas como erro de lógica nos métodos migrados e gasto excessivo de tempo durante este processo. Considerando que grande parte da migração é feita sem nenhuma ajuda sistematizada, pode-se constatar que além de haver um retrabalho desnecessário, o processo de desenvolvimento torna-se mais lento.

Os recursos denominados Stored Procedures ou Functions, provenientes de SGBDs, são uma alternativa ao retrabalho durante a migração de uma aplicação. Estes recursos permitem concentrar lógicas de programação juntamente com o banco de dados, que podem resultar em muitos benefícios à aplicação, quando utilizados corretamente. Os benefícios vão desde melhoria de desempenho até a redução de testes na aplicação.

O objetivo desta matéria é demonstrar como utilizar o recurso de Stored Procedures no SGBD PostgreSQL, e como uma aplicação geradora destas funções ajuda no processo de migração.

Stored procedures

Stored Procedure é um conjunto de comandos armazenados no servidor de banco de dados que contém instruções SQL juntamente com estruturas de controle para realização de processamentos complexos. Estas funções armazenadas podem ser chamadas através de diferentes tipos de aplicações, realizando um comportamento único no banco de dados independente de plataforma de desenvolvimento. As stored procedures podem ser chamadas a qualquer momento tanto pelo SGBD, quanto por um sistema que faça acesso ao banco de dados.

A utilização de stored procedures é uma técnica eficiente para se executar operações repetitivas e, portanto, diminuir o retrabalho. Através desta técnica, as instruções são escritas e executadas diretamente no banco de dados, sendo que os procedimentos podem conter estruturas de controle e decisão, características típicas das linguagens de programação.

...
Quer ler esse conteúdo completo? Tenha acesso completo