Знакомство со средой разработки Microsoft Visual Studio.NET. Структура программы на C#. Основы языка C#
Классы и методы в C#.
В Visual Studio.Net, и в C# в частности, любая программная система рассматривается как совокупность классов, объединенных в проекты, пространства имен, решения.
Описание класса имеет следующий синтаксис:
[атрибуты][модификаторы]class имя_класса[:список_родителей] {тело_класса}
В теле класса могут быть объявлены:
- константы;
- поля;
- конструкторы и деструкторы;
- методы;
- события;
- делегаты;
- классы (структуры, интерфейсы, перечисления).
Поля класса синтаксически являются обычными переменными (объектами) языка. Их описание удовлетворяет обычным правилам объявления переменных. Поля характеризуют свойства объектов класса.
Методы класса синтаксически являются обычными процедурами и функциями языка. Методы содержат описания операций, доступных над объектами класса. Методы, называемые свойствами явлются специальной синтаксической конструкцией, предназначенной для обеспечения эффективной работы с классами.
Конструктор представляет собой специальный метод класса, позволяющий создавать объекты класса. Его имя должно совпадать с именем класса. Если разработчик не определяет конструктор класса, то к классу автоматически добавляется конструктор по умолчанию - конструктор без аргументов.
Делегат в C# представляет собой описание специального случая класса и задает определение функционального типа (класса) данных. Экземплярами класса являются функции. Каждый делегат описывает множество функций с заданной сигнатурой. Каждая функция (метод), сигнатура которого совпадает с сигнатурой делегата, может рассматриваться как экземпляр класса, заданного делегатом. Синтаксис объявления делегата имеет следующий вид:
[<спецификатор доступа>] delegate <тип результата> <имя класса> (<список аргументов>);
Порядок выполнения работы
Для практического изучения примеров в данной лабораторной работе необходимо наличие установленного пакета Microsoft Visual Studio (версии не ранее 2003). В зависимости от установленной версии возможны несущественные отличия в интерфейсе среды при создании и работе с проектом консольного приложения.
- Создание проекта консольного приложения.
-
Первый шаг при разработке любого приложения - создание проекта. Для этого через разделы меню: File > New Gt Project запускается панель создания нового проекта следующего вида:
- Из списка предлагаемых шаблонов необходимо выбрать проект консольного приложения (Console Application).
-
После создания проекта должно появиться следующее окно, содержащее текст программы Program.cs на языке C#:
В данной программе объявление using System дает возможность ссылаться на классы, которые находятся в пространстве имен System, так что их можно использовать, не добавляя "System." перед именем типа.
Пространство имен System содержит много полезных классов. Одним из них является и класс Console, который используется при создании консольных приложений.
Класс проекта - Program размещен в пространстве имен, имеющем по умолчанию то же самое имя ( HelloWorldDemo ), что и решение, содержащее в данном примере единственный проект.
Поскольку в C# нет глобальных функций, поэтому в данном примере объявляется класс Program, который содержит функцию static Main(), служащую начальной точкой выполнения программы. Функция Main может быть объявлена без параметров или с параметром, представляющий собой массив строк. Так как функция Main является точкой входа, она должна быть статической ( static ) функцией, т.е. она не связана с конкретным объектом класса, в котором объявлена.
-
- Добавим внутри функции Main следующую строку:которая использует метод WriteLine класса Console для вывода строки "Hello world!".
Console.WriteLine("Hello world!");
- Компиляция проекта. Для этого можно использовать либо меню ( Build > Build Имя проекта ) или сочетание клавиш <Shift+F6>. При наличии сообщений об ошибках необходимо их исправить и скомпилировать проект снова.
- Запуск приложения. Для можно использовать либо меню ( Debug > Start Without Debugging ) или сочетание клавиш <Ctrl+F5>. В результате получим следующее консольное окно:
- Усложним приложение. Для этого добавим в функцию Main следующий код для вывода в консольное окно содержимого массива целых чисел:После повторения шагов 3-4 получим следующее окно:
static void Main(string[] args) { int[] ArInt = { 0, 9, 1, 8, 2, 7, 3, 6, 4, 5 }; Console.WriteLine("Array contains elements:"); foreach (int item in ArInt) { Console.Write("{0} ", item); } Console.WriteLine(""); }
Контрольное задание. Разработка консольного приложения для вычисления корней квадратного уравнения
Требуется разработать приложение, которое по заданным значениям коэффициентов a,b и c квадратного уравнения (значения вводятся с клавиатуры пользователем) вычисляет и отображает на экране корни уравнения.
Для данного приложения потребуются следующие методы:
- string Console.ReadLine() - чтение строки символов из входного потока.
- double Convert.ToDouble(string) - преобразование строки символов в число с плавающей запятой двойной точности.
- double Math.Sqrt(double) - извлечение квадратного корня числа.