Estilo de código

ReSharper le ayuda a mantener un estilo de código consistente a través de todo su código. Los ajustes de estilo predeterminados están basados en convenciones y mejores prácticas ampliamente aceptadas, pero si sus preferencias personales o los estándares de su empresa son distintos, puede configurarlos globalmente o por solución y compartir los ajustes con su equipo.

Sus preferencias de estilo de código se tienen en cuenta cuando ReSharper sugiere nombres de símbolos en la finalización de código, genera nuevos miembros, aplica plantillas de código y realiza refactorizaciones.

Las violaciones de estilo de código se detectan con inspecciones de código y se pueden corregir con arreglos rápidos o limpieza de código.

Aplicación de limpieza de código para aplicar ajustes de estilo de código

Limpieza de código

La limpieza de código es una funcionalidad que le ayuda a eliminar instantáneamente las violaciones al estilo de código en uno o más archivos, un proyecto o en la solución completa, todo con un único acceso directo: Ctrl+E, C.

Existen dos perfiles predeterminados: Full Cleanup (que se aplica a todos los ajustes de estilo de código excepto al estilo de nomenclatura) y Reformat Code (que solo se aplica a sus reglas de formateo), y ambos se pueden complementar con sus propios perfiles personalizados específicos para tareas.

Reformateo del código actualmente seleccionado

Formateo de código

ReSharper puede reformatear un bloque de código arbitrario seleccionado, todo el código del archivo actual, todos los archivos de un directorio o incluso la totalidad del proyecto o solución, de acuerdo con sus preferencias. ReSharper ofrece diferentes opciones de formateo para todos los lenguajes compatibles. El reformateo afecta la disposición de las llaves, las líneas en blanco, el ajuste de líneas y los saltos de línea, los espacios en distintos contextos, la sangría, la alineación de múltiples construcciones y muchas otras opciones que puede ajustar al detalle en el cuadro de diálogo ReSharper Options.

Para acceder a la configuración contextual de las reglas de formateo, presione Alt+Intro sobre el código seleccionado que desea formatear. Elija Format Selection | Configure en la lista de acciones para ver todas las reglas de formateo que afectan al código.

También puede usar la limpieza de código para reformatear el código.

Sustitución de un tipo explícito con la palabra clave "var"

Escritura implícita/explícita

El uso de variables locales escritas implícitamente (palabra clave var) a partir de C# 3.0 se ha popularizado gracias a la mayor legibilidad del código resultante. De forma predeterminada, ReSharper también favorece el uso de la palabra clave var.

Sin embargo, puede cambiar sus preferencias y optar por el uso de tipos explícitos.

También puede usar la limpieza de código para implementar sus preferencias de escritura implícita/explícita.

Use el arreglo rápido de propiedad autoimplementada

Uso de propiedades autoimplementadas

Las propiedades autoimplementadas (también conocidas como autopropiedades) permiten declarar de forma más simple propiedades de tipo que no tienen lógica adicional. De forma predeterminada, ReSharper favorece el uso de propiedades autoimplementadas siempre que sea posible, pero este comportamiento es configurable.

Puede convertir propiedades con campos de respaldo en propiedades autoimplementadas con un arreglo rápido o con la limpieza de código.

Arreglo rápido para convertir un campo en solo lectura

Estilos para modificadores C#

Los modificadores de tipos y miembros de tipos C# se pueden escribir en cualquier orden. Sin embargo, ordenarlos de forma similar a través de todo su código es una buena práctica que mejora la legibilidad del código. ReSharper le ayuda a definir el orden deseado, buscar modificadores no ordenados y ordenarlos automáticamente.

Además, ReSharper le ayuda a implementar sus preferencias de usar o no usar explícitamente los modificadores private e internal.

A menudo es razonable usar el modificador readonly para campos asignados en la declaración o en un constructor y que solo tienen usos de lectura. De forma predeterminada, ReSharper le sugiere pasar un campo a solo lectura si se cumplen las condiciones recién descritas.

Todas las preferencias para modificadores son configurables y puede aplicarlas con arreglos rápidos y limpieza de código.

Eliminación de código redundante en el ámbito deseado

