Clique aqui para ler todos os artigos desta edição
Generalizando a camada de dados com C# e VB .NET
por Marden Menezes
Este artigo discute |
Este artigo usa as seguintes tecnologias: |
· Interfaces do ADO.NET · Acesso a banco de dados |
VB.NET, C# Download: |
Chapéu ADO.NET |
|
Cresce a necessidade de softwares robustos e flexíveis. A existência de diversos sistemas gerenciadores de bancos de dados (SGBD) nos faz pensar que é necessário desenvolver aplicações que não dependam totalmente de tais SGBDs, possibilitando uma melhor escalabilidade e reuso de código. Nesse artigo mostrarei uma estratégia para trabalhar com uma camada de acesso a dados genérica e flexível utilizando as interfaces do ADO .NET e o padrão de projeto Factory.
Interfaces do ADO .NET
Apesar de possuir objetos específicos para acesso a diferentes base de dados (como o SqlConnection para conexões ao SQL Server 7.0 ou superior e o OleDbConnection para bancos de dados OleDb), o ADO .NET foi criado de forma a permitir uma programação totalmente extensível, possibilitando ao desenvolvedor implementar objetos nativos de acesso a diferentes bases de dados.
O mecanismo de herança da programação orientada a objetos provém a facilidade de substituir o acesso a algum objeto pela interface correspondente. Por exemplo, é possível substituir o acesso a um objeto SqlCommand por uma interface IDbCommand. Cada objeto que é específico para um tipo de banco de dados possui uma interface que define qual estrutura ele terá. As definições das classes SqlConnection, OleDbConnection, OracleConnection e OdbcConnection seguem a estrutura definida pela interface IDbConnection.
Figura 1. Interface IDbConnection e classes que a implementam
Na Tabela 1 podem ser vistas algumas interfaces do ADO .NET.
Nome da Interface |
Descrição |
Classes que implementam |
... |