• Juegos
  • Industria
  • Recursos
  • Comunidad
  • Aprendizaje
  • Asistencia
Desarrollo
Motor de Unity
Crea juegos 2D y 3D para cualquier plataforma
DescargarPlanes y precios
Monetización
Compra dentro de la aplicación (IAP)
Descubre y gestiona IAP en todas las tiendas
Mediación
Maximiza los ingresos y optimiza la monetización
Calidad de anuncios
Protege la experiencia del usuario de tu aplicación
Tapjoy
Construye lealtad de usuarios a largo plazo
Todos los productos de monetización
Adquisición de usuarios
Adquisición de usuarios
Hazte descubrir y adquiere usuarios móviles
Unity Vector AI
Conecta a los jugadores con los juegos adecuados
Publicidad en el dispositivo Aura
Alcanza a los usuarios en el dispositivo en el momento de mayor compromiso
Todos los productos de crecimiento
Casos de uso
Colaboración 3D
Construye y revisa proyectos 3D en tiempo real
Capacitación envolvente
Capacitación en entornos envolventes
Experiencias del cliente
Crea experiencias interactivas en 3D
Todas las soluciones de la industria
Industrias
Fabricación
Logra la excelencia operativa
Venta minorista
Transforma las experiencias en tienda en experiencias en línea
Industria automotriz
Eleva la innovación y las experiencias en el automóvil
Todas las industrias
Biblioteca técnica
Documentación
Manuales de usuario oficiales y referencias de API
Herramientas para desarrolladores
Versiones de lanzamiento y rastreador de problemas
Hoja de ruta
Revisar características próximas
Glosario
Biblioteca de términos técnicos
Información útil
Casos de estudio
Historias de éxito en el mundo real
Guías de mejores prácticas
Consejos y trucos de expertos
Todos los recursos
Novedades
Blog
Actualizaciones, información y consejos técnicos
Novedades
Noticias, historias y centro de prensa
Centro de la comunidad
Discusiones
Discute, resuelve problemas y conéctate
Eventos
Eventos globales y locales
Historias de la comunidad
Hecho con Unity
Presentando a los creadores de Unity
Transmisiones en vivo
Únete a desarrolladores, creadores e insiders
Premios Unity
Celebrando a los creadores de Unity en todo el mundo
Para todos los niveles
Unity Learn
Domina las habilidades de Unity de forma gratuita
Capacitación profesional
Mejora tu equipo con entrenadores de Unity
¿No tienes experiencia con Unity?
Primeros pasos
Pon en marcha tu aprendizaje
Rutas esenciales de Unity
¿No tienes experiencia con Unity? Comienza tu viaje
Guías prácticas
Consejos prácticos y mejores prácticas
Educación
Para estudiantes
Impulsa tu carrera
Para docentes
Potencia tu enseñanza
Licencia gratuita para fines educativos
Lleva el poder de Unity a tu institución
Certificaciones
Demuestra tu dominio de Unity
Opciones de soporte
Obtener ayuda
Ayudándote a tener éxito con Unity
Planes de éxito
Alcanza tus metas más rápido con soporte experto
PREGUNTAS FRECUENTES
Respuestas a preguntas comunes
Contáctanos
Conéctate con nuestro equipo
Planes y precios
Idioma
  • English
  • Deutsch
  • 日本語
  • Français
  • Português
  • 中文
  • Español
  • Русский
  • 한국어
Social
Moneda
Comprar
  • Productos
  • Unity Ads
  • Suscripción
  • Tienda de recursos de Unity
  • Distribuidores
Educación
  • Estudiantes
  • Instructores
  • Instituciones
  • Certificación
  • Learn
  • Programa de desarrollo de habilidades
Descargar
  • Unity Hub
  • Descargar archivo
  • Programa beta
Unity Labs
  • Laboratorios
  • Publicaciones
Recursos
  • Plataforma Learn
  • Comunidad
  • Documentación
  • Preguntas y respuestas Unity
  • PREGUNTAS FRECUENTES
  • Estado de servicios
  • Casos de estudio
  • Made with Unity
