En général, « mieux » signifie dans la programmation des choses différentes. Par exemple, un meilleur programme
- est plus facile à comprendre, à savoir exprime l'intention de mieux
- est plus facile à entretenir. Par exemple, moins de lignes de code, moins sujette aux erreurs, etc.
- a de meilleures performances, en termes de temps d'exécution
- a de meilleures performances, en termes de utilisation de la mémoire
etc Puisque nous parlons de Ruby, les performances sont généralement moins importantes. Si vous avez vraiment besoin de performances, vous pouvez envisager un autre langage de programmation. Donc, je regarderais d'abord les critères (1) et (2). Le meilleur code Ruby représente généralement un "meilleur" programme. Quel code a l'air mieux? Lequel exprime mieux l'intention? Qui serait plus facile à modifier si vous ajoutez/supprimez la logique? Cela dépend de votre problème, et c'est une question de goût, dans une certaine mesure.
Pour moi, dans votre exemple, la solution de hachage est meilleure. La solution de cas fournit plus de flexibilité, dont vous n'avez pas besoin dans ce cas (mais pourrait avoir besoin dans d'autres cas).
Cela ressemble à des choses étranges à comparer. Le cas est logique et le hachage est une structure de données. Avez-vous un exemple spécifique où vous essayez de décider lequel utiliser? Le contexte aidera les gens à fournir une réponse utile. – Greg
En règle générale, l'instruction return peut être (et est souvent) omise dans les méthodes ruby. Dans le cas de votre premier exemple, vous pouvez supprimer les instructions return et l'affectation à la variable 'result', en supposant que vous ne fassiez rien avec' result' autre que de le renvoyer. –
J'ai parfois utilisé l'approche de user94154, même si c'est un peu bizarre. Je ne pense pas que ce soit une question stupide. –