Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теоретический_курс.doc
Скачиваний:
36
Добавлен:
10.11.2019
Размер:
7.68 Mб
Скачать

2. Название языка c#

Рис. 2. 1. Нота с диезом

Название «Си-шарп» (До-диез) происходит от музыкальной нотации, где знак диез, прибавляемый к основному обозначению ноты, означает повышение соответствующего этой ноте звука на полутон. Это аналогично названию языка C++, где «++» обозначает, что переменная должна быть увеличена на 1.

Вследствие технических ограничений на отображение (стандартные шрифты, браузеры и т. д.) и того обстоятельства, что знак диез () не представлен на стандартной клавиатуре, знак номера # был выбран для представления знака диез при записи имени языка программирования. Это соглашение отражено в Спецификации Языка C# ECMA-334. Тем не менее, на практике (например, при размещении рекламы и коробочном дизайне), Microsoft использует предназначенный музыкальный знак.

Названия языков программирования не принято переводить, поэтому зачастую язык называют по-английски: «Си-шарп».

3. Особенности языка c#

C# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает BCL (Base Class Library ― библиотека базовых классов). Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#; подобного взаимодействия следует ожидать и в дальнейшем. Однако эта закономерность была нарушена с выходом C# 3.0, представляющего собой расширения языка, не опирающиеся на расширения платформы .NET. CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, многие возможности, которых лишены «классические» языки программирования. Например, «сборка мусора» не реализована в самом C#, а производится CLR для программ, написанных на C# точно так же, как это делается для программ на (VB.NET) Visual Basic .NET (VB.NET), J# и прочие.

4. Версии языка c# и развитие языка

С момента выпуска исходной версии 1.0 развитие С# происходило быстро. Вскоре после версии 1.0 корпорация Microsoft выпустила версию 1.1, в которую было внесено немало корректив, но мало значительных возможностей. Однако ситуация совершенно изменилась после выпуска версии С# 2.0.

Появление версии 2.0 стало поворотным моментом в истории развития С#, поскольку в нее было введено много новых средств, в том числе обобщения, частичные типы и анонимные методы, которые основательно расширили пределы возможностей и область применения этого языка, а также повысили его эффективность. После выпуска версии 2.0 «упрочилось» положение С#. Её появление продемонстрировало также приверженность корпорации Microsoft к поддержке этого языка в долгосрочной перспективе.

Следующей значительной вехой в истории развития С# стал выпуск версии 3.0. В связи с внедрением многих новых свойств в версии C# 2.0 можно было ожидать некоторого замедления в развитии C#, поскольку программистам требовалось время для их освоения, но этого не произошло. С появлением версии 3.0 корпорация Microsoft внедрила ряд новшеств, совершенно изменивших общее представление о программировании. К числу этих новшеств относятся, среди прочего, лямбда-выражения, язык интегрированных запросов (LINQ), методы расширения и неявно типизированные переменные. Конечно, все эти новые возможности очень важны, поскольку они оказали заметное влияние на развитие данного языка, но среди них особенно выделяются две: язык интегрированных запросов (LINQ) и лямбда-выражения. Язык LINQ и лямбда-выражения вносят совершенно новый акцент в программирование на С# и ещё глубже подчеркивают его ведущую роль в непрекращающейся эволюции языков программирования.

Версия

Спецификация языка

Дата появления

.NET Framework

IDE2 Visual Studio

ECMA

ISO/IEC

Microsoft

C# 1.0

Январь 2002 года

Январь 2002 года

Январь 2002 года

Январь 2002 года

.NET Framework 1.0

Visual Studio .NET 2002

C# 1.2

Январь 2002 года

Январь 2002 года

.NET Framework 1.1

Visual Studio .NET 2003

C# 2.0

Январь 2002 года

Январь 2002 года

Январь 2002 года

Январь 2002 года

.NET Framework 2.0

Visual Studio 2005

C# 3.0

Отсутствует

Январь 2002 года

Январь 2002 года

.NET Framework 3.5

Visual Studio 2008

C# 4.0

Январь 2002 года

Январь 2002 года

.NET Framework 4

Visual Studio 2010

Общая информация по версиям

C# 2.0

C# 3.0

C# 4.0

C# 4.5 (запланирован)

Новые возможности

  • Обобщения

  • Смешанные типы

  • Анонимные методы

  • Итераторы

  • Нуль-типы

  • Неявно типизируемые локальные переменные

  • Инициализаторы объектов и коллекций

  • Автоматическая реализация свойств

  • Анонимные типы

  • Методы-расширители

  • Запросы

  • Лямбда-выражения

  • Деревья выражений

  • Динамическое связывание

  • Именованные и дополнительные аргументы

  • Обобщённая ковариантность и контрвариантность

  • Асинхронные методы

  • Компилятор как служба

ПРИМЕЧАНИЕ № 2: IDE Интегрированная среда разработки, ИСР (IDE, Integrated Development Environment или Integrated Debugging Environment) — система программных средств, используемая программистами для разработки программного обеспечения (ПО).

Обычно среда разработки включает в себя:

  • текстовый редактор;

  • компилятор и/или интерпретатор;

  • средства автоматизации сборки;

  • отладчик.

Иногда содержит также средства для интеграции с системами управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя. Многие современные среды разработки также включают браузер классов, инспектор объектов и диаграмму иерархии классов — для использования при объектно-ориентированной разработке программного обеспечения (ПО).