Размер шрифта:
Знакомство со средой разработки Microsoft Visual Studio.NET. Структура программы на C#. Основы языка C#
Play

Знакомство со средой разработки Microsoft Visual Studio.NET. Структура программы на C#. Основы языка C#

Microsoft Visual Studio .NET - это интегрированная среда разработки для создания, документирования, запуска и отладки программ, написанных на языках . NET .

Эта среда разработки является открытой языковой средой. Наряду с языками программирования, изначально включенными в среду - C ++, C#, J#, Visual Basic, - в нее могут добавляться любые языки программирования, компиляторы которых создаются сторонними разработчиками. Необходимым условием для включения языков в среду Visual Studio .NET является использование единого каркаса – платформы Framework.Net.

Платформа Framework.NET позволяет:

  • легко использовать компоненты, разработанных на различных языках;
  • разрабатывать единое приложение из нескольких частей на разных языках;

Для разработки приложений в Visual Studio. NET используются проекты.

Проект ( Project ) - это основная единица , с которой имеет дело разработчик. Сначала он должен выбрать тип проекта, после чего Visual Studio создает каркас проекта в соответствии с выбранным типом.

Проект состоит из классов, собранных в одном или нескольких пространствах имен. Пространства имен (Namespaces) позволяют структурировать проекты, содержащие большое число классов , объединяя в одну группу близкие классы.

Несколько проектов могут объединяться в решение (Solution), которое также может включать ресурсы, необходимые этим проектам.

С точки зрения разработчика конечным результатом его работы, получаемым после компиляции исходного программного кода, является решение, а с точки зрения CLR (Common Language Runtime - общеязыковой среды исполнения) – сборка (assembly), содержащая PE файл , т.е. модуль в формате исполняемого файла PE ( Portable Executable) для 32-разрядной ОС Windows либо DLL ( Dynamic Link Library ) файл .

Visual Studio. Net предлагает большое разнообразие возможных типов проектов. Для ознакомления с основами языка С# в основном будут использованы консольные приложения без привлечения привычных в Windows возможностей пользовательского интерфейса.

В C# нет глобальных функций, поэтому по умолчанию при создании консольного приложения объявляется класс Program , который содержит функцию static Main() , служащую начальной точкой выполнения программы. Функция Main может быть объявлена без параметров или с параметром, представляющий собой массив строк.

Также программа на C# может содержать комментарии и атрибуты.

В C# используются однострочные и многострочные комментарии. Однострочный комментарий начинается с пары символов " // ", и весь текст до конца строки является комментарием. Многострочный комментарий начинается с пары символов /* и заканчивается */ .

Атрибут - средство добавления декларативной информации к элементам программного кода. Назначение атрибутов: организация взаимодействия между программными модулями, дополнительная информация об условиях выполнения кода, управление сериализацией (т.е. правила сохранения информации), отладка , и др. Атрибуты могут быть как стандартными, так и заданными пользователем. Стандартные атрибуты используются CLR и влияют на то, как будет выполняться проект. Атрибут размещается в скобках " [] ".

Типы данных C#.

Стандарт языка C++ включает следующий набор фундаментальных типов.

  • Логический тип ( bool ).
  • Символьный тип ( char ).
  • Целые типы. Они могут отличаться размером: short, int, long , а также могут быть знаковыми ( signed ) или беззнаковыми ( unsigned ).
  • Типы с плавающей точкой. Они также могут отличаться размерами: float , double и long double .

Тип void указывает на отсутствие информации.

К конструируемым типам относятся следующие:

  • Указатели (например, char* ).
  • Ссылки (например, char& ).
  • Массивы (например, char[] ).

Также язык позволяет разработчику конструировать собственные типы:

  • Перечислимые типы ( enum ).
  • Структуры ( struct ).
  • Классы.

В языке C# все типы можно рассматривать и под другим ракурсом, разделив их на четыре категории:

  • Типы-значения ( value ).
  • Ссылочные ( reference ).
  • Указатели ( pointer ).
  • Тип void .

Для ссылочного типа значение задает ссылку на область памяти в "куче" ( heap ), где расположен соответствующий объект . Для типа-значения значением являются собственно данные, а память для них выделяется в стеке.

Логический , арифметический, структуры, перечисление относятся типам-значениям. Массивы, строки и классы относятся к ссылочным типам.

И ссылочные, и обычные типы являются производными от базового класса object . В тех случаях, когда обычный тип должен вести себя как объект , создается оболочка ( wrapper ), которую можно рассматривать как ссылочный объект , помещенный в кучу, и в нее копируется значение переменной обычного типа. Оболочка автоматически помечается таким образом, что система знает, какое значение она содержит. Этот процесс назывется упаковкой ( boxing ), а обратный процесс - распаковкой ( unboxing ).

Упаковка происходит автоматически, для этого нужно только присвоить значение обычного типа переменной типа object . Упаковка и распаковка позволяют обрабатывать любой тип как объект . Например, в выражении

целое число 7 упаковывается путем вызова функции Int32.ToString() .

Массивы в C# могут быть многомерными ( multidimensional ) или невыровненными (jagged). Более сложные структуры данных такие, как стек и хеш-таблица определены в пространстве имен System.Collections .

Выражения и операторы C#.

Выражения строятся из операндов - констант, переменных, функций, - объединенных знаками операций и скобками. При вычислении выражения определяется его значение и тип.

В таблице ниже приведен список операций C#.

Имя и тип переменной задаются при ее объявлении и остаются неизменными в течение всего времени ее жизни. Особенностью языка C# является требование обязательной инициализации переменной до начала ее использования. Попытка использовать неинициализированную переменную приводит к ошибкам, обнаруживаемым еще на этапе компиляции.

По используемым выражениям и операторам C# похож на C++. Так в программах на C# используются такие операторы как:

  • Оператор присваивания ( = )
  • Составной оператор ( )
  • Операторы выбора: if-else и switch
  • Операторы цикла: for , while , оператор
  • Операторы break и continue
  • Оператор return
  • Оператор перехода goto

Кроме того, введены несколько новых инструкций. Например, оператор foreach позволяет получить доступ ко всем элементам массива или коллекции поочередно, в порядке возрастания индексов. Его синтаксис :

В C# процедуры и функции существуют только как методы некоторого класса, они не определены вне класса. Роль библиотек процедур и функций выполняют библиотеки классов. Библиотека классов Framework Class Library ( FCL ), доступная в языке C#, существенно расширяет возможности языка.

📎📎📎📎📎📎📎📎📎📎