F#: laissez mutable vs ref

Tout d'abord, je reconnais la possibilité que cette question pourrait être un doublon; laissez-moi savoir.

Je suis curieux de ce que le général "meilleures pratiques" pour les situations où la mutabilité est souhaitée. F# semble offrir deux possibilités pour cela: le let mutable de liaison, qui semble fonctionner comme des variables dans "la plupart" des langues, et la cellule de référence (créé avec l' ref fonction) qui nécessite une référence explicite à utiliser.

Il y a quelques cas où l'on est "forcé" dans l'un ou de l'autre: .NET interop a tendance à utiliser des mutable avec <-, et dans les calculs de flux de travail, on doit utiliser ref avec :=. Si ces cas sont assez claires, mais je suis curieux de savoir quoi faire lors de la création de mon propre mutable variables en dehors de ces scénarios. Quels sont les avantages d'un style de ont sur les autres? (Peut-être un aperçu plus loin dans la mise en œuvre de l'aide.)

Merci!

InformationsquelleAutor J Cooper | 2010-07-10