Для создания проекта следует запустить Visual Studio. Пред вами откроется окно:
Замечание. В зависимости от версии Visual Studio и от того, как в данный момент настроена среда, вид экрана может немного отличаться. Здесь и далее мы приводим примеры с использованием Visual C# 2010 Express.
Рис. 5. Начальная страница.
Затем на начальной странице приложения необходимо нажать ссылку «Создать проект…» (см. рис.5) или в главном меню выбрать команду Файл – Создать проект…. После этого откроется диалоговое меню «Создать проект» рис.6.
Рис. 6. Диалоговое окно «Создать проект».
Далее следует выбрать тип создаваемого приложения – Консольное приложение. В строчке Имя следует ввести новое имя приложения Hello и нажать кнопку OK. Экран примет вид, изображенный на рис. 7.
Рис. 7. Рабочая область проекта Hello.
В правой части экрана располагается окно управления проектом Обозреватель решений.
Замечание. Если вы случайно закроете данное окно, то его можно включить командой Вид – Другие окна – Обозреватель решений. Посмотрите, какие еще окна могут быть подключены к вашему проекту.
В этом окне перечислены все ресурсы, входящие в проект:
1) Properties (Свойства), содержит файл AssemblyInfo.cs – информация о сборке. Компилятор в качестве результата своего выполнения создает сборку – файл с расширением exe, или dll, который содержит IL-код.
2) Ссылки на стандартные библиотеки System, System.Data, System.Xml и т.д.
3) Program.cs - исходный текст программы на языке C#.
В левой нижней части экрана располагается окно Список ошибок, которое во время отладки проекта позволит нам получать информацию о локализации и типе ошибок.
Основное пространство экрана занимает окно редактора, в котором располагается текст программы, созданный средой автоматически. Текст представляет собой каркас, в который программист будет добавлять нужный ему код и изменять его. При этом зарезервированные (ключевые) слова отображаются синим цветом, комментарии – зеленым, основной текст – черным. Текст структурирован. Щелкнув на знаке минус в первой колонке текста, мы скроем блок кода, щелкнув на знаке плюс – откроем.
Для того чтобы сохранить проект нужно в главном меню выполнить команду Файл – Сохранить все. Откроется диалоговое окно «Сохранить проект» рис. 8.
Рис. 8. Диалоговое окно «Сохранить проект».
Имя проекта вы определили на этапе его создания. При необходимости это имя можно изменить.
Расположение проекта зависит от установок, которые можно изменить через кнопку Обзор. Мы будем сохранять проекты на диск D в папку sharp.
Для того чтобы запустить приложение нужно нажать на кнопку Start () стандартной панели инструментов VS. В результате программа скомпилируется в IL-код и этот код будет передан CLR на выполнение. Программа запустится, и, так как в данный момент наш код не содержит никаких команд, тут же завершит свою работу. Визуально это будет выглядеть как быстро мелькнувший на экране черный прямоугольник.
Откройте папку, содержащую проект, и изучите ее структуру. На данном этапе особый интерес для нас будут представлять следующие файлы:
1. Hello.sln – основной файл, отвечающий за всё решение. Если необходимо открыть решение для работы, то нужно выбрать именно этот файл. Остальные файлы откроются автоматически.
Данный файл помечается пиктограммой .
2. Program.cs – файл, в котором содержится исходный код, написанный на языке С#. Именно с этим файлом мы и будем непосредственно работать.
Данный файл помечается пиктограммой .
3. Hello\bin\Debug\Hello.exe – файл, в котором содержатся сгенерированный IL-код проекта. Другими словами, этот файл и есть готовое приложение, которое может выполняться на любом компьютере, на котором установлена платформа .NET.
Данный файл помечается пиктограммой .
Теперь рассмотрим сам текст программы.
using System – это директива, которая разрешает использовать имена стандартных классов из пространства имен System непосредственно, без указания имени пространства, в котором они были определены. Так, например, если бы этой директивы не было, то нам пришлось писать бы System.Console.WriteLine (назначение данной команды мы рассмотрим позже). Конечно, писать полное пространство имен каждый раз очень неудобно. При указании директивы using можно писать просто имя, например, Console.WriteLine.
Для консольных программ ключевое слово namespace создает свое собственное пространство имен, которое по умолчанию называется именем проекта. В нашем случае пространство имен называется Hello. Однако программист вправе указать другое имя.
Каждое имя, которое встречается в программе, должно быть уникальным. В больших и сложных приложениях используются библиотеки разных производителей. В этом случае трудно избежать конфликта между используемыми в них именами. Пространства имен предоставляют простой механизм предотвращения конфликтов имен. Они создают разделы в глобальном пространстве имен.
С# – объектно-ориентированный язык, поэтому написанная на нем программа будет представлять собой совокупность взаимодействующих между собой классов. Автоматически был создан класс с именем Program. Данный класс содержит только один метод – метод Main(), который является точкой входа в программу. Это означает, что именно с данного метода начнется выполнение приложения. Каждая консольная программа на языке С# должна иметь метод Main().
Замечания. Перед объявлением типа возвращаемого значения void, который означает, что метод не возвращает значение, стоит ключевое слово static - это означает что метод Main() можно вызывать, не создавая экземпляр класса типа Program. После имени метода в круглых скобках записано string[] args – это означает, что в метод Main при запуске могут быть переданы некоторые параметры. На данном этапе передачу параметров мы проводить не будем, поэтому данный фрагмент кода (а именно string[] args) можно стереть.
Тело метода Main() ограничивают парные фигурные скобки. Добавим в тело метода следующий код:
Console.WriteLine("Hello!");
Здесь Console имя стандартного класса из пространства имен System, отвечающего за базовую систему ввода/вывода данных, т.е. клавиатуру и экран. Его метод WriteLine выводит на экран текст, заданный в кавычках.
Обратите внимание на то, как работает технология IntelliSense при вводе кода в текст программы рис.9 .
Рис. 9 . Технология IntelliSense
Уже в начале процесса ввода кода открывается контекстное меню, которое подсказывает все «знакомые» ей слова, начинающиеся на буку С. Когда будет введено словосочетания «Con», контекстное меню высветит слово Console. Если теперь вы нажмете на клавишу Enter, то данное слово автоматически вставится в текст программы.
Теперь поставьте точку и наберите букву W (см.рис.10). Контекстное меню будет не только показывать все методы и свойства, начинающиеся на букву W, но и приводить справочную информацию о том, за что отвечает тот или иной метод или свойство класса.
Рис. 10 . Получение справочной информации с использованием технологии IntelliSense
Если вы щелкните левой кнопкой мышки на имени метода WritelLine, то вы получите справочную информацию о данном методе, если дважды щелкните левой кнопкой мышки, то имя метода автоматически добавится в текст программы.
Для запуска программы вместо кнопки Start можно нажать клавишу F5 или выполнить команду Отладка – Начать отладку. Если код программы не содержит ошибок, то сообщение выведется в консольное окно, которое мелькнет и быстро закроется. Чтобы просмотреть сообщение в нормальном режиме, нужно нажать клавиши Ctrl+F5. В нашем случае откроется консольное окно, которое показано на рис.11.
Рис. 11. Окно консольного приложения.
Замечание. В более сложных проектах имеет смысл явно вставить в конец программы команду Console.Readline(), позволяющую подождать до тех пор, пока пользователь не нажмет на клавишу Enter. Данный вариант является более предпочтительным, потому что нажатие Ctrl+F5 приводит к запуску приложения с отключенным режимом отладки, который довольно часто бывает необходим для поиска ошибок.
Если код программы будет содержать ошибки, например, пропущена точка с запятой после команды вывода, то после нажатия клавиши F5 откроется диалоговое окно, в котором выведется сообщение о том, что обнаружена ошибка, и вопрос, продолжать ли работу дальше. Если вы ответите Yes, то будет выполнена предыдущая удачно скомпилированная версия программы (если такая компиляция уже была). Иначе процесс будет остановлен и появится окно ошибок Список ошибок см.рис.12.
Рис. 12. Отладка ошибок
|