Hay una razón que hace que sea prácticamente imposible usar fuentes distintas de monoespacio para la codificación, pero no se mencionó en otras respuestas: selecciones rectangulares .
Esta característica, a menudo no es muy útil y no es muy conocida cuando se trabaja con texto normal, es esencial para los desarrolladores. Puede imaginar una multitud de escenarios: eliminar //
de comentarios en varias líneas, agregar paréntesis u otros caracteres, etc. Esto es aún más valioso con el soporte avanzado de selecciones rectangulares, como en Visual Studio 2010, donde no solo puede seleccionar y eliminar texto, pero seleccionarlo y reemplazarlo.
Tomemos un ejemplo:
private IEnumerable<SELove> StackExchangeRocks()
{
var howILoveSEWebsites = new []
{
new SELove { SiteName = "Stack Overflow", MyReputation = 5269, MyRating = Rating.Outstanding, },
new SELove { SiteName = "Programmers", MyReputation = 16937, MyRating = Rating.Outstanding, },
new SELove { SiteName = "Super User", MyReputation = 650, MyRating = Rating.QuiteGood, },
new SELove { SiteName = "Server Fault", MyReputation = 489, MyRating = Rating.Good, },
// Initialize other websites here.
};
return howILoveSEWebsites.OrderByDescending(c => c.MyRating);
}
private class SELove
{
public string SiteName { get; set; }
public int MyReputation { get; set; }
public Rating MyRating { get; set; }
}
private enum Rating
{
Outstanding,
Good,
QuiteGood,
}
En este código heredado, quiero reemplazar la calificación del código por un método que cargará mi calificación de los sitios web de Stack Exchange, pudiendo tener siempre datos actualizados. Comencé a refactorizar la propiedad MyReputation
, y ahora quiero eliminar la inicialización, dentro del alcance. Imagina que no tengo cuatro, sino todos los sitios web de 84 SE.
Esto es lo que sucede cuando se usa Consolas , una fuente monoespaciada. Presiono Retroceso, y eso es todo, puedo pasar el tiempo restante para hacer algo realmente útil.

YaquílomismoconSegoeUI.¡Ay!