Не просто нова версія – інше бачення, Інтеграція додатків і даних, Бази даних, статті

Після тривалого періоду тестування, неймовірною рекламної галасу і довгоочікуваного випуску в лютому цього року ми нарешті отримали можливість познайомитися з Microsoft Visual Studio .NET. Однак це настільки серйозний продукт, з такими широкими можливостями застосування в розробці корпоративного ПЗ, що оцінити його не так-то просто. Тепер, схоже, дуже вдалий час подивитися на нього з боку, грунтуючись на вже отриманий досвід. Через обширності матеріалу, який потрібно проаналізувати, і значення Visual Studio .NET справжній огляд буде складатися з двох частин. У першій я розповім про високорівневих архітектурних аспектах, а в другій познайомлю вас з особливостями інтегрованого середовища розробки, мов та інших інструментальних засобів, що поставляються в складі версії Enterprise Architect Edition середовища Visual Studio .NET.


У попередніх версіях Visual Studio декілька незалежних мов програмування об’єднувалися в єдиному пакеті з невеликим числом загальних характеристик. Visual Studio. NET забезпечує каркас загального середовища, на якій базуються кілька мов. Для об’єктно-орієнтованих програмістів зміна очевидна: незалежно від вибору мови програмування і допоміжних інструментів ви отримуєте програму, скомпільовану в стандартний об’єктний код, заснований на величезній бібліотеці класів каркаса. NET Framework. Середа Visual Studio. NET також більше, ніж попередні версії, орієнтована на роботу в Інтернеті – серйозна увага приділена в ній Web-служб, XML і розподіленим додаткам. Як і було обіцяно, ця версія Visual Studio корінним чином відрізняється від попередників, і на усвідомлення наслідків всіх змін програмістам доведеться витратити чимало часу.


Одне можна сказати напевно: Visual Studio .NET дійсно працює. Вона дозволяє створювати додатки й Web-служби, які підтримують безліч функцій і легко масштабуються. Що розробникам поки невідомо, оскільки це межі можливостей і масштабованості. Visual Studio .NET дозволяє дійсно якісно робити багато речей, наприклад, динамічні Web-сторінки і розподілені програми – у цьому середовищі вони створюються набагато простіше і виходять більш надійними. Природно, ключовим залишається питання: у порівнянні з чим? З попередніми версіями Visual Studio? З Java? Можна сформулювати питання і поскладніше: більш надійні в порівнянні з основною метою Visual Studio – новим світом Web-служб?


Однак перш, ніж перейти до вивчення новинок Visual Studio. NET, дозвольте мені ще раз підкреслити, що Visual Studio залишається набором універсальних інструментальних засобів розробки ПЗ – клієнт-серверних додатків, автономних Windows-додатків, навіть низькорівневих програм, а також Web-служб і Web-додатків. Visual Studio продовжує забезпечувати всі можливості, які були доступні в попередніх «інкарнація», але основний вектор змінився, і помітно.


Архітектурне братство


У своєму універсальному підході до мов Visual Studio .NET підтримує Visual Basic .NET (VB.NET), C# (C-sharp), C++ і J# (J-sharp). C # – абсолютно нову мову, а J # є проміжна мова, що прийшла на зміну версії мови Java корпорації Microsoft (J + +). VB.NET настільки змінився, що його можна вважати практично новим мовою. Здебільшого мови Visual Studio використовують оновлену IDE-середовище, а для створення програмних компонентів і елементів інтерфейсу користувача застосовуються один або декілька з трьох форматів: Windows-форми (базові Windows-вікна), Web-форми (Web-сторінки з підтримкою ASP.NET) і Web-служби. В усіх мовах застосовується. NET Framework Classes – величезна бібліотека приблизно з 6500 класів, які забезпечують підтримку «рідних» для середовища Visual Studio функцій. Незалежно від мови весь вихідний код в Visual Studio. NET пропускається через компілятор, який генерує об’єктний код загальномовного середовища виконання (Common Language Runtime, CLR). Середа CLR підтримує і такі функції, як управління пам’яттю (наприклад, «збірка сміття»), налагодження, управління загальними типами даних і JIT-компілятори (just-in-time), які генерують двійковий код для конкретної платформи.


Можна, як це зробив я, підсумовувати можливості Visual Studio в одному абзаці, але ви упустите деякі дуже важливі моменти. Ви маєте право вибрати мову, цільову середовище (локальна мережа, інтрамережа, Інтернет, персональний комп’ютер або мобільний пристрій), навіть платформу (UNIX, Linux або Windows), а Visual Studio. NET повинна створити відповідний код. Я сказав «повинна», бо поки що вона цього не вміє.


Глобальна мережа. NET


