Связь C# со средой .NET Framework

76

C# спроектирован и разработан специально для применения с .NET Framework.

Назначение .NET Framework — служить средой для поддержки разработки и выполнения сильно распределенных компонентных приложений. Она обеспечивает совместное использование разных языков программирования, а также безопасность, переносимость программ и общую модель программирования для платформы Windows.

Базовые функциональные возможности платформы .NET включают в себя:

Возможность обеспечения взаимодействия с существующим программным кодом

Эта возможность, несомненно, является очень хорошей вещью, поскольку позволяет комбинировать существующие двоичные единицы СОМ (т.е. обеспечивать их взаимодействие) с более новыми двоичными единицами .NET и наоборот. С выходом версии .NET 4.0 эта возможность стала выглядеть даже еще проще, благодаря добавлению ключевого слова dynamic.

Поддержка для многочисленных языков программирования

Приложения .NET можно создавать с помощью любого множества языков программирования (C#, Visual Basic. F#. S# и т.д.). При этом в .NET код, написанный на любом языке компилируется в код на промежуточном языке (Intermediate Language - IL).

Полная интеграция языков

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

Так же в .NET был полностью переделан способ разделения кода между приложениями за счет введения понятия сборки (assembly) вместо традиционных библиотек DLL. Сборки обладают формальными средствами для управления версиями и допускают одновременное существование рядом нескольких различных версий сборок.

Усовершенствованная поддержка для создания динамических веб-страниц

Хотя в классической технологии ASP предлагалась довольно высокая степень гибкости, ее все равно не хватало из-за необходимости использования интерпретируемых сценарных языков, а отсутствие объектно-ориентированного дизайна часто приводило к получению довольно запутанного кода ASP. В .NET предлагается интегрированная поддержка для создания веб-страниц с помощью ASP.NET. В случае применения ASP.NET код создаваемых страниц поддается компиляции и может быть написан на любом поддерживающем .NET языке высокого уровня, например, C# или Visual Basic 2010. В новой версии .NET эта поддержка улучшилась еще больше, сделав возможным применение новейших технологий вроде Ajax и jQuery.

Эффективный доступ к данным

Набор компонентов .NET, известный под общим названием ADO.NET, позволяет получать эффективный доступ к реляционным базам данных и многим другим источникам данных. Также предлагаются компоненты, позволяющие получать доступ к файловой системе и каталогам. В частности, в .NET встроена поддержка XML, позволяющая манипулировать данными, импортируемыми и экспортируемыми на платформы, отличные от Windows.

Установка с нулевым воздействием

Сборки бывают двух типов: разделяемые и приватные. Разделяемые сборки представляют собой обычные библиотеки, доступные всему программному обеспечению, а приватные сборки предназначены для использования только с определенными программами. Приватные сборки являются полностью самодостаточными, поэтому процесс их установки выглядит просто. Никакие записи в системный реестр не добавляются; все нужные файлы просто размещаются в соответствующей папке файловой системы.

Visual Studio 2010

Вместе с .NET поставляется среда разработки Visual Studio 2010, которая способна одинаково хорошо справляться как с кодом на языке С++, C# и Visual Basic 2010, так и с кодом ASP.NET или XML. В Visual Studio 2010 интегрированы все наилучшие возможности сред конкретных языков из всех предыдущих версий этой замечательной IDE-среды.

Что нового в .NET Framework 4

Первая версия .NET Framework (1.0) была выпущена в 2002 г. и встречена с большим энтузиазмом. Версия .NET Framework 2.0 вышла в 2005 г. и получила статус серьезного выпуска. Версия .NET Framework 4 является еще одним серьезным выпуском данного продукта с множеством замечательных новых возможностей.

В каждом выпуске .NET Framework в Microsoft всегда старались делать так, чтобы изменений, нарушающих целостность предыдущего разработанного кода, было как можно меньше. Пока что им удавалось довольно успешно справляться с этой задачей.

Динамическая типизация

В мире программирования наблюдается значительный рост применения динамических языков, таких как JavaScript, Python и Ruby. По этой причине в C# была добавлена возможность динамической типизации (dynamic typing). Знать статическим образом, какими объекты могут получаться в конце, не всегда возможно. Теперь вместо использования ключевого слова object и назначения этого типа всем сущностям можно предоставить возможность решать этот вопрос среде DLR (Dynamic Language Runtime — исполняющая среда динамического языка) непосредственно во время выполнения.

Динамические возможности C# обеспечивают лучшее взаимодействие. Появляется возможность взаимодействовать с различными динамическими языками и работать с DOM гораздо более простым образом. Кроме того, облегчается работа с API-интерфейсами СОМ для Microsoft Office.

Среда DLR входит в состав версии .NET Framework 4. Среда DLR построена на основе среды CLR (Common Language Runtime — общеязыковая исполняющая среда) для предоставления возможности связывать вместе все взаимодействие с динамическими языками.

Доступ к новой среде DLR в C# получается с помощью нового ключевого слова dynamic. Это ключевое слово служит флагом для компилятора; при каждой встрече с ним компилятор будет понимать, что речь идет о динамическом, а не обычном статическом вызове.

Ковариантность и контравариантность

Возможности ковариантности (covariance) и контравариантности (contravariance) предлагались и в предыдущих версиях .NET Framework, но в версии .NET Framework 4 они были расширены таким образом, чтобы лучше функционировать с обобщениями, делегатами и прочими элементами. В предыдущих версиях .NET контравариантность можно было использовать с объектами и массивами, но нельзя, например, с обобщенными интерфейсами. В .NET 4 это стало возможным.

Технология ASP.NET MVC

Технология ASP.NET MVC, ставшая последним серьезным добавлением в ASP.NET, вызвала большую шумиху в сообществе разработчиков. Она предоставляет средства для создания приложений ASP.NET с использованием шаблона "модель-представление-контроллер" (Model-View-Controller), которых давно ожидали многие разработчики. ASP.NET MVC обеспечивает разработчиков возможностями тестирования, гибкости и обслуживания создаваемых ими приложений. Важно понимать, что ASP.NET MVC не предназначена служить заменой хорошо известной технологии ASP.NET, а является просто другим способом построения приложений.

В данном выпуске ASP.NET приложения можно создавать с использованием этой новой модели. Технология ASP.NET MVC полностью встроена в .NET Framework и Visual Studio.

Пройди тесты
Лучший чат для C# программистов