Unity
  • Nuestra empresa
  • Boletín
  • Blog
  • Eventos
  • Empleos
  • Ayuda
  • Prensa
  • Socios
  • Inversionistas
  • Afiliados
  • Seguridad
  • Impacto social
  • Inclusión y diversidad
  • Contacto
Copyright © 2025 Unity Technologies
  • Legal
  • Política de privacidad
  • Cookies
  • No quiero que se venda ni se comparta mi información personal

"Unity", los logotipos de Unity y otras marcas comerciales de Unity son marcas comerciales o marcas comerciales registradas de Unity Technologies o de sus empresas afiliadas en los Estados Unidos y el resto del mundo (más información aquí). Los demás nombres o marcas son marcas comerciales de sus respectivos propietarios.

Hero background image

Prácticas recomendadas de formato para la programación en C# en Unity

Para tu comodidad, tradujimos esta página mediante traducción automática. No podemos garantizar la precisión ni la confiabilidad del contenido traducido. Si tienes alguna duda sobre la precisión del contenido traducido, consulta la versión oficial en inglés de la página web.
Haz clic aquí.

Si bien puede que no haya una forma correcta de formatear tu código C#, acordar un estilo consistente en tu equipo puede resultar en una base de código más limpia, legible y escalable. Esta página ofrece consejos y consideraciones clave a tener en cuenta para tus clases, métodos y comentarios al crear tu propia guía de estilo.

Nota: Las recomendaciones compartidas aquí se basan en las proporcionadas por Microsoft. Las mejores reglas de guía de estilo de código son las que funcionan para las necesidades de tu equipo.

Puedes encontrar un ejemplo de guía de estilo de código aquí o descargar el e-book completo, Usa una guía de estilo de C# para un código de juego limpio y escalable (edición de Unity 6).

  • Formateando tu código
  • Propiedades
  • Propiedades con cuerpo de expresión
  • Propiedad autoimplementada
  • Serialización
  • Estilo de llaves o de sangría
  • Decide una sangría uniforme
  • No omitas llaves
  • Mantén las llaves para mayor claridad en declaraciones multilínea
  • Estandariza las declaraciones switch

Formateando tu código

Junto con la nomenclatura, el formato ayuda a reducir la conjetura y mejora la claridad del código. Al seguir una guía de estilo estandarizada, las revisiones de código se centran menos en cómo se ve el código y más en lo que hace.

Omitir, expandir o modificar estas reglas de ejemplo para adaptarlas a las necesidades de tu equipo.

En todos los casos, considera cómo tu equipo implementará cada regla de formato y luego haz que todos la apliquen de manera uniforme. Revisa el estilo de tu equipo para resolver cualquier discrepancia.

Considera cada una de las siguientes sugerencias de formato de código al configurar tu guía de estilo de desarrollo de Unity.

Propiedades

Una propiedad proporciona un mecanismo flexible para leer, escribir o calcular valores de clase. Las propiedades se comportan como si fueran variables miembro públicas, pero en realidad son métodos especiales llamados accesores. Cada propiedad tiene un método get y set para acceder a un campo privado, llamado campo de respaldo.

De esta manera, la propiedad encapsula los datos, ocultándolos de cambios no deseados por el usuario u objetos externos. El getter y el setter tienen su propio modificador de acceso, lo que permite que tu propiedad sea de lectura-escritura, solo lectura o solo escritura.

También puedes usar los accesores para validar o convertir los datos (por ejemplo, verificar que los datos se ajusten a tu formato preferido o cambiar un valor a una unidad particular).

La sintaxis para propiedades puede variar, por lo que tu guía de estilo debería definir cómo formatearlas. Usa estos consejos para mantener las propiedades consistentes en tu código.

Propiedades con cuerpo de expresión

Usa propiedades con cuerpo de expresión para propiedades de una sola línea y solo lectura (=>): Esto devuelve el campo de respaldo privado.

Propiedad autoimplementada