З точки зору підприємства багато чого з того, що робить Visual Studio. NET і всю ідею. NET привабливою, поки не готове. Visual Studio .NET – Компонент для програмування в .NET Framework, Інструмент розробника, який у багатьох відношеннях є версією 1.0. Вона потребує виправлення і розширенні; зокрема, для розробки корпоративних додатків потрібна підтримка інших мов і продуктивних компіляторів для платформ, відмінних від Windows. Крім того, потрібно забезпечити підтримку інших вже оголошених компонентів. NET Framework, насамперед серверних продуктів: недавно випущеного Commerce Server 2002,. NET Server (серверна версія Windows XP, має вийти пізніше в цьому році),. NET Biz Talk Server (. NET SDK вже випущений), Host Integration Server, Exchange Server і SQL Server 2003 (в даний час знаходиться на стадії бета-тестування).


Нинішня і майбутня інтеграція цих серверів с. NET Framework дуже важлива. Я вже зрозумів це, попрацювавши з Commerce Server 2002, який (нарешті!) надає доступ до найбільш «потаєним» процедурам Pipeline Manager допомогою класів. NET Framework. А тим часом доступ із застосуванням інструментів Visual Studio. NET дозволив би зібрати «під одним дахом» безліч серверних функцій (наприклад, базу даних і бізнес-правила), не вдаючись до послуг цілої армії запрошених фахівців.


Бібліотека класів. NET Framework і різні компілятори – це справжні пожирачі ресурсів, і їм не вижити без підтримки виділеного (і часто спеціалізованого) сервера. Поки сервери недоступні, все ці вправи по масштабованості і ускладнення так і залишаються вправами. Обіцяний Microsoft та її численними партнерами повний набір служб також поки відсутня. Ці служби, схожі на ті, що надає Microsoft MyServices, повинні виконувати функції перевірки і захисту, а також функції підтримки транзакцій – всі вони критично важливі для більшості корпоративних проектів. Моє завдання полягає не в перерахуванні того, що відсутня в. NET Framework і Visual Studio. NET, тому що більшість з перерахованого ось-ось з’явиться, а в ретельній оцінці продуктів і служб, що становлять архітектуру . NET, коли вони стануть доступними протягом наступних року-двох.


XML і Web-служби


Одне з найсильніших вражень від роботи з Visual Studio. NET – як рано і як глибоко Microsoft перейнялася вірою у XML (на відміну від запізнілих спроб Sun Microsystems наздогнати мчить поїзд). Дійсно, в. NET Framework передбачена така грунтовна підтримка XML (наприклад, цій мові віддана величезна частина бібліотеки. NET Framework Class Library), що я почав замислюватися, чи не збирається Microsoft SQL Server трансформуватися в адміністратора бази даних XML. У будь-якому випадку XML розташовується на самому початку списку стандартів, на яких базуються Visual Studio. NET та Web-служби. По суті Microsoft наполегливо називає Web-служби «XML Web-службами».


Інші ключові для Microsoft стандарти вже досить популярні – це протокол SOAP (Simple Object Access Protocol), UDDI (Universal Description, Discovery and Integration) і мова опису Web-служб WSDL (Web Services Description Language). Я знаю, для багатьох підтримка корпорацією Microsoft цих «відкритих стандартів» здасться дуже підозрілою, і це не дивно – Microsoft вміє маніпулювати стандартами (До речі, зараз дуже цікаво спостерігати «танці з бубнами» навколо комісії із забезпечення взаємодії Web-служб-Web Services Interoperability Organization (WS-I). Microsoft вважає, що комбінація її приватних Windows-служб і стандартів Web-служб стане засобом досягнення сумісності слабо пов’язаних між собою платформ. Це конкурентна позиція корпорації, і вона протиставляється заявами Sun про «мобільності» Java.


Нехай переможе найсильніший


Всі задаються питанням, чи дійсно. NET краще, ніж Java (J2EE). Для багатьох підприємств це питання філософії, ресурсів і вибору оптимального часу використання технологій (якщо ці підприємства не настільки величезні, щоб без проблем використовувати обидві технології). У цих підходів є як фундаментальні відмінності, так і схожість, і я думаю, що багато розробників стануть зважувати, що важливіше в многоплатформная середовищі підприємства – мобільність (Java-код) або сумісність (XML-дані та підтримка багатьох мов). Здавалося б, варто очікувати жорсткої конкуренції, яка на руку розробникам, хоча в аргументах за і проти дуже легко заплутатися. Напевно боротьба розвернеться і на поле вибору стандартів, і якщо одному з наборів стандартів вдасться вижити, це буде перемогою всієї спільноти розробників відповідного ПЗ. А ось на питання, яка з технологій в підсумку переможе, відповідь ми отримаємо нескоро.


Microsoft Visual Studio. NET і. NET Framework добре продумані і ретельно сконструйовані. Розробники ПЗ оцінять доступність класів. NET Framework (хоча доведеться ще дуже багато чому вчитися) і розумність розробки програм в. NET Framework. Однак. NET поки не закінчена, недосконала і не вирішує всіх завдань. Собака заритий в деталях, про які я розповім у другій частині огляду версії Enterprise Architect Edition середовища Visual Studio. NET.

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


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

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

Ваш отзыв

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

*

*