Maison > développement back-end > Tutoriel C#.Net > Spécification C# 2.0 (3)

Spécification C# 2.0 (3)

黄舟
Libérer: 2017-01-03 10:16:12
original
1579 Les gens l'ont consulté

(Suite)

19.4 Types incomplets

Bien que ce soit une bonne pratique de programmation de conserver tout le code source d'un type dans un seul fichier, parfois, un type devient très volumineux et cela devient une limite irréaliste. De plus, les programmeurs utilisent souvent des générateurs de code source pour générer la structure initiale d'une application et modifier le code résultant. Malheureusement, lorsque le code source sera réémis dans le futur, les modifications existantes seront écrasées.

Les types incomplets (types partiels) permettent de diviser les classes, les structures et les interfaces en plusieurs parties et de les stocker dans différents fichiers sources, ce qui est plus pratique pour le développement et la maintenance. De plus, les types incomplets permettent de séparer les parties de certains types générées par la machine et celles écrites par l'utilisateur, ce qui facilite l'augmentation du code produit par l'outil.

Lors de la définition d'un type en plusieurs parties, vous pouvez utiliser un nouveau modificateur de type partiel. Vous trouverez ci-dessous un exemple de classe incomplète implémentée en deux parties. Les deux parties peuvent se trouver dans des fichiers sources différents, par exemple, car la première partie est générée automatiquement via un outil de mappage de base de données et la seconde partie est créée à la main.

public partial class Customer
{
private int id;
private string name;
private string address;
pivate List<Order> orders;
public Customer()
{
…
}
}
public partial class Customer
{
public void SubmitOrder(Order order)
{
orders.Add(order);
}
public bool HasOutstandingOrders()
{
return orders.Count>0;
}
}
Copier après la connexion

Lorsque les deux parties précédentes sont compilées ensemble, le code résultant est le même que la classe écrite comme une seule unité.

public class Customer
{
private int id;
private string name;
private string address;
pivate List<Order> orders;
public Customer()
{
…
}
public void SubmitOrder(Order order)
{
orders.Add(order);
}
public bool HasOutstandingOrders()
{
return orders.Count>0;
}
}
Copier après la connexion

Toutes les parties d'un type incomplet doivent être compilées ensemble afin que les parties puissent être fusionnées au moment de la compilation. En particulier, les types incomplets ne permettent pas d'étendre les types déjà compilés.

Ce qui précède est le contenu de la spécification C# 2.0 (3). Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (m.sbmmt.com) !


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal