# Microsoft .NET

### Матеріал з Вікіпедії — вільної енциклопедії.

.NET Framework
Зображення:Microsoft dotNET Logo.jpg
Розробник | Microsoft
Останній випуск | Версія 3.0 / 6 листопада 2006
Операційна система | Windows 98 або старша
Тип | System platform
Ліцензія | Proprietary software
Майданчик тенет | microsoft.com/net

Microsoft .NET (читається дот-нет) — програмна технологія, запропонована фірмою Microsoft як платформа для створення як звичайних програм, так і веб-програм. Багато в чому є розвитком ідей та принципів, покладених в технологію Java.

Одною з основних ідей .NET є сумістність різних служб, написаних різними мовами. Наприклад, служба, написана на C++ для .NET, може звертатися до методу класа з бібліотеки, написаної на Delphi; на C# можна написати клас, що наслідується від класа, написаного на Visual Basic .NET, а винятки, що викинуті методом, написаним на C#, може бути спійманим та обробленим в Delphi. Кожна бібліотека (збірка) в .NET має свідчення про свою версію, що дозволяє усунути можливі конфлікти між різними версіями збірок.

.NET — кроссплатформена технологія, однак на даний момент існує реалізація для платформи Microsoft Windows, FreeBSD (від Microsoft) і обмежений варіант технології для ОС Linux в рамках вільних проектів Mono, DotGNU [1].

.NET є патентованою технологією фірми Microsoft, що є перешкодою для її розповсюдження на інші платформі (відносно проекту Mono — Microsoft однозначно висловлювалась про нелегітимність даного проекту).

Хотілось би зазначити, що захист авторських прав відноситься до створення середовищ виконання (CLR — Common Language Runtime) для програм .NET. Компілятори для .NET випускаються множиною фірм для різних мов вільно. Множина мов, що можуть використовуватись для написання застосувань, є безсумнівною перевагою технології .NET в порівнянні з Java.

.NET поділяється на дві основні частини — середовище виконання (по суті віртуальна машина) та інструментарій розробки.

Середовища розробки .NET-програм: Visual Studio .NET (C++, C#, J#), SharpDevelop, Eclipse, Borland Developer Studio (Delphi, C#) і т. д. Застосовні програми також можна розроблювати в текстовому редакторі та використовувати консольний компілятор.

Також як і технологія Java, середовище розробки .NET створює байт-код, призначений для виконання віртуальною машиною. Вхідна мова цієї машини в .NET називається CIL (Common Intermediate Language), також відома як MSIL (Microsoft Intermediate Language), або просто IL. Застосування байт-кода дозволяє отримати кроссплатформеність на рівні скомпільованого проекту (в термінах .NET: збірка), а не на рівні початкового тексту, як, наприклад, в С. Перед запуском збірки в середовищі виконання (CLR) байт-код перетворюється вбудованим в середовище JIT-компілятором (just in time, компіляція на льоту) в машинні коди цільового процесора.

Слід зазначити, що один з перших JIT-компіляторів для Java був також розроблений фірмою Microsoft (на даний момент в Java використовується більш досконала багаторівнева компіляція — Sun HotSpot). Сучасна технологія динамічної компіляції дозволяє досягнути аналогічного рівня швидкодії з традиційними «статичними» компіляторами (наприклад, С++) і питання швидкодії часто залежить від якості того чи іншого компілятора.

## [ред.] Версії

- .NET Framework 1.0 — випущений 2002 року
- .NET Framework 1.1 — випущений 2003 року
- .NET Framework 2.0 — випущений 27 жовтня 2005 року
- .NET Framework 3.0 (кодове ім'я WinFX) — випущений 6 листопада 2006 року. Включає в себе CLR і компілятори від .NET Framework 2.0, плюс ряд нових API: Windows Presentation Foundation (WPF, кодове им'я Avalon), Windows Communication Foundation (WCF, кодове им'я Indigo), Windows Workflow Foundation (WF) і Windows CardSpace (WCS, кодове ім'я InfoCard). Входить в склад Windows Vista.

## [ред.] Мови програмування в .NET

- Вбудовані (постачаються разом з .NET Framework)
  - C#;
  - J#;
  - VB.NET;
  - JScript .NET;
  - C++/CLI — нова версія C++ (Managed);

- Такі, що постачаються окремо, сторонні — виробництва третіх фірм (неповний список)
  - Ada — див. A#
  - APL
  - Boo, оснований на Python
  - COBOL
  - Component Pascal (Component Pascal ближче до Oberon ніж до Pascal)
  - Delphi: Delphi 8, Delphi 2005, Delphi 2006
  - Eiffel
  - F#, член сімейства мов програмування ML
  - Forth
  - FORTRAN
  - IKVM, Java
  - IronPython — реалізація мови Python
  - Lexico
  - Lisp
  - Mercury
  - Mondrian
  - Nemerle — гібридна функціонально/імперативна мова
  - Oberon/Zonnon
  - Perl
  - RPG
  - Smalltalk

## [ред.] Див. також

- ASP.NET
- ADO.NET
- Java
- Mono
- Порівняння C# і Java

## [ред.] Посилання

- Microsoft .NET Homepage
- Got Dot Net — .NET News.
- Mono homepage
- The Mono Community
- Mono Wiki
- DotNetSpace — Asp.Net 2.0 Articles and code examples.
- Ecma-335
- Ecma-334
- Ecma-372
- Running .NET on Linux or Windows
- MonoBrasil A Brazilian Mono WebSite
- ASP.NET Mania — сайт о .NET на русском языке.
- Got Dot Net — сайт о .NET на русском языке.
- dotSITE — сайт о .NET на русском языке.
- RSDN — сайт, що містить великий розділ про .NET.

Отримано з http://uk.wikipedia.org../../../m/i/c/Microsoft_.NET_1c77.html

Категорія: Програмування

##### Views

- Стаття
- Обговорення
- Поточна версія

##### Участь

- Портал спільноти
- Кнайпа
- Довідка
- Пожертвування

##### Пошук

##### Іншими мовами

- Česky
- Dansk
- Deutsch
- English
- Español
- Suomi
- Français
- עברית
- Hrvatski
- Magyar
- Italiano
- 日本語
- Nederlands
- ‪Norsk (bokmål)‬
- Polski
- Português
- Русский
- Slovenščina
- Svenska
- தமிழ்
- Türkçe