0Pricing
C# Academy · Lezione

Tipi e file partial

Suddivida un tipo tra più file con classi/struct partial e utilizzi metodi partial per collegare la logica personalizzata al codice generato.

Tipi e file partial è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 3 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 3 lezioni in totale.

Panoramica sui tipi partial

Obiettivo: suddividere in modo ordinato i tipi di grandi dimensioni.

  • partial class/struct: stesso namespace e stesso nome
  • Di solito distribuiti su più file
  • Metodi partial: hook facoltativi all'interno dei tipi partial

Parti di una partial class

Una partial class può essere dichiarata in più parti. Il compilatore le unisce in un unico tipo.

using System;

namespace Demo
{
  // Part 1: data
  public partial class Person
  {
    public string Name { get; private set; }
    public Person(string name) { Name = name; }
  }

  // Part 2: behavior
  public partial class Person
  {
    public string Greet() { return "Hi " + Name; }
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Demo.Person p = new Demo.Person("Ada");
    Console.WriteLine(p.Greet());
  }
}

Metodi partial

I metodi partial sono hook a tempo di compilazione: se non vengono implementati, la chiamata viene rimossa. In C# 6 devono essere void e private.

using System;

namespace Demo
{
  public partial class Processor
  {
    // Partial method: implicitly private, must return void in C# 6
    partial void OnProcessed(string item);

    public void Run(string item)
    {
      // do work...
      OnProcessed(item); // call hook (removed by compiler if not implemented)
    }
  }

  public partial class Processor
  {
    // Implementation lives in another part (often another file)
    partial void OnProcessed(string item)
    {
      Console.WriteLine("Processed: " + item);
    }
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Demo.Processor p = new Demo.Processor();
    p.Run("report");
  }
}

Quando utilizzare partial

Casi d'uso:

  • Codice del designer o codice generato in un file; modifiche sicure in un altro.
  • Tipi di grandi dimensioni suddivisi per funzionalità: dati e comportamento.
  • Hook facoltativi tramite metodi partial.

Partial struct

È possibile suddividere anche gli struct con partial; a tempo di compilazione il risultato è un unico tipo struct.

using System;

namespace Demo
{
  public partial struct Pair
  {
    public int A;
  }

  public partial struct Pair
  {
    public int B;
    public int Sum() { return A + B; }
  }
}

public class Program
{
  public static void Main(string[] args)
  {
    Demo.Pair p = new Demo.Pair();
    p.A = 2; p.B = 3;
    Console.WriteLine("Sum = " + p.Sum());
  }
}

Regole e suggerimenti per partial

Suggerimenti:

  • Tutte le parti devono utilizzare lo stesso namespace, lo stesso nome e lo stesso modificatore di accesso.
  • Mantenga ogni file focalizzato (generato o manuale).
  • In C# 6, i metodi partial sono void e private; li mantenga brevi.

Scopo di una partial class

Verifica rapida: qual è un uso pratico di una partial class in C# 6?

Riepilogo

Riepilogo: utilizzi partial per suddividere i tipi tra più file e aggiunga metodi partial per gli hook facoltativi. Mantenga le parti nello stesso namespace e con lo stesso nome, lasciando che sia il compilatore a unirle.

Domande Frequenti

La lezione «Tipi e file partial» è gratuita?

Sì — il testo completo di «Tipi e file partial» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 3 lezioni in totale.

Cosa imparerò in «Tipi e file partial»?

Suddivida un tipo tra più file con classi/struct partial e utilizzi metodi partial per collegare la logica personalizzata al codice generato. Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare C# Academy?

Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 3.

Quanto tempo richiede la lezione «Tipi e file partial»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione C# Academy?

Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. public/internal/protected/private (con nota su file)
  2. Namespace, direttive using e global usings (nota)
  3. Tipi e file partial
← Torna a C# Academy