DEV Community

Discussion on: Introdução ao Ecto

Collapse
 
wlsf profile image
Willian Frantz

Muito bacana Rômulo, obrigado por compartilhar! :)

É bacana perceber que tanto o design do Phoenix quanto do Ecto super combinam nesses aspectos!

Enquanto o Phoenix prega por isolar sua camada de dados entre contextos (Bounded-contexts), para garantir que eles sejam responsáveis por uma parte do domínio do seu negócio, ele também funciona para garantir que o contexto será o módulo que irá executar tudo relacionado a comunicação com o banco de dados (funções impuras).

Já o Ecto, baseado no Repository Pattern, garante que independente do que você faça com qualquer parte do toolkit dele (Query, Schema, Changeset), você só estará de fato fazendo um round-trip para o banco enviando ou requisitando dados caso use o módulo Repo (repository). Por isso, sempre costumamos usar o Repo dentro de um contexto do Phoenix em aplicações web!

Essas integrações implícitas do ecossistema do Elixir são as coisas mais lindas que existem!

Collapse
 
rohlacanna profile image
Rômulo Silva • Edited

Que honra receber seu comentário aqui! Obrigado demais pelo feedback 💜

Elixir é maravilhoso!