с.OpenSunroof(true);
}
Чтобы на основе комментариев, задающих XML-код, сгенерировать соответствующий файл *.xml, при построении C#-программы с помощью csc.exe используется флаг /doc.
csc /doc:XmlCarDoc.xml *.cs
В Visual Studio 2005 можно указать имя файла с XML-документацией
Pис. 4.15. Генерирование файла XML-документации в Visual Studio 2005
Символы форматирования в XML-коде комментариев
Если открыть сгенерированный XML-файл, вы увидите, что элементы будут помечены такими символами, как "M", "T", "F" и т.п. Например:
‹member name = "Т:ХmlDоcCar.Car"›
‹summary›
Это тип Car, иллюстрирующий возможности XML-документирования.
‹/summary›
‹/member›
В табл. 4.2 описаны значения этих меток.
Таблица 4.2. Символы форматирования XML
Символ форматирования | Описание |
---|---|
E | Элемент обозначает событие |
F | Элемент представляет поле |
M | Элемент представляет метод (включая конструкторы и перегруженные операции) |
N | Элемент определяет пространство имен |
P | Элемент представляет свойство типа (включая индексы) |
T | Элемент представляет тип (например, класс, интерфейс, структуру, перечень, делегат) |
Трансформация XML-кода комментариев
Предыдущие версии Visual Studio 2005 (в частности. Visual Studio .NET 2003) предлагали очень полезный инструмент, позволяющий преобразовать файлы с XML-кодом документации в систему HTML-справки. К сожалению, Visual Studio 2005 не предлагает такой утилиты, оставляя пользователя "один на один" с XML-документом. Если вы имеете опыт использования XML-трансформаций, то, конечно, способны вручную создать подходящие таблицы стилей.
Более простым вариантом является использование инструментов сторонних производителей, которые позволяют переводить XML-код в самые разные форматы. Например, приложение NDoc, уже упоминавшееся в главе 2, позволяет генерировать документацию в нескольких различных форматах. Напомним, что информацию о приложении NDoc можно найти на страницах http://ndoc.sourceforge.net.
Исходный код. Проект XmlDocCar размещен в подкаталоге, соответствующем главе 4.
Резюме
Если вы изучаете .NET, имея опыт работы с любым другим объектно-ориентированным языком программирования, то материал этой главы обеспечит сравнение возможностей используемого вами языка с возможностями языка C#. При отсутствии такого опыта многие представленные в этой главе понятия могут казаться непривычными. Но это не страшно, поскольку по мере освоения оставшегося материала книги вы будете иметь возможность закрепить представленные здесь понятия.
Эта глава началась с обсуждения принципов ООП: инкапсуляции, наследования и полиморфизма. Сервис инкапсуляции можно обеспечить с помощью традиционных методов чтения/модификации, свойств типа или открытых полей, доступных только для чтения. Наследование в C# реализуется еще проще, поскольку этот язык не имеет для наследования специального ключевого слова, а предлагает использовать операцию, обозначаемую двоеточием. Наконец, для поддержки полиморфизма в C# предлагается использовать ключевые слова abstract, virtual, override и new.
ГЛАВА 5. Цикл существования объектов
В предыдущей главе мы потратили достаточно много времени на то, чтобы научиться строить пользовательские типы класса в C#. В этой главе мы выясним, как среда CLR управляет уже размешенными объектами с помощью процесса, который называется
Выяснив основные детали процесса сборки мусора, вы узнаете, как взаимодействовать со сборщиком мусора, используя для этого тип класса System.GC, Наконец, мы рассмотрим виртуальный метод System.Object.Finalize() и интерфейс IDisposable, которые можно использовать для того, чтобы создавать типы самостоятельно освобождающие в нужный момент свои внутренние неуправляемые ресурсы. Изучив материал этой главы, вы сможете понять, как среда CLR управляет объектами .NET.
Классы, объекты и ссылки