Mentre legge l'articolo di Jon Skeet su fields vs properties, egli menziona che cambiare i campi in proprietà è un cambiamento radicale.Cambiare i campi in proprietà è un cambiamento di rottura in quali scenari?
Mi piacerebbe capire gli scenari comuni in cui questo cambiamento può causare interruzioni. Insieme allo scenario, se puoi, fornisci tutti i dettagli.
Per cominciare, i seguenti punti sono stati menzionati altrove:
Non è possibile modificare i campi di proprietà se si utilizza riflessione sulla classe. Questo è ovvio anche se non ho dettagli. La serializzazione è uno scenario in cui la riflessione viene utilizzata per iterare sull'oggetto e la modifica dei campi alle proprietà interromperà il serializzatore o modificherà l'output
Non è possibile legarsi facilmente ai campi. (Perché è questo? L'ho letto here)
???
EDIT: Robert ha una lista completa delle ragioni per scegliere properties over fields e spiega anche come il passaggio tra di loro può causare un cambiamento di rottura.