Microsoft Visual Studio. NET. Огляд основних новинок у версії Beta 2. Частина 2

Частина 1


Зміст



У попередньому номері ми почали знайомство з основними новинками, що з'явилися в Microsoft Visual Studio. NET Beta 2. Ми з'ясували, що за допомогою цього засобу полегшується створення XML Web-сервісів і Web-додатків, а також істотно збільшується продуктивність праці розробників. У цій частині статті ми розглянемо нові версії мов програмування, які підтримуються в Microsoft Visual Studio. NET, а також кошти, що забезпечують підтримку всього циклу створення корпоративних додатків.


Розширення функціональності мов програмування


Нова версія Microsoft Visual Studio забезпечує підтримку більш ніж 20 різних мов програмування, серед яких чотири ключових мови – Visual Basic. NET, Visual C #. NET, Visual C + +. NET і JScript . NET – надаються фірмою Microsoft. Інші фірми розробляють компілятори таких мов, як COBOL, FORTRAN, Perl, Python, RPG, Eiffel і Java


Останнім часом Microsoft майже не згадує про підтримку JScript у складі Microsoft Visual Studio. NET і практично всі приклади надаються на VB.NET і C #, хоча, можливо, ми ще побачимо нову версію JScript. NET, яка буде відповідати специфікації ECMSScript Edition 4 і включати компілятор, підтримку класів і доступ до ядра. NET. Відзначимо, однак, що JScript. NET – це мова, яку можна буде використовувати тільки для створення Web-додатків на основі ASP.NET і для написання пакетних програм для середовища. NET. Нижче ми докладніше розглянемо три мови програмування фірми Microsoft – Visual Basic .NET, Visual C# .NET, Visual C++ .NET.


Visual Basic .NET


Visual Basic. NET – найбільш простий і в той же час саме продуктивне з вхідних до складу Visual Studio. NET коштів для створення Windows-і Web-додатків. Нова версія мови поповнилася такими можливостями, як повна підтримка об'єктно-орієнтованого програмування (включаючи спадкування), візуальне наслідування для форм, спрощений доступ до функцій Windows, створення сервісів Windows NT і консольних додатків.
Суперечки про те, чи є Visual Basic. NET прямим нащадком використовуваного мільйонами розробників в усьому світі мови Visual Basic або Microsoft «зіпсувала породу», ввівши стільки нововведень, будуть продовжуватися ще довго. Проте детальне обговорення цієї теми виходить за рамки цієї статті, і тут ми коротко зупинимося на основних нововведеннях, що з'явилися в. NET-версії мови.


Повна підтримка спадкування – спадкування реалізації (implementation inheritance) та візуального наслідування форм – дозволяє створювати додатки, в яких повторно використовуються великі обсяги коду. Типовий приклад таких додатків – Internet-додатки, що містять безліч спільних елементів: електронні магазини, портали, пошукові системи і т.п. Використовуючи ключове слово inherits, розробники можуть успадковувати існуючі класи, наприклад:

Class      ECommerce
 Function      GetCustomer()
End Function      
Class      ECommerceEx
 Inherits      ECommerce
Function GetOrders()

End Function


Примірники успадкованих класів підтримують всі методи і інтерфейси базових класів. Крім того, успадкований клас може розширювати набір методів та інтерфейсів, які підтримуються в базовому класі. Успадкований клас також може перевизначати методи базового класу за допомогою ключового слова overrides. Для запобігання помилок Visual Basic дозволяє перевизначати тільки такі методи, які позначені як переобумовлених (Overridable) в базовому класі.
Visual Basic. NET підтримує перевантаження функцій, надаючи розробникам можливість створювати різні версії підпрограм і функцій з одним і тим же ім'ям, але з різними наборами аргументів. Перевантаження часто використовується в об'єктно-орієнтованому програмуванні, коли об'єктна модель вимагає наявності однойменних методів, що працюють з різними типами дані, зокрема:

Overloads      Sub Display(theChar As Char)

Overloads Sub Display(theInteger As Integer)

Overloads Sub Display(theDouble As Double)

У попередніх версіях мови розробникам доводилося або створювати метод з унікальним ім'ям для кожного типу даних, або передавати дані як тип variant. Параметризрвані конструктори дають розробникам можливість створювати нові екземпляри класів і одночасно передавати їм набори аргументів. Конструктори є невід'ємною частиною об'єктно-орієнтованого програмування і дозволяють створювати і ініціалізувати нові екземпляри класів одним рядком коду.


Крім розглянутих вище об'єктно-орієнтованих розширень мови, в Visual Basic. NET підтримується багатопотокова модель, що дозволяє створювати асинхронні програми. Це особливо актуально при створенні масштабованих Web-додатків, якщо потрібно виконати складне обчислення, тривалий запит і т.п. Нижче показано, як за допомогою Visual Basic. NET і підтримки потоків можна запускати фоновий код:

 
Sub MakeNewThread()
Dim bg As bgWork
Dim myThread As Thread
bg = New bgWork()
myThread = New Thread(New ThreadStart(AddressOf bg.Run))
myThread.Start
End Sub
 Class      bgWork
