XML (extensible Markup Language) - це мова розмітки тексту. Розміткою є все, що не відноситься до змісту: структура документа, формат, вигляд і так далі. Розмітка здійснюється за допомогою тегів - елементів, які виділені кутовими дужками. Теги в XML завжди парні: відкриваючий тег записується перед фрагментом, що розмічається, а закриваючий - після нього. Закриваючий тег виглядає так само, як відкриваючий, але перед ним ставиться символ “\”, наприклад:
<summary> Клас для роботи з регулярними виразами </summary>
У тегах можуть бути присутніми атрибути - елементи вигляду ім'я = значення, що уточнюють опис елементу.
Мова XML широко поширена в Інтернеті завдяки її універсальності. Корпоративні застосування використовують XML як основний формат для обміну даними. Строго кажучи, XML є не мовою, а системою правил для опису мов. Багато технологій, що становлять .NET нерозривно пов'язані з XML, тому в просторі імен System. XML бібліотеки .NET описано множину класів для роботи з XML. Тут даються тільки загальні поняття мови XML.
Будь-який програмний продукт потрібно документувати. Відповідність версій документації і програми - серйозна проблема, яка вирішується в .NET вбудовуванням документації прямо в код програми за допомогою коментарів і XML-тегів.
Коментарі, що використовуються для побудови файлів документації, починаються з символів /// і розміщуються перед відповідним елементом програми. Усередині коментарів записуються теги, що відносяться до елементу, що коментується, - класу, методу, параметру методу і тому подібне. Теги перераховані в таблиці 14.6.
Таблиця 14.6
Теги документування
Тег
| Опис
|
<с>
| Форматування фрагменту коду
|
<соdе>
| Багаторядковий код (використовується в секції <ехаmрle>)
|
<ехаmрle>
| Приклад використання класу або методу
|
<ехceрtion>
| Виключення, що генерується класом
|
<include file=’файл’ path= ’путь[@name= ”ид”]’ ’ />
| Посилання на коментарі в іншому файлі, в якому знаходяться описи елементів початкового коду
|
<list>
| Перелічення у вигляді списку
|
<param>
| Опис параметра методу
|
<paramref>
| Посилання на параметр
|
<permission>
| Права доступу до елементу
|
<remarks>
| Докладний опис елементу (класу, методу і т. п.)
|
<returns>
| Повертанєме значення методу
|
<see cref=”элемент”>
| Посилання на елемент класу
|
<seealso ref=”элемент”>
| Посилання на документацію виду “див. також”
|
<summary>
| Короткий опис елементу (класу, методу і т.п.)
|
<value>
| Опис значення властивості
|
Приклади тегів:
///<summary> Функція обчислення синуса </summary>
///<param name="i"> Аргумент функції </рагаm>
///<seealso cref="System.Double"> double </seealso>
///<returns> Повертає величину синуса </returns>
///<remarks> Для обчислень використовується розкладання
/// у ряд Тейлора </remarks>
public double Sin( double i ) { ... }