Основы программирования на C#

Консольный проект


У себя на компьютере я открыл установленную лицензионную версию Visual Studio .Net 2003, выбрал из предложенного меню - создание нового проекта на C#, установил вид проекта - консольное приложение, дал имя проекту - ConsoleHello, указал, где будет храниться проект. Как выглядит задание этих установок, показано на рис. 2.1.


Рис. 2.1.  Окно создания нового проекта

Если принять эти установки, то компилятор создаст решение, имя которого совпадает с именем проекта. На рис. 2.2 показано, как выглядит это решение в среде разработки:


Рис. 2.2.  Среда разработки и консольное приложение, построенное по умолчанию

Интегрированная среда разработки IDE (Integrated Development Envirionment) Visual Studio является многооконной, настраиваемой, обладает большим набором возможностей. Внешний вид ее достаточно традиционен, хотя здесь есть новые возможности; я не буду заниматься ее описанием, полагаясь на опыт читателя и справочную систему. Обращаю внимание лишь на три окна, из тех, что показаны на рис. 2.2. В окне Solution Explorer представлена структура построенного решения. В окне Properties можно увидеть свойства выбранного элемента решения. В окне документов отображается выбранный документ, в данном случае, программный код класса проекта - ConsoleHello.Class1. Заметьте, в этом окне можно отображать и другие документы, список которых показан в верхней части окна.

Построенное решение содержит, естественно, единственный заданный нами проект - ConsoleHello. Наш проект, как показано на рис. 2.2, включает в себя папку со ссылками на системные пространства имен из библиотеки FCL, файл со значком приложения и два файла с уточнением cs. Файл AssemblyInfo содержит информацию, используемую в сборке, а файл со стандартным именем Class1 является построенным по умолчанию классом, который задает точку входа - процедуру Main, содержащую для данного типа проекта только комментарий.

Заметьте, класс проекта погружен в пространство имен, имеющее по умолчанию то же имя, что и решение, и проект. Итак, при создании нового проекта автоматически создается достаточно сложная вложенная структура - решение, содержащее проект, содержащий пространство имен, содержащее класс, содержащий точку входа. Для простых решений такая структурированность представляется избыточной, но для сложных - она осмысленна и полезна.

Помимо понимания структуры решения, стоит также разобраться в трех важных элементах, включенных в начальный проект - предложение using, тэги документации в комментариях и атрибуты.

Пространству имен может предшествовать одно или несколько предложений using, где после ключевого слова следует название пространства имен - из библиотеки FCL или из проектов, связанных с текущим проектом. В данном случае задается пространство имен System - основное пространство имен библиотеки FCL. Предложение using NameA облегчает запись при использовании классов, входящих в пространство NameA, поскольку в этом случае не требуется каждый раз задавать полное имя класса с указанием имени пространства, содержащего этот класс. Чуть позже мы увидим это на примере работы с классом Console пространства System. Заметьте, полное имя может потребоваться, если в нескольких используемых пространствах имен имеются классы с одинаковыми именами.

Все языки допускают комментарии. В C#, как и в С++, допускаются однострочные и многострочные комментарии. Первые начинаются с двух символов косой черты. Весь текст до конца строки, следующий за этой парой символов, (например, "//любой текст") воспринимается как комментарий, не влияющий на выполнение программного кода. Началом многострочного комментария является пара символов /*, а концом - */. Заметьте, тело процедуры Main содержит три однострочных комментария.

Здесь же, в проекте, построенном по умолчанию, мы встречаемся с еще одной весьма важной новинкой C# - XML-тегами, формально являющимися частью комментария. Отметим, что описанию класса Class1 и описанию метода Main предшествует заданный в строчном комментарии XML-тег <summary>. Этот тэг распознается специальным инструментарием, строящим XML-отчет проекта. Идея самодокументируемых программных проектов, у которых документация является неотъемлемой частью, является важной составляющей стиля компонентного надежного программирования на C#. Мы рассмотрим реализацию этой идеи в свое время более подробно, но уже с первых шагов будем использовать теги документирования и строить XML-отчеты. Заметьте, кроме тега <summary> возможны и другие тэги, включаемые в отчеты. Некоторые теги добавляются почти автоматически. Если в нужном месте (перед объявлением класса, метода) набрать подряд три символа косой черты, то автоматически вставится тэг документирования, так что останется только дополнить его соответствующей информацией.



Содержание раздела