Sub Run()

End Sub
End Class

Серед інших новинок Visual Basic. NET можна назвати структурну обробку винятків. Так, замість конструкції On Error GoTo тепер використовуються блоки Try .. Catch .. Finally. Наведемо приклад такого блоку:

Sub SHE_Demo()
Try
/ / Виконання будь-якої операції
Catch
/ / В разі помилки Finlly
/ / Фінальний код
End Try
End Sub

Нова опція Option Strict змушує компілятор генерувати помилки компіляції у випадках, коли перетворення типів неприпустимо. У мові тепер з'явилася можливість використовувати колективні члени класів (Shared members), за допомогою яких дані і члени класів стають доступними для всіх екземплярів класу. Говорячи про нововведення в Visual Basic. NET, також слід згадати підтримку можливості ініціалізації змінних в рядку їх оголошення. Наприклад, замість:

 Dim X      As Integer
X = 1

можна використовувати:

Dim X      As Integer = 1 

Для міграції з Visual Basic 6.0 до складу Visual Basic. NET входить спеціальний засіб – Visual Basic Migration Tool Wizard. Це засіб запускається автоматично при відкритті проекту Visual Basic 6.0 в середовищі розробника і дозволяє не тільки створити нову версію проекту, але і позначити частини коду, що вимагають змін. У результаті роботи Visual Basic Migration Tool Wizard створюється спеціальний звіт, містить як рекомендації щодо зміни коду, так і посилання на відповідні розділи довідкової системи з поясненнями та додатковою інформацією.


Visual Basic. NET являє собою високопродуктивну об'єктно-орієнтовану систему, призначену для створення всіх типів. NET-додатків. Тепер розробники можуть створювати масштабований код з підтримкою потоків і потужними засобами обробки виняткових ситуацій. Міграція існуючого коду частково полегшується за рахунок використання Visual Basic Migration Tool Wizard, а раніше придбані знання зберігаються і примножуються завдяки новій довідці, що входить до складу Microsoft Visual Studio. NET.


Visual C# .NET


Сучасний, компонент-орієнтована мова програмування С # розроблений фірмою Microsoft спеціально для платформи. NET. Не вдаючись у деталі, скажімо, що C # увібрав в себе краще з таких мов, як C, C + +, Java і Delphi, а обговорення тонкощів залишимо апологетам тієї чи іншої мови. Найпростіша програма, яка з 70-х років, з часів Керніган і Річі, виводить на екран рядок "Hello, world!", На C # виглядає так:

using System;
class Hello
 static void Main() {
  Console.WriteLine(“Hello, world!”);
 }
}

Вихідні тексти програм на C # зберігаються у файлах з розширенням. Cs.
Наш приклад буде збережений у файлі hello.cs. Програма починається з директиви using System;, що вказує на те, що ми плануємо використовувати простір імен System, яке є частиною бібліотеки класів Microsoft. NET. Цей простір імен містить клас Console, використовуваний нами в методі Main. Простору імен використовуються для ієрархічної організації елементів бібліотеки класів. Директива using дозволяє посилатися на членів простору імен без вказівки самого імені простору імен. Таким чином, замість System.Console. WriteLine ми пишемо Console.WriteLine.
Метод Main є членом класу Hello. Він має модифікатор static і, отже, є методом класу Hello, а не примірника цього класу. Точка входу в програму – метод, що викликається при запуску програми, – завжди статичний метод з ім'ям Main.


Висновок рядка "Hello, world!" забезпечується за рахунок використання бібліотеки класів. Сама мова не надає цю бібліотеку, тому в. NET використовується загальна бібліотека класів, доступна з програм, написаних як на С #, так і на VB. NET або C + +.
Є деякі відмінності програми на C # від програми на C / C + +. Тут немає глобального методу Main. Методи і змінні не підтримуються на глобальному рівні – такі елементи завжди містяться тільки в описах типів (класах або структурах). У програмі не використовуються оператори «::» або «->». Роздільник «.» Служить для відділення частин складових імен – Console.WriteLine. Програма не містить приречення. Такі приречення не потрібні взагалі, тому що порядок проходження визначень в C # не має значення. У програмі немає також директиви # include для імпорту інших файлів. Залежності між програмами вирішуються на символьному, а не на текстовому рівні, внаслідок чого руйнуються бар'єри між програмами, написаними на різних мовах програмування.
Кілька слів про інші особливості мови С #.
Так, в С # використовується уніфікована система типів, тобто всі типи даних є спадкоємцями класу Object. Властивості та події реалізуються на рівні класів. Властивості забезпечують доступ до атрибутів об'єктів чи класів. Для читання і запису властивостей використовується наступна синтаксична конструкція:

public class Person
{
 public string Name {
  get {
   return Name;
  }
  set {
   Name = value;
  }
 }
}

