Executando verificação de segurança...
2

Complementando, vale mencionar que praticamente nada em programação é sagrado (no sentido de ser uma regra inviolável que vc deve seguir cegamente em todos os casos). Boas práticas só são boas de fato quando tem justificativa técnica, e isso sempre depende do contexto.

Claro que existem coisas que na maioria dos casos costumam ser melhores, e outras que geralmente são ruins em muitas situações. Mas pra muitas coisas a resposta é "depende". Nem sempre é "melhor" usar OOP, por exemplo (não estou discutindo o exemplo dado).

Falando de forma mais ampla, em vez de decorar receitas de bolo e sair usando em tudo sem pensar, o melhor é entender bem cada coisa, os prós e contras, quais problemas resolve bem e em quais casos não é uma boa, e aí sim analisar o problema e decidir se faz sentido usar.

Vc vai perceber naturalmente que algumas soluções costumam ser melhores, como é o caso do exemplo da cadeia de if's. Mas não tenha medo de quebrar uma regra se tiver uma boa justificativa técnica, de preferência obtida depois de uma análise decente.

Por fim, sobre o último exemplo: agrupar parâmetros em um único objeto só é adequado se fizer sentido que eles estejam juntos. Tem casos em que um meio termo fica melhor: juntar alguns dados relacionados em um objeto, e outros que não tem nada a ver com os primeiros vc junta em outro, ou então mantém separado mesmo (na minha opinião, criar um objeto pra juntar dados que não tem nada a ver uns com os outros é pior que manter esses dados separados - no seu exemplo fez sentido juntar, mas é o que eu disse, sempre analise antes de sair fazendo).

Carregando publicação patrocinada...
1

Com certeza, nada é sagrado. Se o código rodou, ta valendo!

Ainda nem cheguei no ponto de design patterns! Mas existem coisas que se bater o olho, dá pra perceber que o dev ainda nao tem uma experiencia adequada. No exemplo da idade, eu acredito ser totalmente sujo e dificil de ler usar if, outro if, aí um else if rs, sendo que fica mais fácil de ler a versão sem else.

No caso do objeto, claro, se estão com objetivos diferentes, nao junte !