Qual a diferença dos dois patterns no contexto do desenvolvimento web ?
Qual a diferença dos dois patterns no contexto do desenvolvimento web ?
Oi Marcelo, tudo bom?
Aqui e aqui no catalogo de patterns do Martin Fowler, temos uma breve definição de ambos:
Table Data Gateway:
An object that acts as a Gateway (466) to a database table. One instance handles all the rows in the table.
Tradução:
Um objeto que age como uma ponte para uma tabela no banco de dados. Uma instancia manuseia todas as linhas na tabela
Active Record:
An object that wraps a row in a database table or view, encapsulates the database access, and adds domain logic on that data.
Tradução: Um objeto que "engloba" uma linha em uma tabela, encapsula o acesso ao banco de dados e adiciona lógica do dominio nesse dado.
Ou seja ambos são bem semelhantes. Os dois lidam com esse acesso ao banco de dados, em isolar esse contato, mas um tem uma abordagem de lidar com todas as entradas de uma tabela e outro de uma entrada só (pelo o que eu interpretei).
Os patterns costumam ser bem semelhantes mesmo, o que muda de um pro outro é o contexto no qual ele se aplica =)
Abraço!
PArece fazer sentido mesmo: TG para a tabela toda e AR para uma linha apenas.
Obrigado !