Подія – це член класу, що дозволяє об'єкту або класу видавати нотіфікаціонние повідомлення. Подія задається як звичайний метод, але з ключовим словом event.
На закінчення відзначимо також автоматичну підтримку версій, можливість генерації документації на основі спеціалізованих коментарів (///), а також новацію начебто автоматичного збору сміття, реалізованого на рівні ядра. NET.
Для розробників, що починають освоєння C # (а це – 100% тих, хто зацікавився можливостями цієї мови), Microsoft надає не тільки детальну специфікацію, але і велику довідкову систему, а також пропонує безліч готових прикладів, що ілюструють різні аспекти роботи з платформою. NET

Visual C++ .NET


Версія Visual C + + для платформи. NET має безліч нововведень, що дозволяють розробникам створювати і використовувати Web-додатки і Web-сервіси. Від інших мов програмування для платформи. NET Visual C + +. NET відрізняється тим, що підтримує як кодову модель платформи. NET (managed code model), так і кодову модель Windows (unmanaged native code model). До складу Visual C + +. NET входить потужне розширення бібліотеки Active Template Library (ATL), зване ATL Server. Це розширення дозволяє розробникам створювати компактні, високопродуктивні Web-додатки і сервіси. Розширення в Visual C + +. NET полегшують виклик Web-сервісів і з клієнтських, і з серверних додатків, незалежно від того, чи використовується при розробці ядро. NET, бібліотека Microsoft Foundation Classes (MFC), ATL або безпосередньо функції Windows API.

Рис. 2


ER-модель автоматично генерується на основі відповідної ORM-моделі. Потім ER-модель використовується для створення SQL-коду для бази даних. Цей процес повністю звернемо: на підставі схеми бази даних ми можемо отримати ER-модель і породила її ORM-модель.


Шаблони для корпоративних додатків


Шаблони для корпоративних додатків (Enterprise Templates) містять два ключові компоненти – початкову структуру проекту (шаблон проекту) і «політику» (policy), асоційовану з цим проектом. Використання корпоративних шаблонів полегшує реалізацію загальної схеми проекту. Зокрема, розподілене додаток може складатися з проектів для кожного з трьох архітектурних рівнів – користувальницького інтерфейсу, бізнес-логіки й даних. Крім завдання початкової структури програми, архітектор програми може включати в шаблони стандартні компоненти та інші повторно використовувані програмні елементи.
До складу Visual Studio. NET входять шаблони як для простих розподілених додатків, так і для більш комплексних. Ці шаблони доступні як проекти на мовах Visual Basic. NET і Visual C #. NET.
Створення корпоративного проекту починається з вибору шаблону з розділу Enterprise Templates. Наступним кроком є додавання до проекту компонентів, класів, проектів та інших програмних елементів. У результаті ми отримуємо високорівневу структуру програми, яка буде служити відправною точкою для створення проекту.
Політика – це XML-документ, що описує проект на мові Template Description Language (TDL). Даний документ дозволяє архітекторам додатків керувати середовищем Visual Studio. NET, включаючи такі її елементи, як список завдань, панель інструментів, браузер властивостей, Solution Explorer, дизайнери, редактори і т.д. За допомогою TDL-документів архітектори можуть вказувати, які технології доступні для розробників, задавати початкові значення або діапазони початкових значень змінних, включати до складу проекту дизайнерські документи.

Засоби тестування


Засіб Application Center Test дозволяє розробникам збирати інформацію про продуктивність і виконувати функціональне тестування Web-сервісів і додатків, створених засобами Visual Studio. NET. Application Center Test підтримує скриптова мова і володіє можливістю імітації навантаження на Web-додатки і сервіси. Серед тестів, підтримуваних Application Center Test, можна відзначити Browser Record Test, що підтримує реєстрацію HTTP-запитів та надсилаються клієнтам Web-сторінок. Цей тест може бути як статичним, так і динамічним. При аналізі результатів тестування доступна наступна інформація:



Впровадження програм


Вхідні до складу Visual Studio. NET засоби впровадження програм характеризуються такими ключовими можливостями:



Висновок


У цій статті ми ознайомилися з основними новинками в засобі розробки для платформи. NET – Microsoft Visual Studio. NET, яке значно полегшує створення Web-сервісів і інтеграцію додатків з вже існуючими сервісами. Підтримується створення і клієнтського, і серверного коду з використанням знайомій багатьом розробникам інтегрованого середовища розробки, а також таких концепцій, як дизайнери, редактори властивостей і Windows-і Web-форми.
Новації в мовах програмування забезпечують повну підтримку концепцій об'єктно-орієнтованого програмування, полегшують інтеграцію з платформою. NET і дозволяють створювати різні типи додатків – Від клієнтських додатків до Web-сервісів.
Повна підтримка створення корпоративних додатків розширює можливості архітекторів додатків і дозволяє з більшою продуктивністю створювати вирішення різних рівнів складності з використанням раніше створених програмних компонентів і моделей.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*