Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Collections

Fala Vinicius, tudo bom? Eu aqui com mais umas dúvidas chatas!

Então, bacana as collections do doctrine mostrada por você, melhor do que usar uma collection da SPL.

O que eu queria saber é se, por exemplo, em um projeto mais real eu usaria o ArrayCollection dessa forma crua para armazenar os telefones ou seria mais correto eu extender o ArrayCollection e criar uma nova classe que aceite somente Telefones, por exemplo: TelefonesCollection?

Eu não sei se essa abordagem minha é muita preocupação para pouca coisa já que temos também a tipagem no parâmetro , então gostaria saber uma opinião sua.

Eu vejo que o PHP facilitaria bem mais essas questões (collections de determinado tipo) se tivéssemos algo próximo ao generics. Eu penso que as annotations seja um caminho para alguém implementar essa feature, ou talvez eu só esteja viajando muito.

Abraço.

3 respostas
solução

Perfeita sua colocação sobre generics, Diego. Eu também acho que esse problema não existiria se o PHP tivesse esta feature.

Em projetos reais nós utilizamos diretamente sim a class ArrayCollection. Eu, particularmente, nunca a estendi. Mas, nada te impede. Não seria um problema estendê-la. Só teria um trabalhinho de sobrescrever todos os métodos pra adicionar o tipo, né!?

Bacana Vinicius, vou seguir essa forma mais simples mesmo então, a não ser que realmente eu necessite de muita segurança no tipo de dados da collection.

Essa minha dúvida surgiu após eu ler, um tempo atrás, sobre objects calisthenics, provavelmente você já deve ter visto algo.

Valeu, abraço.

Sim sim. Uma das "regras" é sempre encapsular suas coleções. É interessante mas eu confesso que não sigo essa regra à risca.

hahahaha