Todo lo demás usa el antiguo { get; set; } sintaxis: Si solo quieres exponer una propiedad pública sin especificar un campo de respaldo, usa la Propiedad Auto-Implementada. Aplica la sintaxis de expresión para los accesores de conjunto y obtención. Recuerda hacer que el setter sea privado si no quieres dar acceso de escritura. Alinea el cierre con la llave de apertura para bloques de código de varias líneas.

Serialización

La serialización de scripts es el proceso automático de transformar estructuras de datos o estados de objetos en un formato que Unity puede almacenar y reconstruir más tarde. Por razones de rendimiento, Unity maneja la serialización de manera diferente que en otros entornos de programación.

Los campos serializados aparecen en el Inspector, pero no puedes serializar campos estáticos, constantes o de solo lectura. Deben ser públicos o estar etiquetados con el atributo [SerializeField]. Unity solo serializa ciertos tipos de campos, así que consulta la página de documentación para el conjunto completo de reglas de serialización.

Observa algunas pautas básicas al trabajar con campos serializados:

  • Usa el [SerializeField] atributo: El atributo SerializeField puede trabajar con variables privadas o protegidas para hacer que aparezcan en el Inspector. Esto encapsula mejor los datos que marcar la variable pública y previene que un objeto externo sobrescriba sus valores.
  • Usa el atributo Range para establecer valores mínimos y máximos: El atributo [Range(min, max)] es útil si deseas limitar lo que el usuario puede asignar a un campo numérico. También representa convenientemente el campo como un control deslizante en el Inspector.
  • Agrupa datos en clases o estructuras serializables para limpiar el Inspector: Define una clase o estructura pública y márcala con el atributo [Serializable]. Define variables públicas para cada tipo que desees exponer en el Inspector.

Referencia esta clase serializable desde otra clase. Las variables resultantes aparecen dentro de unidades colapsables en el Inspector.

Clase serializable
UNA CLASE O ESTRUCTURA SERIALIZABLE PUEDE AYUDAR A ORGANIZAR EL INSPECTOR.

Estilo de llaves o de sangría

Hay dos estilos de sangrado comunes en C#:

  • El estilo Allman, también conocido como el estilo BSD (de BSD Unix), coloca las llaves de apertura en una nueva línea.
  • El estilo K&R, o "el verdadero estilo de llaves", mantiene la llave de apertura en la misma línea que el encabezado anterior.

También hay variaciones en estos estilos de sangrado. Los ejemplos en esta guía utilizan el estilo Allman de las Directrices de Diseño del Marco de Microsoft. Independientemente de cuál elijas como equipo, asegúrate de que todos sigan el mismo estilo de sangrado y de llaves.

Decide una sangría uniforme

La sangría es típicamente de dos o cuatro espacios. Haz que todos en tu equipo estén de acuerdo en una configuración en tus preferencias del Editor sin encender una guerra de llamas entre tabs y espacios. Ten en cuenta que Visual Studio ofrece la opción de convertir tabs en espacios.

En Visual Studio (Windows), navega a Herramientas > Opciones > Editor de Texto > C# > Tabs.

En Visual Studio para Mac, navega a Preferencias > Código Fuente > Código Fuente de C#. Selecciona el Estilo de Texto para ajustar la configuración.

Pestañas de C Sharp
AJUSTES DE PESTAÑAS EN VISUAL STUDIO PARA WINDOWS

No omitas llaves

No omitas las llaves, ni siquiera para declaraciones de una sola línea. Las llaves aumentan la consistencia, lo que hace que tu código sea más fácil de leer y mantener. En este ejemplo, las llaves separan claramente la acción, DoSomething, del bucle.

Si más tarde necesitas agregar una línea de Depuración o ejecutar DoSomethingElse, las llaves ya estarán en su lugar. Mantener la cláusula en una línea separada te permite agregar un punto de interrupción fácilmente.

Mantén las llaves para mayor claridad en declaraciones multilínea

No quites las llaves de las declaraciones multilineales anidadas. Eliminar llaves en este caso no generará un error, pero probablemente causará confusión. Aplica llaves por claridad, incluso si son opcionales. Las llaves también aseguran que las modificaciones, como agregar nueva lógica, se puedan hacer de manera segura sin necesidad de refactorizar la estructura circundante.

