51
весьма ограниченных возможностей, является большая их однородность,
позволяющая обеспечить совместимость, мобильность, переносимость.
Сегодня в индустрии разработки бизнес-приложений основными языками
программирования являются C# (Microsoft)и Delphi (Embarcadero Technologies).
C# — объектно-ориентированный язык. Разработан в 1998-2001 годах
группой инженеров под руководством Андерса Хейлсберга в компании Microsoft
как основной язык разработки приложений для платформы.NET Framework и
впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270. Компилятор
C# входит в стандартную установку .NET Framework [3.1].
C# состоит в семье языков с C-подобным синтаксисом, и из всего этого
семейства их его синтаксис очень напоминает C++ и Java. Язык имеет
статическую типизацию, имеет поддержку полиморфизма, перегрузки операторов
(явного и неявного типа поведения), содержит в себе делегаты, атрибуты,
события, свойства, сгруппированные типы и методы, итераторы, анонимные
функции с возможностью замыканий, LINQ, исключения, а также сновки и
комментарии в формате XML. Взяв многое от своих предшественников - C++,
Java, Delphi, Модула и Smalltalk — С#, используя практику их применения, уже
не имеет некоторых моделей, зарекомендовавших себя с негативной стороны в
процессе создания программных систем, к примеру, C# уже нет поддержки
множественного наследования классов, в C++ оно еще есть.
C# создавался в качестве языка программирования прикладного уровня для
CLR и, зачастую, зависит, прежде всего, от уровня возможностей самой CLR.
Относится это, прежде всего, к системе типов C#, которая отражает BCL. Наличие
или отсутствие тех или иных выразительных тонкостей языка определяется тем,
позволяет ли конкретная языковая особенность быть переданной в
соответствующие конструкции CLR. Так, с модификацией CLR от версии 1.1 к 2.0
улучшился и сам C#; аналогичного взаимодействия нужно ждать и в дальнейшем.
Но такая закономерность была нарушена в результате выхода C# 3.0, которые
представляет собой расширения языка, не использующие расширения платформы
.NET. CLR предоставляет C#, как и аналогичным другим .NET-ориентированным
языкам, различные возможности, которых просто нет в «классических» языках
программирования. К примеру, сборка «мусора» в самом C# отсутствует, а