Eliminación de redundancias de código (solo en C#)

ReSharper ofrece docenas de inspecciones de código para código redundante.

La mayoría de estas redundancias pueden limpiarse sin la interacción del usuario, ya sea con un arreglo dentro del ámbito o con la limpieza de código.

Al mover redundancias de código, ReSharper tiene en cuenta todas las demás configuraciones de estilo de código. Si se definen ciertas construcciones de código como no redundantes según los ajustes de estilo de código, se dejarán intactas.

Configuración de estilo de nomenclatura extendida

Estilo de nomenclatura

ReSharper le permite definir ajustes de nomenclatura personalizados para distintos lenguajes y símbolos, incluidos tipos, espacios de nombres, interfaces, parámetros, propiedades y eventos de métodos, campos estáticos y de instancias, etc.

Para cada tipo de símbolo, podrá configurar una de cinco opciones de uso de mayúsculas/minúsculas, prefijos y sufijos, variaciones para diferentes permisos de acceso, abreviaciones a preservar y otras opciones.

Todas las violaciones del estilo de nomenclatura se resaltan en el editor y se puede corregir fácilmente.

Además de esto, puede explorar (y corregir rápidamente) todas las violaciones del estilo de nomenclatura en su solución completa (o en un ámbito más reducido) en la ventana de Inspection Results usando la funcionalidad Find Code Issues.

Ajuste del estilo para optimizar directivas "using"

Estilo de importación de espacio de nombres

Para que su código sea más legible, puede eliminar las directivas "using" redundantes y/o acortar las referencias calificadas de sus archivos de código C# y VB.NET. Además, hay distintos enfoques para importar espacios de nombres: puede bien añadir directivas using/import o bien usar nombres de tipo totalmente calificados, puede colocar las directivas sobre el archivo o dentro del espacio de nombres, etc.

Con ReSharper, puede detectar y eliminar rápidamente las importaciones redundantes directamente en el editor o puede usar la limpieza de código, que le puede ayudar además a ordenar alfabéticamente las directivas requeridas y ajustarlas a una región.

Uso de palabra clave de tipo integrado C# en vez de nombres de tipo CLR

Estilo de referencia para tipos de C# integrados

Las palabras claves de tipos C# y los nombres de tipo .NET Framework (CLR) son intercambiables por tipos C# integrados. Si prefiere comprometerse con uno u otro estilo para los nombres de tipo integrados, ReSharper puede ayudarle a mantener su preferencia.

La preferencia es configurable y también puede implementarla con la limpieza de código.

Separación automática de múltiples atributos C#

Estilos para atributos C#

Los atributos múltiples en C# se pueden escribir de distintas formas: puede unir varios atributos dentro de la misma sección definida por corchetes o usar varias secciones de distintos atributos. ReSharper permite especificar un estilo para atributos múltiples e implementar este estilo en el ámbito deseado:

ReSharper también proporciona múltiples reglas de formateo para atributos y permite aplicar todas las preferencias de estilo para atributos en un modo por lotes con la limpieza de código.

Eliminación de calificadores de miembros redundantes

Estilos para calificadores de miembros redundantes

En C# puede calificar miembros de instancias con la palabra clave this, y los miembros estáticos se pueden calificar con un nombre de tipo o un nombre de tipo base. Estos calificadores le ayudan a eliminar las ambigüedades de los miembros ocultos por variables locales o parámetros de métodos. En todos los demás casos, estos modificadores son opcionales, y puede decidir si usarlos o no. De forma predeterminada, ReSharper trata a todos los calificadores de miembros opcionales como redundantes y sugiere su eliminación.

Si prefiere usar calificadores opcionales, puede configurar los ajuste correspondientes de estilo de código. Por ejemplo, podría preferir calificar los métodos estáticos con el tipo donde se declaran.

Eliminación de paréntesis redundantes

Estilos para paréntesis opcionales

En muchos casos, los paréntesis en las expresiones son opcionales. A veces ayudan a aclarar la precedencia de los operadores (p.ej. if ((a & b) | c)), sin embargo, a veces no ayudan en absoluto y solo añaden código muerto (p.ej.var d = a + (b + c);). ReSharper le ayuda a definir dónde son útiles los paréntesis adicionales, y luego bien limpiar los paréntesis redundantes o bien añadir automáticamente paréntesis aclarativos para mostrar precedencias no obvias de operadores.

Distribución de miembros de tipos

Distribución de archivo y tipo (sólo C#)

En código C#, ReSharper puede reordenar automáticamente los miembros de archivos y tipos de su código. Los miembros se ordenarán, agruparán, encapsularán a regiones específicas, etc. según su tipo y modificadores de acceso. ReSharper ofrece dos patrones de distribución predeterminados (conjuntos de reglas de reordenamiento) y un editor visual inteligente.

Nota acerca de los accesos directos

Todos los acceso directo de teclado de esta página están disponibles en el mapa de teclas Visual Studio predeterminado de ReSharper. Para más información sobre los dos mapas de teclas de ReSharper, consulte la documentación de ReSharper.