O excesso de ifs
no código é comum quando trabalhamos com JavaScript e parece normal e imprescindível em muitos casos, mas na verdade é um problema que pode trazer maus cheiros, como repetição de código, falta de legibilidade e prejudicar diretamente na manutenção do software.
Para resolver isso sem muito esforço, podemos usar práticas e princípios de orientação a objetos, como polimorfismo e herança. Em linguagens dinâmicas (como JavaScript, Ruby e Python) nós podemos tirar vantagens da linguagem e utilizar uma técnica mais simples porém tão poderosa quanto polimorfismo, neste caso, Duck Typing.
Para entender o uso da técnica de duck typing e remover o aglomerado de ifs
do seu código, você pode ler o artigo no blog dos desenvolvedores da TriadWorks. Através de um exemplo prático e didático fica fácil enxergar a problemática e a solução com o uso de duck typing.
Este problema não só ocorre com JavaScript, mas com várias outras linguagens e paradigmas, inclusive com Java. Por esse motivo, é importante entender como podemos melhorar a qualidade do nosso código com práticas de orientação a objetos!