Estandariza las declaraciones switch

El formato puede variar, así que documenta las preferencias de tu equipo en tu guía de estilo y estandariza tus declaraciones de switch en consecuencia.

Aquí hay un ejemplo donde indentas las declaraciones de caso. Generalmente se recomienda incluir un caso por defecto también. Incluso si el caso por defecto no es necesario (por ejemplo, en casos donde todas las posibilidades están cubiertas), incluir uno asegura que el código esté preparado para manejar valores inesperados.

  • Espaciado horizontal
  • Agregar espacios
  • Espaciado después de una coma
  • Sin espaciado después de paréntesis
  • Sin espacio entre una función y paréntesis
  • Evita espacios dentro de corchetes
  • Espaciado antes de las condiciones de control de flujo
  • Espaciado con operadores de comparación
  • Consejos de legibilidad
  • Espaciado vertical y regiones
  • Formato de código en Visual Studio
  • Configura un archivo .editorconfig

Espaciado horizontal

Algo tan simple como el espaciado puede mejorar la apariencia de tu código en pantalla. Tus preferencias de formato personales pueden variar, pero prueba las siguientes sugerencias para mejorar la legibilidad.

Agregar espacios

Agrega espacios para disminuir la densidad del código.El espacio en blanco adicional puede dar una sensación de separación visual entre partes de una línea, mejorando la legibilidad.

Espaciado después de una coma

Use un solo espacio después de una coma entre los argumentos de la función.

Sin espaciado después de paréntesis

No agregue un espacio después del paréntesis y los argumentos de la función.

Sin espacio entre una función y paréntesis

No use espacios entre el nombre de la función y el paréntesis.

Evita espacios dentro de corchetes

En la medida de lo posible, evite espacios dentro de los corchetes.

Espaciado antes de las condiciones de control de flujo

Use un solo espacio antes de las condiciones de control de flujo y agregue un espacio entre el operador de comparación de flujo y los paréntesis.

Espaciado con operadores de comparación

Use un solo espacio antes y después de los operadores de comparación.

Consejos de legibilidad

Mantén las líneas cortas. Considera el espacio en blanco horizontal: Decide un ancho de línea estándar (80-120 caracteres). Divide una línea larga en declaraciones más pequeñas en lugar de dejar que se desborde.

Mantén la indentación/jerarquía: Indenta tu código para aumentar la legibilidad.

No uses alineación de columnas a menos que sea necesario para la legibilidad: Este tipo de espaciado alinea las variables, pero puede dificultar emparejar el tipo con el nombre.

La alineación de columnas, sin embargo, puede ser útil para expresiones a nivel de bits o estructuras con muchos datos. Solo ten en cuenta que puede crear más trabajo para ti mantener la alineación de columnas a medida que agregas más elementos. Algunos autoformateadores también pueden cambiar qué parte de la columna se alinea.

Espaciado vertical y regiones

También puedes usar el espaciado vertical a tu favor. Mantén las partes relacionadas del script juntas y utiliza los espacios en blanco a tu favor. Prueba estas sugerencias para organizar tu código de arriba hacia abajo:

  • Agrupa métodos dependientes y/o similares juntos: El código necesita ser lógico y coherente. Mantén los métodos que hacen lo mismo uno al lado del otro, para que alguien que lea tu lógica no tenga que saltar por el archivo.
  • Usa el espacio en blanco vertical a tu favor para separar partes distintas de tu clase: Por ejemplo, puedes agregar dos líneas en blanco entre:
  • Declaraciones de variables y métodos
  • Clases e Interfaces
  • bloques if-then-else (si ayuda a la legibilidad)

Mantén esto al mínimo y anota en tu guía de estilo donde sea aplicable.

Usando regiones en tu código

La directiva #region te permite colapsar y ocultar secciones de código en archivos C#, haciendo que archivos grandes sean más manejables y fáciles de leer.

