Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык C# и основы платформы .NET.docx
Скачиваний:
36
Добавлен:
11.05.2015
Размер:
178.68 Кб
Скачать

1.2. Версии платформы .Net

Компанией Microsoftбыло выпущено несколько версий платформы .NET. В начале 2002 года вышла первая официальная версия .NETFramework. Затем, весной 2003 года была опубликована версия 1.1 – пакет обновлений для версии 1.0. Ноябрь 2005 года ознаменовался выпуском версии 2.0, содержащей обновлённую CLR с поддержкой универсальных шаблонов (generics). В синтаксис языков C# и VB.NET были внесены изменения для поддержки шаблонов, улучшены технологии ASP.NET и ADO.NET. В ноябре 2006 года вместе с выпуском операционной системыWindowsVistaвышла третья версия платформы .NET, которая содержала технологииWindowsPresentationFoundation,WindowsCommunicationFoundation,WorkflowFoundation. В ноябре 2007 года вышла платформа .NET 3.5, основными особенностями которой являются реализация технологии LINQ и новые компиляторы для C# и VB.NET. В августе 2008 года опубликован пакет обновлений для версии 3.5. В апреле 2010 года была выпущена четвёртая версия платформы .NET, которая содержит переработанную CLR и интегрирует множество новых технологий, существовавших ранее в виде отдельных проектов (например,ParallelTaskLibrary,DynamicLanguageRuntime, ASP.NET MVC). Платформа .NET 4.5 доступна с августа 2012 года. Эта версия предлагает набор улучшений дляCLRи новые компиляторы с поддержкой средств асинхронного программирования. Табл. 1 поясняет соотношение между версиями платформы .NET, версиями CLR и версиями языка C#.

Таблица 1

Версии платформы .NET, CLR и языка C#

Год выпуска

2002

2003

2005

2006

2007

2008

2010

2012

Версия .NET

1.0

1.1

2.0

3.0

3.5

3.5 SP1

4.0

4.5

Версия CLR

1.0

1.1

2.0

4.0

4.5

Версия C#

1.0

1.2

2.0

3.0

4.0

5.0

2. Общие концепции синтаксиса языка c#

Специально для платформы .NET был разработан новый язык программирования C#. Этот язык сочетает простой синтаксис, похожий на синтаксис языков C++ и Java, и полную поддержку всех современных объектно-ориентированных концепций и подходов. В качестве ориентира при разработке языка было выбрано безопасное программирование, нацеленное на создание надёжного и простого в сопровождении кода. Здесь и далее рассматривается синтаксис пятой версии языка C#, доступной в составе .NETFramework4.5.

Ключевыми структурными понятиями в языке C# являются программы,сборки,пространства имён,пользовательские типы,элементы типов. Исходный код программы на языке C# размещается в одном или нескольких текстовых файлах, имеющих стандартное расширение.cs. В программе объявляются пользовательские типы, которые состоят из элементов. Примерами пользовательских типов являются классы и структуры, а примером элемента типа – метод класса. Типы могут быть логически сгруппированы в пространства имён, а физически (после компиляции) – в сборки, представляющие собой файлы с расширением.exeили.dll.

Исходный код программы на языке C# – это набор операторов(statements),директив препроцессораикомментариев. Операторы языкаC# и допустимые директивы препроцессора подробно будут рассмотрены далее. Комментарии игнорируются при компиляции и бывают двух видов:

1. Однострочный комментарий– это комментарий, начинающийся с последовательности//и продолжающийся до конца строки.

2. Блочный (многострочный) комментарий– все символы, заключённые между парами/*и*/.

В C# различаются строчные и прописные символы при записи идентификаторов и ключевых слов. Количество пробелов в начале строки, в конце строки и между элементами строки значения не имеет. Это позволяет улучшить визуальную структуру исходного кода программы – операторы одного уровня вложенности обычно предваряются одинаковым начальным отступом.

Рассмотрим короткую программу на языке C#, которая переводит расстояние в милях в километры (текст программы поместим в файл FirstProgram.cs).

using System;

class FirstProgram

{

static void Main()

{

Console.Write("Input miles: ");

string s = Console.ReadLine();

double miles = double.Parse(s);

Console.Write("In kilometers: ");

Console.WriteLine(miles * 1.609);

}

}

Приведённая программа представляет собой описание пользовательского типа – класса с именем FirstProgram. Необязательная директиваusingв первой строке программы служит для ссылки на пространство имёнSystem, группирующее базовый набор классов. Использованиеusing Systemпозволяет вместо полного имени классаSystem.Consoleзаписать короткое имяConsole.

Любая исполняемая программа на C# должна иметь специальную точку входа, с которой начинается выполнение программы. Такой точкой входа всегда является методMain()с модификаторомstatic, объявленный в некотором пользовательском типе программы (в данном случае – в классеFirstProgram). В примере методMain()начинается с вызова методаWrite()классаConsole. МетодыConsole.WriteLine()иConsole.Write()выводят информацию на экран, а методConsole.ReadLine()ожидает ввод пользователя и возвращает введённые данные как строку. Информация сохраняется в локальной строковой переменнойs. Методdouble.Parse()выполняет преобразование строки в вещественный тип.

Программа на C# может быть скомпилирована при помощикомпилятора командной строкиcsc.exe1.При этом можно указать различные опции (например, задать имя итоговой сборки, установить ссылки на необходимые сборки и так далее).

csc.exe FirstProgram.cs

После компиляции будет получена сборка FirstProgram.exe, готовая для запуска на любом компьютере с установленной платформой .NET.