web-dev-qa-db-fra.com

Injecter la même chose que réduire en rubis?

J'ai vu qu'ils étaient documentés ensemble ici . S'agit-il de la même chose? Pourquoi Ruby a-t-il tant d'alias (comme map/collect pour les tableaux)? Merci beaucoup.

106
Jacky

Oui, et cela s'appelle également fold dans de nombreux autres langages de programmation et en mathématiques. Ruby alias beaucoup pour être intuitif pour les programmeurs avec différents horizons. Si vous voulez utiliser #length sur un Array, vous le pouvez. Si vous souhaitez utiliser #size, c'est bien aussi!

155
Zach

Versions plus récentes de la documentation de Enumerable#reduce spécifiez-le explicitement:

Les méthodes inject et reduce sont des alias. Il n'y a aucun avantage de performance non plus.

3
axiac