Saltar al contenido principal
Publicado el

partial en C#

Compartir:

Introducción

Al trabajar en proyectos grandes o colaborativos en C#, a menudo encontramos la necesidad de dividir la implementación de una clase o método en varios archivos para una mejor organización o colaboración. Aquí es donde entra en juego el modificador partial.

¿Qué es el modificador partial?

El modificador partial en C# se utiliza para dividir la definición de una clase, struct o interfaz en varios archivos. Cada archivo contiene una sección de la definición de la clase, y todas las partes se combinan cuando la aplicación se compila.

Ventajas del partial

  1. Organización: Permite una mejor organización del código, especialmente útil en clases muy extensas.
  2. Trabajo en Equipo: Facilita el trabajo colaborativo, ya que diferentes miembros del equipo pueden trabajar en distintas partes de la misma clase simultáneamente.
  3. Separación de Código Generado y Código Manual: Con frecuencia, en aplicaciones que utilizan diseñadores gráficos (como Windows Forms o WPF), el código se genera automáticamente. Con partial, podemos separar el código generado automáticamente del código escrito manualmente.
  4. Flexibilidad: Permite una mayor flexibilidad al estructurar el código, posibilitando una organización más lógica.

Limitaciones

  • Todos los archivos que contienen una parte de la clase partial deben compilarse juntos.
  • Si algún miembro de la clase se declara como private, permanecerá privado a esa parte específica de la clase. Los otros archivos partial de la misma clase no tendrán acceso a él.
  • No se pueden definir modificadores de acceso para métodos partial.

Ejemplo Práctico

El ejemplo a continuación demuestra el uso de partial en dos partes de una clase Persona:

using System;

namespace Base {
  class Partial {
    public void Run() {
      var persona = new Persona();
      persona.Informacion();

      /*
        Nombre: Nelson Silva
        Edad: 28
      */
    }
  }

  partial class Persona {
    private string primerNombre = "Nelson";
    partial void _Informacion();

    public void Informacion() {
      _Informacion();
    }
  }

  partial class Persona {
    private string apellido = "Silva";
    private int edad = 28;

    partial void _Informacion() {
      Console.WriteLine($"Nombre: {primerNombre} {apellido}");
      Console.WriteLine($"Edad: {edad}");
    }
  }
}

Conclusión

El modificador partial es una herramienta valiosa en C#, que ofrece una forma flexible de organizar y estructurar el código en proyectos más grandes o al colaborar en equipo. Esperamos que este artículo haya aclarado cómo y cuándo usar este modificador en tu código.

Happy coding!