Оскільки .NET Framework - це найпотужніша платформа для розробки додатків, вона дає можливість розробляти програми абсолютно різного типу.
· Настільні додатки (додатки, які запускаються на локальному комп'ютері користувача);
· Веб-додатки (додатки, які працюють в рамках веб-сервера і доступні користувачеві через браузер в рамках протоколу HTTP / HTTPS);
· Веб-додатки з багатим для користувача інтерфейсом (додатки, які доставляються користувачеві по протоколу HTTP / HTTPS в рамках браузера і виконуються на стороні клієнта);
· Веб-сервіси (програмні код, який виконується на стороні сервера і може бути викликаний з клієнта для отримання будь-яких даних або виконання операції);
· Мобільні додатки (додатки, які виконуються на мобільних пристроях).
Для кожного з наведених типів додатків в складі .NET Framework існують відповідні технології, які дозволяють створювати додатки. Крім того. NET Framework містить загальні бібліотеки, які можна використовувати в різних типах додатках. До таких бібліотекам можна віднести бібліотеки:
· Для роботи з рядками;
· Для роботи з математичними функціями;
· Для роботи з графікою;
· Доступу до даних;
· Для роботи з файлами та іншими операціями вводу-виводу;
· Для виконання криптографічних операцій;
· Для організації синхронізації даних між джерелами даних;
· І величезна кількість інших бібліотек.
Давайте оглядово розглянемо кожен тип додатків. Як уже було відзначено вище, для кожного з типів програм в складі платформи .NET Framework існують спеціальні шаблони проектів.
Настільні додатки відрізняються тим, що запускаються безпосередньо на комп'ютері користувача. Це - найбільш поширений тип додатків. Настільні додатки зазвичай мають доступ до ресурсів комп'ютера користувача, таким какжесткій диск. звукове обладнання і т.д. До переваг такого типу додатків можна віднести інтерактивність призначеного для користувача інтерфейсу і можливість роботи програми незалежно від підключення до мережі Інтернет та інших ресурсів. Однак, для роботи таких додатків їх необхідно встановлювати на локальний комп'ютер.
Настільні додатки можна розділити на три види - віконні додатки, консольні додатки і служби Windows. Віконні додатки мають графічним інтерфейсом. Консольні додатки зазвичай мають вигляд командного рядка, аінтерфейс таких додатків є текстовим, а не графічним. Нарешті, служби Windows зовсім не мають призначеного для користувача інтерфейсу, а працюють у фоновому режимі.
Для побудови додатків з віконним графічним інтерфейсом в рамках платформи .NET Framework можуть використовуватися технології Windows Forms (доступно починаючи з .NET Framework 1.0) і Windows Presentation Foundation (доступно починаючи з .NET Framework 3.0). Остання технологія є більш нової і перспективної.
Оскільки веб-додатки мають серйозним недоліком - обмеженими можливостями щодо формування інтерфейсу користувача - з'явився новий тип додатків, який називається багаті інтернет-додатки або інтернет-додатки з багатим для користувача інтерфейсом (Rich Internet Applications, RIA). Ідеологія цих додатків полягає в тому, що в браузер інтегрується спеціальне доповнення (plugin), яке здатне відображати додатковий тип вмісту. Після цього, коли користувач відриває сторінку в браузері, на сторону клієнта передається програмний код, який працює в рамках цього доповнення. Оскільки в цьому випадку весь код відпрацьовує на стороні клієнта, у розробників з'являється більше можливостей щодо формування призначених для користувача інтерфейсів.
Для побудови подібного типу додатків існує кілька технологій. Одна з найбільш відомих технологій - це технологія Adobe Flash. Крім того, існує також технологія Microsoft Silverlight, яка дозволяє найбільш зручно інтегруватися з іншими технологіями в рамках .NET Framework.
Іншим типом додатків є сервіси (або веб-сервіси). Сервіси - це якийсь програмний код, який розташований на сервері і запускається за запитом від користувача. Наприклад, можна створити набір сервісів по роботі з даними з бази даних. що зберігається на сервері. Зазвичай, інші типи додатків (настільні додатки, веб-додатки і т.д.) звертаються до сервісів з метою виконати будь-яку операцію на сервері або отримати з сервера дані.
В рамках платформи .NET Framework існує ряд технологій, які дозволяють створювати сервіси. Найбільш старою технологією є ASP .NET Web Services. Вона дозволяє створювати прості веб-сервіси, які працюють по протоколуHTTP / HTTPS. Подальшим розвитком стала технологія Windows Communication Foundation (WCF). Ця платформа є найбільш потужним і гнучким інструментом, яка підтримує різні типи каналів (HTTP. TCP. Іменовані канали та ін.) І істотно розширює можливості розробника зі створення сервісів.
Також існують додаткові відгалуження проекту WCF - це WCF Syndication Extensions (WCF REST) і ADO .NET Data Services. Ці проекти розроблені для того, щоб можна було зручно будувати сервіси доступу до даних.
Нарешті, останнім типом додатків є мобільні додатки. Мобільні додатки працюють в рамках мобільних пристроїв на базі операційної системи Windows Mobile. Для мобільних пристроїв також існує реалізація підмножини можливостей .NET Framework, яка називається .NET Compact Framework.
Таким чином, весь спектр технологій в рамках платформи .NET Framework можна представити наступною схемою.