👑 Mises Dev on Nostr: Vocês já lidaram com polimorfismo a nível de banco de dados? Estou arquitetando um ...
Vocês já lidaram com polimorfismo a nível de banco de dados?
Estou arquitetando um projeto grands no trabalho e optei por polimorfismo a nível de banco de dados.
Algo como:
tb_pessoa possui o id_pessoa, tb_funcionario tem o id_pessoa fazendo a relação com seus dados comuns a qualquer ser humano, assim "herdando" a tabela tb_pessoa.
Daí imagine outras coisas como tb_cargo que possui id_cargo, daí tb_funcionario possui id_cargo, assim herdando tb_pessoa e tb_cargo.
É muito massa porque dá pra fazer um mapa de herança do sistema. Também por se tratar de um ERP, cala cliente que é uma empresa no caso, possui seu próprio banco de dados, quando a pessoa contrata, o sistema réplica o banco de dados, assim dá pra atuar em vários países meio que de forma descentralizada e escalar infinitamente sem mudar o downtime nem degradar o sistema para outros contratantes.
É empolgante implementar coisas realmente boas.
Published at
2025-04-29 22:36:48Event JSON
{
"id": "d2686cf70a95ecedab7385f59882e83b70227acbd798fbe8e366c9233210da5b",
"pubkey": "55472e9c01f37a35f6032b9b78dade386e6e4c57d80fd1d0646abb39280e5e27",
"created_at": 1745966208,
"kind": 1,
"tags": [
[
"a",
"34550:55472e9c01f37a35f6032b9b78dade386e6e4c57d80fd1d0646abb39280e5e27:ndevs-br",
"",
"root"
]
],
"content": "Vocês já lidaram com polimorfismo a nível de banco de dados?\n\nEstou arquitetando um projeto grands no trabalho e optei por polimorfismo a nível de banco de dados.\n\nAlgo como:\n\ntb_pessoa possui o id_pessoa, tb_funcionario tem o id_pessoa fazendo a relação com seus dados comuns a qualquer ser humano, assim \"herdando\" a tabela tb_pessoa. \n\nDaí imagine outras coisas como tb_cargo que possui id_cargo, daí tb_funcionario possui id_cargo, assim herdando tb_pessoa e tb_cargo.\n\nÉ muito massa porque dá pra fazer um mapa de herança do sistema. Também por se tratar de um ERP, cala cliente que é uma empresa no caso, possui seu próprio banco de dados, quando a pessoa contrata, o sistema réplica o banco de dados, assim dá pra atuar em vários países meio que de forma descentralizada e escalar infinitamente sem mudar o downtime nem degradar o sistema para outros contratantes.\n\nÉ empolgante implementar coisas realmente boas.",
"sig": "a6fce1e5760449926b1acb99a76b584e552e119310e7f66d0dfef62bd186204c8def94f2361329a41cfde3a1f764898cabdb68ca4ee162488cc2ced8cc9c2963"
}