Esta edição destaca o acesso a dados no Delphi Prism. Só para se ter uma ideia, existem dezenas de formas de acesso a dados no .NET Framework, motivo que causa muita confusão, principalmente para quem está iniciando na plataforma. Entre as formas de acesso, podemos citar o uso de ADO.NET através de classes como SqlConnection e SqlCommand (no caso do SQL Server), ou ainda usar o ADO.NET em uma camada separada, como um Data Access Layer, usando boas práticas e separação de responsabilidades, isolando o domínio. DataSets tipados e TableAdapters também são uma boa forma de acesso a dados, pois permitem separar o acesso em um layer independente da UI. Usando o ASP.NET temos o modelo baseado em DataSource, que tira proveito do mecanismo de DataBinding, incluindo o SqlDataSource e ObjectDataSource. Para um desenvolvimento mais profissional e orientado a objetos, podemos usar um framework como o NHibernate ou o ADO.NET Entity Framework.
O ADO.NET Entity Framework (EF) é a ferramenta de persistência e mapeamento objeto / relacional nativa do .NET Framework, concorrente direto do NHibernate. Ele originalmente apareceu pela primeira vez no Service Pack 1 do Visual Studio 2008 / .NET 3.5. No Visual Studio 2010 / .NET 4.0 ele está na sua versão 2, apesar de normalmente nos referenciarmos a ele por EF4 (versão 4). O ADO.NET EF permite o desenvolvimento de aplicações para .NET onde o foco principal é a orientação a objetos, sem uma comunicação direta com um servidor de banco de dados relacional, como o SQL Server. É o framework que gera todos os comandos SQL. A última versão permite que o desenvolvedor inicie a criação de um aplicativo pela definição do domínio (entidades), com um diagrama de classes, podendo a seguir gerar todo o esquema para o SGBDR. Essa técnica é conhecida como Model First Development. Se já possui um banco existente, o EF pode fazer a engenharia reversa, gerando entidades no modelo a partir do BD. Outra característica interessante do EF é a capacidade de suportar tipos complexos, uma novidade da última versão, bem como Lazy Loading, que permite o carregamento de entidades relacionadas conforme utilização. O que considero um dos melhores recursos é o novo suporte a POCO (Plain Old CLR Objects), onde podemos modelar o domínio da aplicação, com as entidades, sem gerar código que esteja atrelado ao framework ou a uma tecnologia em específico. As classes do domínio simplesmente mapeiam a tabela do banco, normalmente sem conter métodos ou derivar de uma classe base para que possam funcionar. Isso dá uma maior flexibilidade e independência ao se trabalhar com o EF. Isso é importante para aplicações em camadas, que prezam por baixo acoplamento entre suas partes, seguindo bons princípios do DDD (Domain Driven Design). Nesta edição, damos especial destaque ao uso dessa poderosa ferramenta para acesso a dados, utilizando o Delphi Prism XE.
Boa leitura!
Sumário
Delphi
Utilidades e Novidades
Paulo Quicoli
Delphi Prism
Melhorias da linguagem – Parte 4
Rodrigo Araujo
VÍDEO - Veja nesta vídeo aula como usar expressões Lambda no Delphi Prism
Guinther Pauli
Delphi Prism
Entendendo o que são Assemblies, Class Libraries e GAC
Guinther Pauli
dbExpress
Transações
Jéfferson Ricardo Zuchi
DataSnap XE
Técnicas avançadas
Alexandre José Gonçalves da Silva
Padrões Criacionais
Fabrique famílias de objetos
Rafael Stavarengo
Acesso a dados no Delphi Prism
Mapeamento Objeto / Relacional e Persistência com ADO.NET Entity Framework
Rodrigo Araujo
VÍDEO - Veja nesta vídeo aula como fazer utilizar o conceito de Model First com ADO.NET Entity Framework e Delphi Prism
Guinther Pauli
VÍDEO - Veja nesta vídeo aula como usar Linq To Entities com Delphi Prism”
Guinther Pauli
Delphi com PostgreSQL
Descobrindo o poder do elefante
Alexandre José Gonçalves da Silva