- •Лекція 2. Основи технологічної платформи ms .Net Framework
- •2.1. Причини появи та ключові характеристики платформи ms .Net Framework
- •3. Технологічна платформа ms.Net
- •2.2. Архітектура платформи ms .Net
- •2.3. Архітектура ms .Net Framework. Динамічна і статична складові
- •2.4. Структура бібліотеки класів fcl. Простір імен
- •2.5. Загальномовне середовище виконання – динамічна складова ms.Net Framework
- •2.6. Універсальна система типів
- •12. Лабораторна робота № 1.
- •Питання і завдання для самостійної роботи студента
2.2. Архітектура платформи ms .Net
Платформа .NET складається з декількох основних компонентів (рис. 1.1.):
- операційні системи Microsoft (Windows 2000/ME/XP/Vista/7/8), що представляють собою базовий рівень платформи MS.Net;
- сервери MS.Net (.Net Enterprise Servers) є програмними продуктами корпорації Microsoft, використання яких дозволяє знизити складність розробки складних програмних систем. Наприклад, Application Server, Exchange Server, SQL Server;
- сервіси MS.Net (.Net Building Block Services) представляють собою готові "будівельні блоки" складних програмних систем, які можуть бути використані;
- інтегроване середовище розробки застосувань Visual Studio.NET (VS.Net) – верхній рівень MS.Net - забезпечує можливість створення складного ПЗ на основі платформи.
Рис. 2.1. Архітектура MS .Net
2.3. Архітектура ms .Net Framework. Динамічна і статична складові
Підсистема MS.NET Framework є ядром платформи MS.Net, яке забезпечує можливість побудови і виконання MS.Net застосунків.
До складу MS.NET Framework входить: загальномовне середовище виконання (Common Language Runtime або CLR) і бібліотека класів підсистеми MS.NET Framework.
Бібліотека класів FCL (Framework Class Library) – це статична складова платформи.
Загальномовне середовище виконання CLR – динамічна складова.
Для динамічного компоненту CLR фізичною одиницею, яка об'єднує класи і інші ресурси, є збірка (assembly).
Рис. 2.2 Базова архітектура MS.NET Framework
Ця архітектура постійно розширюється, додаючи все нові і нові можливості для розробників систем. На рис. 2.3. зображено нову розширену архітектуру MS.NET Framework.
Рис. 2.3 Стек технологій MS.NET Framework (джерело: http://ru.wikipedia.org/wiki/.NET_Framework)
WPF (Windows Presentation Foundation) – технологія для створення презентацій: складних графічних інтерфейсів з можливостями анімації, 2D і 3D графіки. Використовується векторна графіка для 2D, тому інтерфейси будуть максимально незалежні від роздільної здатності екрану і розміру вікна.
WCF (Windows Communication Foundation) - створення сервіс-орієнтованих систем і звичайних розподілених систем.
Windows CardSpace — нова метасистема ідентифікації від Microsoft. (замість .NetPassport).
Windows Workflow Foundation (WF) – технологія для визначення, виконання і управління робочими процесами (англ. workflow).
ADO.NET Entity Framework (EF) - об'єктно-орієнтована технологія доступу до даних. Надає можливість взаємодії з об'єктами як за допомогою LINQ у вигляді LINQ to Entities, так і з використанням Entity SQL.
Parallel LINQ (PLINQ) – паралельне виконання запитів LINQ
Task Parallel Library (TPL) – розпаралелювання задач
2.4. Структура бібліотеки класів fcl. Простір імен
Бібліотека класів FCL (Framework Class Library) має ієрархічну структуру.
За функціональним призначенням у складі FCL можна виділити:
- набір базових класів, що забезпечують, наприклад, роботу з рядками, введення-виведення даних, багатопоточність (для паралельних обчислень) і т.п.;
- набір класів для роботи з даними, що надають можливість використовування SQL-запитів, ADO.Net і обробки XML даних;
- набір класів Windows Forms, що дозволяють створювати звичайні Windows-застосунки, в яких використовуються стандартні елементи управління Windows;
- набір класів Web Forms, що забезпечують можливість швидкої розробки Web-застосунків, в яких використовується стандартний графічний інтерфейс користувача;
- набір класів Web Services, що підтримують створення розподілених компонентів-сервісів, доступ до яких може бути організований через Інтернет.
Кількість класів бібліотеки FCL дуже велика (декілька тисяч). Тому знадобився спосіб їх структуризації. Логічно класи з близькою функціональністю об'єднуються в групи, які називаються просторами імен (Namespace). Незалежно від мови програмування доступ до класів забезпечується їх групуванням в загальних просторах імен.
Основним простором імен бібліотек FCL є простір System, що містить як класи, так і інші вкладені простори імен. Наприклад, простір System.Windows.Forms містить класи, які використовуються при створенні Windows-застосунків. Клас Form з цього простору задає форму - вікно, на якому розміщуються елементами управління.
Простір імен визначає область видимості об'єктів (змінних, класів, даних).
Допускається імпорт просторів імен з використанням зарезервованого слова using.
Приклад 1.1
// Перша программа на C#
using System;
class MainApp
{
public static void Main()
{
Console.WriteLine(“C# Hello, World!”);
}
}
В таблиці 2.1. перелічено ієрархію основних просторів імен та їх призначення
Таблиця 2.1. Ієрархія основних просторів імен .Net Framework
System |
Базовий простір |
System.Data |
Класи для роботи з базами даних |
System.Data.Common |
Загальні класи для роботи з базами даних |
System.Data.OleDb |
Класи для роботи з базами даних АССЕS та інших СКБД |
System.Data.SqlClient |
Класи для роботи з базами даних SQL Server |
System.Collections |
Класи для роботи с контейнерами |
System.Diagnostics |
Класи для трасування и відлагодження коду |
System.Drawing |
Класи графіки |
System.Drawing.Drawing2D |
|
System.Drawing.Printing |
|
System.IO |
Підтримка введення/виведення |
System.Net |
Підтримка передачі даних по мережах |
System.Reflection |
Робота с типами даних користувача при виконанні програми |
System.Runtime.InteropServices |
Підтримка взаємодій із "звичайним кодом" (некерованим) – DLL, COM-сервери, віддалений доступ |
System.Runtime.Remoting |
Підтримка розподілених обчислень |
System.Security |
Криптографія, прівілеї |
System.Threading |
Робота з потоками |
System.Web |
Робота с web-застосунками |