Sin embargo, si sigues el consejo general para Clases de esta guía, el tamaño de tu clase debería ser manejable y la directiva #region superflua. Divide tu código en clases más pequeñas en lugar de ocultar bloques de código detrás de regiones. Tendrás menos inclinación a agregar una región si el archivo fuente es corto.

Nota: Muchos desarrolladores consideran que las regiones son olores de código o anti-patrones. Decidan como equipo de qué lado del debate se encuentran.

Formato de código en Visual Studio

No se desespere si estas reglas de formato parecen abrumadoras. Los IDE modernos hacen que sea eficiente configurarlas y hacerlas cumplir. Puede crear una plantilla de reglas de formato y luego convertir sus archivos de proyecto a la vez.

Para establecer reglas de formato para el editor de scripts:

  • En Visual Studio(Windows), navega a Herramientas > Opciones. Localiza Editor de Texto > C# > Estilo de Código Formato. Usa la configuración para modificar las opciones de General, Sangría, Nuevas Líneas, Espaciado y Ajuste.
  • En Visual Studio para Mac, selecciona Visual Studio > Preferencias, luego navega a Código Fuente > Formato de Código > código fuente de C#. Selecciona la Política en la parte superior. Luego establece tu espaciado y sangría en la pestaña Estilo de Texto. En la pestaña Formato C# , ajusta la Sangría, Nuevas Líneas, Espaciado y configuraciones de Ajuste.

Si en algún momento deseas forzar que tu archivo de script se ajuste a la guía de estilo:

  • En Visual Studio (Windows), ve a Editar > Avanzado > Formatear Documento (Ctrl + K, Ctrl + D combinación de teclas). Si solo deseas formatear espacios en blanco y alineación de tabulaciones, también puedes usar Ejecutar Limpieza de Código (Ctrl + K , Ctrl + E) en la parte inferior del editor.
  • En Visual Studio para Mac, ve a Editar > Formatear Documento (Ctrl + I tecla de acceso rápido)

En Windows, también puedes compartir la configuración de tu editor desde Herramientas > Importar y Exportar Configuraciones. Exporte un archivo con el formato de código C# de la guía de estilo y luego haga que cada miembro del equipo importe ese archivo.

Visual Studio facilita seguir la guía de estilo. El formateo se vuelve tan simple como usar una combinación de teclas.

Nota: Puedes configurar un archivo EditorConfig en lugar de importar y exportar configuraciones de Visual Studio. Hacer esto te permite compartir el formato más fácilmente entre diferentes IDEs, y tiene el beneficio adicional de funcionar con el control de versiones. Consulta las opciones de reglas de estilo de código .NET para más información.

Aunque esto no es específico para código limpio, asegúrate de revisar 10 maneras de acelerar tu flujo de trabajo de programación en Unity con Visual Studio. El código limpio es mucho más fácil de formatear y refactorizar si aplicas estos consejos de productividad.

Preferencias de C Sharp
LA VENTANA DE PREVISUALIZACIÓN MUESTRA SUS ELECCIONES DE GUÍA DE ESTILO.

Configura un archivo .editorconfig

Para configurar un archivo .editorconfig en Visual Studio Code, sigue estos pasos:

  • En el directorio raíz de tu proyecto, crea un nuevo archivo llamado .editorconfig.
  • Abre el archivo .editorconfig y agrega la configuración deseada.

Aquí hay un ejemplo de configuración para C#:

# archivo EditorConfig más alto

root = true

# finales de línea estilo Unix con un salto de línea al final de cada archivo

[*]

end_of_line = lf

insert_final_newline = true

# indentación de 4 espacios

[*.cs]

estilo_de_indentación = espacio

tamaño_de_indentación = 4

charset = utf-8

trim_trailing_whitespace = true

# Indentación con tabulaciones para Makefiles

[Makefile]

indent_style = tab

# Configuraciones específicas para archivos JSON

[*.json]

estilo_de_indentación = espacio

tamaño_de_indentación = 2

Obtenga más consejos sobre estilo de código

Aprende más sobre convenciones de nomenclatura aquí o consulta el libro electrónico completo. También puedes explorar nuestro ejemplo de guía de estilo de código detallada.